diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-18 05:15:28 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-18 05:15:28 +0000 |
commit | 3352e0b1aaad3956bfe8d7f684a16ed980dd60a3 (patch) | |
tree | f62f4bfbaca48a423e7440a86f7f68ceff891846 | |
parent | bb6e6e0c507431230f06dfeb287f8b15df6b212d (diff) |
automatic import of python-trexio
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-trexio.spec | 361 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 363 insertions, 0 deletions
@@ -0,0 +1 @@ +/trexio-1.3.2.tar.gz diff --git a/python-trexio.spec b/python-trexio.spec new file mode 100644 index 0000000..2f57171 --- /dev/null +++ b/python-trexio.spec @@ -0,0 +1,361 @@ +%global _empty_manifest_terminate_build 0 +Name: python-trexio +Version: 1.3.2 +Release: 1 +Summary: Python API of the TREXIO library +License: BSD +URL: https://github.com/TREX-CoE/trexio +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/a4/14/0170089577ec974a808106a0589e7bc641ff39bc00e9a34463a9bd2b5d9b/trexio-1.3.2.tar.gz +BuildArch: noarch + +Requires: python3-numpy + +%description + +# TREXIO Python API + +[](https://badge.fury.io/py/trexio) +[](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD) + +TREXIO provides a Python API, which enables interactive calls to the library. +It facilitates the development of interfaces between different codes and +can be used to convert data from one input/output file format into another. + + +## Requirements + +- python3 (>= 3.6) +- numpy (>= 1.17.3) + +## Installation from PyPI + +In short, you can run the following command: + +`pip install trexio` + +However, it is good practice to first check for updates of the build-system packages. This can be achieved by running + +`python -m pip install --upgrade pip setuptools build wheel` + +**Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.** +For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments). + + +## Additional requirements (for installation from source) + +- C compiler (gcc/icc/clang) +- HDF5 library (>= 1.8) +- pkgconfig (Python package) +- build (Python package) +- pytest (Python package) + +## Installation from source + +1. Download the `trexio-<version>.tar.gz` file with the latest Python API +2. `gzip -cd trexio-<version>.tar.gz | tar xvf -` +3. `cd trexio-<version>` +4. `pip install -r requirements.txt` (this installs all required python dependencies) +5. Export custom environment variables needed for the installation following the procedure below and replacing `/path/to/hdf5/` with your paths. +The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options). + - `export H5_CFLAGS=-I/path/to/hdf5/include` + - `export H5_LDFLAGS=-L/path/to/hdf5/lib` +6. `pip install .` (this installs `trexio` in your environment) +7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation) + +You are ready to go! + +**Note:** +installation based on `pip` compiles its own C extension (shared library) called `pytrexio`. +This extension is built from the TREXIO source files coupled to the wrapper code generated by [SWIG](http://www.swig.org/). +The compiler options during this installation may differ from the ones used to compile the primary TREXIO API in C. +Furthermore, custom compiler flags provided to `./configure` or `make` are not applied to the Python API. + + +## Examples + +An interactive Jupyter notebook called `tutorial_benzene.ipynb` is provided in the `examples` directory. +The notebook can be lauched either locally (see [next section](#Running-the-notebook) for details) or using [pre-built environment on Binder](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD?filepath=notebooks%2Ftutorial_benzene.ipynb). + +Jupyter can be installed using `pip install jupyter`. If you are not familiar with it, feel free to consult the [Jupyter documentation](https://jupyter-notebook.readthedocs.io/en/stable/notebook.html). + + +### Running the notebook + +The example notebook can be launched using the following command: + +`jupyter notebook tutorial_benzene.ipynb` + + +### Additional steps needed to run a custom virtual environment in Jupyter notebooks + +In some cases, it may happen that the Jupyter kernels in the activated virtual environment (e.g. `myvenv`) still point to the system-wide python binaries and not to the environment ones. +This will result in `ImportError` when importing `trexio` in the notebook cell. In order to avoid this, the `myvenv` has to be installed as an additional kernel. +This requires `ipykernel` python package, which usually comes together with the Jupyter installation. If this is not the case, run `pip install ipykernel`. +You can install `myvenv` as a kernel by executing the following command: + +`python3 -m ipykernel install --user --name=myvenv` + +Now you can launch a Jupyter notebook. Once it is open, make sure that your virtual environment is selected as the current kernel. +If this is not the case, try this: + +1. Press the `Kernel` button in the navigation panel +2. In the output list of options select `Change kernel` +3. Find the name of your virtual environment (e.g. `myvenv`) in the list and select it + +That's it, you have activated the custom virtual environment called `myvenv` in your notebook. + +To uninstall the kernel named `myvenv`, execute the following command: + +`jupyter kernelspec uninstall myvenv` + + +%package -n python3-trexio +Summary: Python API of the TREXIO library +Provides: python-trexio +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-trexio + +# TREXIO Python API + +[](https://badge.fury.io/py/trexio) +[](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD) + +TREXIO provides a Python API, which enables interactive calls to the library. +It facilitates the development of interfaces between different codes and +can be used to convert data from one input/output file format into another. + + +## Requirements + +- python3 (>= 3.6) +- numpy (>= 1.17.3) + +## Installation from PyPI + +In short, you can run the following command: + +`pip install trexio` + +However, it is good practice to first check for updates of the build-system packages. This can be achieved by running + +`python -m pip install --upgrade pip setuptools build wheel` + +**Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.** +For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments). + + +## Additional requirements (for installation from source) + +- C compiler (gcc/icc/clang) +- HDF5 library (>= 1.8) +- pkgconfig (Python package) +- build (Python package) +- pytest (Python package) + +## Installation from source + +1. Download the `trexio-<version>.tar.gz` file with the latest Python API +2. `gzip -cd trexio-<version>.tar.gz | tar xvf -` +3. `cd trexio-<version>` +4. `pip install -r requirements.txt` (this installs all required python dependencies) +5. Export custom environment variables needed for the installation following the procedure below and replacing `/path/to/hdf5/` with your paths. +The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options). + - `export H5_CFLAGS=-I/path/to/hdf5/include` + - `export H5_LDFLAGS=-L/path/to/hdf5/lib` +6. `pip install .` (this installs `trexio` in your environment) +7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation) + +You are ready to go! + +**Note:** +installation based on `pip` compiles its own C extension (shared library) called `pytrexio`. +This extension is built from the TREXIO source files coupled to the wrapper code generated by [SWIG](http://www.swig.org/). +The compiler options during this installation may differ from the ones used to compile the primary TREXIO API in C. +Furthermore, custom compiler flags provided to `./configure` or `make` are not applied to the Python API. + + +## Examples + +An interactive Jupyter notebook called `tutorial_benzene.ipynb` is provided in the `examples` directory. +The notebook can be lauched either locally (see [next section](#Running-the-notebook) for details) or using [pre-built environment on Binder](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD?filepath=notebooks%2Ftutorial_benzene.ipynb). + +Jupyter can be installed using `pip install jupyter`. If you are not familiar with it, feel free to consult the [Jupyter documentation](https://jupyter-notebook.readthedocs.io/en/stable/notebook.html). + + +### Running the notebook + +The example notebook can be launched using the following command: + +`jupyter notebook tutorial_benzene.ipynb` + + +### Additional steps needed to run a custom virtual environment in Jupyter notebooks + +In some cases, it may happen that the Jupyter kernels in the activated virtual environment (e.g. `myvenv`) still point to the system-wide python binaries and not to the environment ones. +This will result in `ImportError` when importing `trexio` in the notebook cell. In order to avoid this, the `myvenv` has to be installed as an additional kernel. +This requires `ipykernel` python package, which usually comes together with the Jupyter installation. If this is not the case, run `pip install ipykernel`. +You can install `myvenv` as a kernel by executing the following command: + +`python3 -m ipykernel install --user --name=myvenv` + +Now you can launch a Jupyter notebook. Once it is open, make sure that your virtual environment is selected as the current kernel. +If this is not the case, try this: + +1. Press the `Kernel` button in the navigation panel +2. In the output list of options select `Change kernel` +3. Find the name of your virtual environment (e.g. `myvenv`) in the list and select it + +That's it, you have activated the custom virtual environment called `myvenv` in your notebook. + +To uninstall the kernel named `myvenv`, execute the following command: + +`jupyter kernelspec uninstall myvenv` + + +%package help +Summary: Development documents and examples for trexio +Provides: python3-trexio-doc +%description help + +# TREXIO Python API + +[](https://badge.fury.io/py/trexio) +[](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD) + +TREXIO provides a Python API, which enables interactive calls to the library. +It facilitates the development of interfaces between different codes and +can be used to convert data from one input/output file format into another. + + +## Requirements + +- python3 (>= 3.6) +- numpy (>= 1.17.3) + +## Installation from PyPI + +In short, you can run the following command: + +`pip install trexio` + +However, it is good practice to first check for updates of the build-system packages. This can be achieved by running + +`python -m pip install --upgrade pip setuptools build wheel` + +**Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.** +For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments). + + +## Additional requirements (for installation from source) + +- C compiler (gcc/icc/clang) +- HDF5 library (>= 1.8) +- pkgconfig (Python package) +- build (Python package) +- pytest (Python package) + +## Installation from source + +1. Download the `trexio-<version>.tar.gz` file with the latest Python API +2. `gzip -cd trexio-<version>.tar.gz | tar xvf -` +3. `cd trexio-<version>` +4. `pip install -r requirements.txt` (this installs all required python dependencies) +5. Export custom environment variables needed for the installation following the procedure below and replacing `/path/to/hdf5/` with your paths. +The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options). + - `export H5_CFLAGS=-I/path/to/hdf5/include` + - `export H5_LDFLAGS=-L/path/to/hdf5/lib` +6. `pip install .` (this installs `trexio` in your environment) +7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation) + +You are ready to go! + +**Note:** +installation based on `pip` compiles its own C extension (shared library) called `pytrexio`. +This extension is built from the TREXIO source files coupled to the wrapper code generated by [SWIG](http://www.swig.org/). +The compiler options during this installation may differ from the ones used to compile the primary TREXIO API in C. +Furthermore, custom compiler flags provided to `./configure` or `make` are not applied to the Python API. + + +## Examples + +An interactive Jupyter notebook called `tutorial_benzene.ipynb` is provided in the `examples` directory. +The notebook can be lauched either locally (see [next section](#Running-the-notebook) for details) or using [pre-built environment on Binder](https://mybinder.org/v2/gh/TREX-CoE/trexio-tutorials/HEAD?filepath=notebooks%2Ftutorial_benzene.ipynb). + +Jupyter can be installed using `pip install jupyter`. If you are not familiar with it, feel free to consult the [Jupyter documentation](https://jupyter-notebook.readthedocs.io/en/stable/notebook.html). + + +### Running the notebook + +The example notebook can be launched using the following command: + +`jupyter notebook tutorial_benzene.ipynb` + + +### Additional steps needed to run a custom virtual environment in Jupyter notebooks + +In some cases, it may happen that the Jupyter kernels in the activated virtual environment (e.g. `myvenv`) still point to the system-wide python binaries and not to the environment ones. +This will result in `ImportError` when importing `trexio` in the notebook cell. In order to avoid this, the `myvenv` has to be installed as an additional kernel. +This requires `ipykernel` python package, which usually comes together with the Jupyter installation. If this is not the case, run `pip install ipykernel`. +You can install `myvenv` as a kernel by executing the following command: + +`python3 -m ipykernel install --user --name=myvenv` + +Now you can launch a Jupyter notebook. Once it is open, make sure that your virtual environment is selected as the current kernel. +If this is not the case, try this: + +1. Press the `Kernel` button in the navigation panel +2. In the output list of options select `Change kernel` +3. Find the name of your virtual environment (e.g. `myvenv`) in the list and select it + +That's it, you have activated the custom virtual environment called `myvenv` in your notebook. + +To uninstall the kernel named `myvenv`, execute the following command: + +`jupyter kernelspec uninstall myvenv` + + +%prep +%autosetup -n trexio-1.3.2 + +%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-trexio -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu May 18 2023 Python_Bot <Python_Bot@openeuler.org> - 1.3.2-1 +- Package Spec generated @@ -0,0 +1 @@ +4f7ff6369daae56b153c72a5c18f4438 trexio-1.3.2.tar.gz |