summaryrefslogtreecommitdiff
path: root/python-optimade-client.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-06-20 04:39:49 +0000
committerCoprDistGit <infra@openeuler.org>2023-06-20 04:39:49 +0000
commit598a64a5796f4758ffcb16adac4f2211733ebe92 (patch)
tree8e7fc2813ecd4f70e4f9e329527674f52116c5a9 /python-optimade-client.spec
parent923a34a1416902daa86d13d3fd04ecf98c2e19c1 (diff)
automatic import of python-optimade-clientopeneuler20.03
Diffstat (limited to 'python-optimade-client.spec')
-rw-r--r--python-optimade-client.spec579
1 files changed, 579 insertions, 0 deletions
diff --git a/python-optimade-client.spec b/python-optimade-client.spec
new file mode 100644
index 0000000..0e0029a
--- /dev/null
+++ b/python-optimade-client.spec
@@ -0,0 +1,579 @@
+%global _empty_manifest_terminate_build 0
+Name: python-optimade-client
+Version: 2022.9.19
+Release: 1
+Summary: Voilà/Jupyter client for searching through OPTIMADE databases.
+License: MIT License
+URL: https://github.com/CasperWA/voila-optimade-client
+Source0: https://mirrors.aliyun.com/pypi/web/packages/8d/54/fc74663050b1928e5770d9bfdc0f5b50e0a01de6b028da3a35dcfd470b18/optimade-client-2022.9.19.tar.gz
+BuildArch: noarch
+
+
+%description
+# OPTIMADE client (in Voilà)
+
+[![MaterialsCloud](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/CasperWA/voila-optimade-client/develop/docs/resources/mcloud_badge.json)](https://materialscloud.org/optimadeclient/)
+[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb)
+
+Query for and import structures from [OPTIMADE](https://www.optimade.org) providers (COD, MaterialsCloud, NoMaD, Materials Project, ODBX, OQMD, and more ...).
+
+Current supported OPTIMADE API versions: `1.0.0`, `1.0.0-rc.2`, `1.0.0-rc.1`, `0.10.1`
+
+## Run the client
+
+This Jupyter-based app is intended to run either:
+
+- In [AiiDAlab](https://aiidalab.materialscloud.org) as well as inside a [Quantum Mobile](https://materialscloud.org/work/quantum-mobile) Virtual Machine;
+- As a [MaterialsCloud tool](https://materialscloud.org/optimadeclient/);
+- As a standalone [MyBinder application](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb); or
+- As a standalone local application (see more information about this below).
+
+For AiiDAlab, use the App Store in the [Home App](https://github.com/aiidalab/aiidalab-home) to install it.
+
+## Usage
+
+### AiiDAlab
+
+To use the OPTIMADE structure importer in your own AiiDAlab application write the following:
+
+```python
+from aiidalab_widget_base import OptimadeQueryWidget
+from aiidalab_widgets_base.viewers import StructureDataViewer
+from ipywidgets import dlink
+
+structure_query = OptimadeQueryWidget()
+structure_viewer = StructureDataViewer()
+
+# Save to `_` in order to suppress output
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'structure'))
+
+display(structure_query)
+display(structure_viewer)
+```
+
+This will immediately display a query widget with a dropdown of current structure databases that implements the OPTIMADE API.
+
+Then you can filter to find a family of structures according to elements, number of elements, chemical formula, and more.
+See the [OPTIMADE API specification](https://github.com/Materials-Consortia/OPTiMaDe/blob/master/optimade.rst) for the full list of filter options and their description.
+
+In order to delve deeper into the details of a particular structure, you can also import and display `OptimadeResultsWidget`.
+See the notebook [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) for an example of how to set up a general purpose OPTIMADE importer.
+
+#### Embedded
+
+The query widget may also be embedded into another app.
+For this a more "minimalistic" version of the widget can be used by passing `embedded=True` upon initiating the widget, i.e., `structure_query = OptimadeQueryWidget(embedded=True)`.
+
+Everything else works the same - so you would still have to link up the query widget to the rest of your app.
+
+### General Jupyter notebook
+
+The package's widgets can be used in any general Jupyter notebook as well as AiiDAlab.
+Example:
+
+```python
+from optimade_client import
+ OptimadeQueryProviderWidget,
+ OptimadeQueryFilterWidget,
+ OptimadeSummaryWidget
+from ipywidgets import dlink
+
+database_selector = OptimadeQueryProviderWidget()
+structure_query = OptimadeQueryFilterWidget()
+structure_viewer = OptimadeSummaryWidget()
+
+# Save to `_` in order to suppress output
+_ = dlink((database_selector, 'database'), (structure_query, 'database'))
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'entity'))
+
+display(database_selector, structure_query, structure_viewer)
+```
+
+This will use the package's own structure viewer and summary widget.
+
+Note, the `OptimadeQueryWidget` mentioned above is a special wrapper widget in AiiDAlab for the `OptimadeQueryProviderWidget` and `OptimadeQueryFilterWidget` widgets.
+
+### Running application locally
+
+First, you will need to install the package either from [PyPI](https://pypi.org/project/optimade-client) or by retrieving the git repository hosted on [GitHub](https://github.com/CasperWA/voila-optimade-client).
+
+#### PyPI
+
+```shell
+$ pip install optimade-client[server]
+```
+
+#### GitHub
+
+```shell
+$ git clone https://github.com/CasperWA/voila-optimade-client.git
+$ cd voila-optimade-client
+voila-optimade-client$ pip install .[server]
+```
+
+Note, it is important to install the `server` extra in order to also install the `voila` package (and the `ase` package for a wider variety of download formats).
+
+To now run the application (notebook) [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) you can simply run the command `optimade-client` in a terminal and go to the printed URL (usually <http://localhost:8866>) or pass the `--open-browser` option to let the program try to automatically open your default browser.
+
+The application will be run in Voilà using Voilà's own `tornado`-based server.
+The configuration will automatically be copied to Jupyter's configuration directory before starting the server.
+
+```shell
+$ optimade-client
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+For a list of all options that can be passed to `optimade-client` use the `-h/--help` option.
+
+## Contribute
+
+If you wish to contribute to the application, you can install it in "editable" mode by using the `-e` flag: `pip install -e .[dev]`.
+It is recommended that you use the GitHub-route mentioned above.
+
+You should also install `pre-commit` in the cloned git repository by running:
+
+```shell
+voila-optimade-client$ pre-commit install
+```
+
+To start making contributions, fork the repository and create PRs.
+
+## Configuration (Voilà)
+
+For running the application (in Voilà) on Binder, the configuration file [`jupyter_config.json`](optimade_client/jupyter_config.json) can be used.
+If you wish to start the Voilà server locally with the same configuration, either copy the [`jupyter_config.json`](optimade_client/jupyter_config.json) file to your Jupyter config directory, renaming it to `voila.json` or pass the configurations when you start the server using the CLI.
+
+> **Note**: `jupyter_config.json` is automatically copied over as `voila.json` when running the application using the `optimade-client` command.
+
+Locate your Jupyter config directory:
+
+```shell
+$ jupyter --config-dir
+/path/to/jupyter/config/dir
+```
+
+Example of passing configurations when you start the Voilà server using the CLI:
+
+```shell
+$ voila --enable_nbextensions=True --VoilaExecutePreprocessor.timeout=180 "OPTIMADE-Client.ipynb"
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+To see the full list of configurations you can call `voila` and pass `--help-all`.
+
+### Running with "development" providers (Materials Cloud-specific)
+
+Set the environment variable `OPTIMADE_CLIENT_DEVELOPMENT_MODE` to `1` (the integer version for `True` (`1`) or `False` (`0`)) in order to force the use of development servers for providers (currently only relevant for Materials Cloud).
+
+## License
+
+MIT. The terms of the license can be found in the [LICENSE](LICENSE) file.
+
+## Contact
+
+casper+github@welzel.nu
+aiidalab@materialscloud.org
+
+
+%package -n python3-optimade-client
+Summary: Voilà/Jupyter client for searching through OPTIMADE databases.
+Provides: python-optimade-client
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-optimade-client
+# OPTIMADE client (in Voilà)
+
+[![MaterialsCloud](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/CasperWA/voila-optimade-client/develop/docs/resources/mcloud_badge.json)](https://materialscloud.org/optimadeclient/)
+[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb)
+
+Query for and import structures from [OPTIMADE](https://www.optimade.org) providers (COD, MaterialsCloud, NoMaD, Materials Project, ODBX, OQMD, and more ...).
+
+Current supported OPTIMADE API versions: `1.0.0`, `1.0.0-rc.2`, `1.0.0-rc.1`, `0.10.1`
+
+## Run the client
+
+This Jupyter-based app is intended to run either:
+
+- In [AiiDAlab](https://aiidalab.materialscloud.org) as well as inside a [Quantum Mobile](https://materialscloud.org/work/quantum-mobile) Virtual Machine;
+- As a [MaterialsCloud tool](https://materialscloud.org/optimadeclient/);
+- As a standalone [MyBinder application](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb); or
+- As a standalone local application (see more information about this below).
+
+For AiiDAlab, use the App Store in the [Home App](https://github.com/aiidalab/aiidalab-home) to install it.
+
+## Usage
+
+### AiiDAlab
+
+To use the OPTIMADE structure importer in your own AiiDAlab application write the following:
+
+```python
+from aiidalab_widget_base import OptimadeQueryWidget
+from aiidalab_widgets_base.viewers import StructureDataViewer
+from ipywidgets import dlink
+
+structure_query = OptimadeQueryWidget()
+structure_viewer = StructureDataViewer()
+
+# Save to `_` in order to suppress output
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'structure'))
+
+display(structure_query)
+display(structure_viewer)
+```
+
+This will immediately display a query widget with a dropdown of current structure databases that implements the OPTIMADE API.
+
+Then you can filter to find a family of structures according to elements, number of elements, chemical formula, and more.
+See the [OPTIMADE API specification](https://github.com/Materials-Consortia/OPTiMaDe/blob/master/optimade.rst) for the full list of filter options and their description.
+
+In order to delve deeper into the details of a particular structure, you can also import and display `OptimadeResultsWidget`.
+See the notebook [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) for an example of how to set up a general purpose OPTIMADE importer.
+
+#### Embedded
+
+The query widget may also be embedded into another app.
+For this a more "minimalistic" version of the widget can be used by passing `embedded=True` upon initiating the widget, i.e., `structure_query = OptimadeQueryWidget(embedded=True)`.
+
+Everything else works the same - so you would still have to link up the query widget to the rest of your app.
+
+### General Jupyter notebook
+
+The package's widgets can be used in any general Jupyter notebook as well as AiiDAlab.
+Example:
+
+```python
+from optimade_client import
+ OptimadeQueryProviderWidget,
+ OptimadeQueryFilterWidget,
+ OptimadeSummaryWidget
+from ipywidgets import dlink
+
+database_selector = OptimadeQueryProviderWidget()
+structure_query = OptimadeQueryFilterWidget()
+structure_viewer = OptimadeSummaryWidget()
+
+# Save to `_` in order to suppress output
+_ = dlink((database_selector, 'database'), (structure_query, 'database'))
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'entity'))
+
+display(database_selector, structure_query, structure_viewer)
+```
+
+This will use the package's own structure viewer and summary widget.
+
+Note, the `OptimadeQueryWidget` mentioned above is a special wrapper widget in AiiDAlab for the `OptimadeQueryProviderWidget` and `OptimadeQueryFilterWidget` widgets.
+
+### Running application locally
+
+First, you will need to install the package either from [PyPI](https://pypi.org/project/optimade-client) or by retrieving the git repository hosted on [GitHub](https://github.com/CasperWA/voila-optimade-client).
+
+#### PyPI
+
+```shell
+$ pip install optimade-client[server]
+```
+
+#### GitHub
+
+```shell
+$ git clone https://github.com/CasperWA/voila-optimade-client.git
+$ cd voila-optimade-client
+voila-optimade-client$ pip install .[server]
+```
+
+Note, it is important to install the `server` extra in order to also install the `voila` package (and the `ase` package for a wider variety of download formats).
+
+To now run the application (notebook) [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) you can simply run the command `optimade-client` in a terminal and go to the printed URL (usually <http://localhost:8866>) or pass the `--open-browser` option to let the program try to automatically open your default browser.
+
+The application will be run in Voilà using Voilà's own `tornado`-based server.
+The configuration will automatically be copied to Jupyter's configuration directory before starting the server.
+
+```shell
+$ optimade-client
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+For a list of all options that can be passed to `optimade-client` use the `-h/--help` option.
+
+## Contribute
+
+If you wish to contribute to the application, you can install it in "editable" mode by using the `-e` flag: `pip install -e .[dev]`.
+It is recommended that you use the GitHub-route mentioned above.
+
+You should also install `pre-commit` in the cloned git repository by running:
+
+```shell
+voila-optimade-client$ pre-commit install
+```
+
+To start making contributions, fork the repository and create PRs.
+
+## Configuration (Voilà)
+
+For running the application (in Voilà) on Binder, the configuration file [`jupyter_config.json`](optimade_client/jupyter_config.json) can be used.
+If you wish to start the Voilà server locally with the same configuration, either copy the [`jupyter_config.json`](optimade_client/jupyter_config.json) file to your Jupyter config directory, renaming it to `voila.json` or pass the configurations when you start the server using the CLI.
+
+> **Note**: `jupyter_config.json` is automatically copied over as `voila.json` when running the application using the `optimade-client` command.
+
+Locate your Jupyter config directory:
+
+```shell
+$ jupyter --config-dir
+/path/to/jupyter/config/dir
+```
+
+Example of passing configurations when you start the Voilà server using the CLI:
+
+```shell
+$ voila --enable_nbextensions=True --VoilaExecutePreprocessor.timeout=180 "OPTIMADE-Client.ipynb"
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+To see the full list of configurations you can call `voila` and pass `--help-all`.
+
+### Running with "development" providers (Materials Cloud-specific)
+
+Set the environment variable `OPTIMADE_CLIENT_DEVELOPMENT_MODE` to `1` (the integer version for `True` (`1`) or `False` (`0`)) in order to force the use of development servers for providers (currently only relevant for Materials Cloud).
+
+## License
+
+MIT. The terms of the license can be found in the [LICENSE](LICENSE) file.
+
+## Contact
+
+casper+github@welzel.nu
+aiidalab@materialscloud.org
+
+
+%package help
+Summary: Development documents and examples for optimade-client
+Provides: python3-optimade-client-doc
+%description help
+# OPTIMADE client (in Voilà)
+
+[![MaterialsCloud](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/CasperWA/voila-optimade-client/develop/docs/resources/mcloud_badge.json)](https://materialscloud.org/optimadeclient/)
+[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb)
+
+Query for and import structures from [OPTIMADE](https://www.optimade.org) providers (COD, MaterialsCloud, NoMaD, Materials Project, ODBX, OQMD, and more ...).
+
+Current supported OPTIMADE API versions: `1.0.0`, `1.0.0-rc.2`, `1.0.0-rc.1`, `0.10.1`
+
+## Run the client
+
+This Jupyter-based app is intended to run either:
+
+- In [AiiDAlab](https://aiidalab.materialscloud.org) as well as inside a [Quantum Mobile](https://materialscloud.org/work/quantum-mobile) Virtual Machine;
+- As a [MaterialsCloud tool](https://materialscloud.org/optimadeclient/);
+- As a standalone [MyBinder application](https://mybinder.org/v2/gh/CasperWA/voila-optimade-client/develop?urlpath=%2Fvoila%2Frender%2FOPTIMADE-Client.ipynb); or
+- As a standalone local application (see more information about this below).
+
+For AiiDAlab, use the App Store in the [Home App](https://github.com/aiidalab/aiidalab-home) to install it.
+
+## Usage
+
+### AiiDAlab
+
+To use the OPTIMADE structure importer in your own AiiDAlab application write the following:
+
+```python
+from aiidalab_widget_base import OptimadeQueryWidget
+from aiidalab_widgets_base.viewers import StructureDataViewer
+from ipywidgets import dlink
+
+structure_query = OptimadeQueryWidget()
+structure_viewer = StructureDataViewer()
+
+# Save to `_` in order to suppress output
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'structure'))
+
+display(structure_query)
+display(structure_viewer)
+```
+
+This will immediately display a query widget with a dropdown of current structure databases that implements the OPTIMADE API.
+
+Then you can filter to find a family of structures according to elements, number of elements, chemical formula, and more.
+See the [OPTIMADE API specification](https://github.com/Materials-Consortia/OPTiMaDe/blob/master/optimade.rst) for the full list of filter options and their description.
+
+In order to delve deeper into the details of a particular structure, you can also import and display `OptimadeResultsWidget`.
+See the notebook [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) for an example of how to set up a general purpose OPTIMADE importer.
+
+#### Embedded
+
+The query widget may also be embedded into another app.
+For this a more "minimalistic" version of the widget can be used by passing `embedded=True` upon initiating the widget, i.e., `structure_query = OptimadeQueryWidget(embedded=True)`.
+
+Everything else works the same - so you would still have to link up the query widget to the rest of your app.
+
+### General Jupyter notebook
+
+The package's widgets can be used in any general Jupyter notebook as well as AiiDAlab.
+Example:
+
+```python
+from optimade_client import
+ OptimadeQueryProviderWidget,
+ OptimadeQueryFilterWidget,
+ OptimadeSummaryWidget
+from ipywidgets import dlink
+
+database_selector = OptimadeQueryProviderWidget()
+structure_query = OptimadeQueryFilterWidget()
+structure_viewer = OptimadeSummaryWidget()
+
+# Save to `_` in order to suppress output
+_ = dlink((database_selector, 'database'), (structure_query, 'database'))
+_ = dlink((structure_query, 'structure'), (structure_viewer, 'entity'))
+
+display(database_selector, structure_query, structure_viewer)
+```
+
+This will use the package's own structure viewer and summary widget.
+
+Note, the `OptimadeQueryWidget` mentioned above is a special wrapper widget in AiiDAlab for the `OptimadeQueryProviderWidget` and `OptimadeQueryFilterWidget` widgets.
+
+### Running application locally
+
+First, you will need to install the package either from [PyPI](https://pypi.org/project/optimade-client) or by retrieving the git repository hosted on [GitHub](https://github.com/CasperWA/voila-optimade-client).
+
+#### PyPI
+
+```shell
+$ pip install optimade-client[server]
+```
+
+#### GitHub
+
+```shell
+$ git clone https://github.com/CasperWA/voila-optimade-client.git
+$ cd voila-optimade-client
+voila-optimade-client$ pip install .[server]
+```
+
+Note, it is important to install the `server` extra in order to also install the `voila` package (and the `ase` package for a wider variety of download formats).
+
+To now run the application (notebook) [`OPTIMADE-Client.ipynb`](OPTIMADE-Client.ipynb) you can simply run the command `optimade-client` in a terminal and go to the printed URL (usually <http://localhost:8866>) or pass the `--open-browser` option to let the program try to automatically open your default browser.
+
+The application will be run in Voilà using Voilà's own `tornado`-based server.
+The configuration will automatically be copied to Jupyter's configuration directory before starting the server.
+
+```shell
+$ optimade-client
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+For a list of all options that can be passed to `optimade-client` use the `-h/--help` option.
+
+## Contribute
+
+If you wish to contribute to the application, you can install it in "editable" mode by using the `-e` flag: `pip install -e .[dev]`.
+It is recommended that you use the GitHub-route mentioned above.
+
+You should also install `pre-commit` in the cloned git repository by running:
+
+```shell
+voila-optimade-client$ pre-commit install
+```
+
+To start making contributions, fork the repository and create PRs.
+
+## Configuration (Voilà)
+
+For running the application (in Voilà) on Binder, the configuration file [`jupyter_config.json`](optimade_client/jupyter_config.json) can be used.
+If you wish to start the Voilà server locally with the same configuration, either copy the [`jupyter_config.json`](optimade_client/jupyter_config.json) file to your Jupyter config directory, renaming it to `voila.json` or pass the configurations when you start the server using the CLI.
+
+> **Note**: `jupyter_config.json` is automatically copied over as `voila.json` when running the application using the `optimade-client` command.
+
+Locate your Jupyter config directory:
+
+```shell
+$ jupyter --config-dir
+/path/to/jupyter/config/dir
+```
+
+Example of passing configurations when you start the Voilà server using the CLI:
+
+```shell
+$ voila --enable_nbextensions=True --VoilaExecutePreprocessor.timeout=180 "OPTIMADE-Client.ipynb"
+...
+[Voila] Voilà is running at:
+http://localhost:8866/
+...
+```
+
+To see the full list of configurations you can call `voila` and pass `--help-all`.
+
+### Running with "development" providers (Materials Cloud-specific)
+
+Set the environment variable `OPTIMADE_CLIENT_DEVELOPMENT_MODE` to `1` (the integer version for `True` (`1`) or `False` (`0`)) in order to force the use of development servers for providers (currently only relevant for Materials Cloud).
+
+## License
+
+MIT. The terms of the license can be found in the [LICENSE](LICENSE) file.
+
+## Contact
+
+casper+github@welzel.nu
+aiidalab@materialscloud.org
+
+
+%prep
+%autosetup -n optimade-client-2022.9.19
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-optimade-client -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 2022.9.19-1
+- Package Spec generated