%global _empty_manifest_terminate_build 0 Name: python-pyodc Version: 1.1.4 Release: 1 Summary: A Python interface to odc for encoding/decoding ODB-2 files. License: Apache License Version 2.0 URL: https://github.com/ecmwf/pyodc Source0: https://mirrors.nju.edu.cn/pypi/web/packages/29/65/8e3f6f80f4fa3094cbf52d63108e6c99b3a1ac8d6713866530386ad331e7/pyodc-1.1.4.tar.gz BuildArch: noarch %description # pyodc [![PyPI](https://img.shields.io/pypi/v/pyodc)](https://pypi.org/project/pyodc/) [![Build Status](https://img.shields.io/github/workflow/status/ecmwf/pyodc/Continuous%20Integration/develop)](https://github.com/ecmwf/pyodc/actions/workflows/ci.yml) [![Documentation Status](https://readthedocs.org/projects/pyodc/badge/?version=latest)](https://pyodc.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Licence](https://img.shields.io/github/license/ecmwf/pyodc)](https://github.com/ecmwf/pyodc/blob/develop/LICENSE) A Python interface to `odc` for encoding/decoding ODB\-2 files. The package contains two different implementations of the same library: * `pyodc` is a pure-python encoder and decoder for ODB\-2 data, which encodes data from, and decodes it into pandas data frames * `codc` is an implementation of the same API as `pyodc` that depends on the ECMWF `odc` library, and comes with _much_ better performance [Documentation] [Changelog] ## Dependencies ### Required * Python 3.x ### Optional * [odc] * [pytest] * [pandoc] * [Jupyter Notebook] For `codc` to work, `odc` library must be compiled and installed on the system and made available to Python (through the CFFI mechanism) as a shared library. There are multiple ways to make the library visible to CFFI: it can be installed as a system library, the installation prefix can be passed in `odc_DIR` environment variable, or the library directory can be included in `LD_LIBRARY_PATH`. ## Installation ```sh pip install --user pyodc ``` Check if the module was installed correctly: ```sh python >>> import pyodc >>> import codc # optional ``` ## Usage An introductory Jupyter Notebook with helpful usage examples is provided in the root of this repository: ```sh git clone git@github.com:ecmwf/pyodc.git cd pyodc jupyter notebook Introduction.ipynb ``` ## Development ### Run Unit Tests To run the unit tests, make sure that the `pytest` module is installed first: ```sh python -m pytest ``` ### Build Documentation To build the documentation locally, please install the Python dependencies first: ```sh cd docs pip install -r requirements.txt make html ``` The built HTML documentation will be available under the `docs/_build/html/index.html` path. ## License This software is licensed under the terms of the Apache Licence Version 2.0 which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. In applying this licence, ECMWF does not waive the privileges and immunities granted to it by virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. [Documentation]: https://pyodc.readthedocs.io/en/latest/ [Changelog]: ./CHANGELOG.md [odc]: https://github.com/ecmwf/odc [pytest]: https://pytest.org [pandoc]: https://pandoc.org/ [Jupyter Notebook]: https://jupyter.org # Changelog for pyodc ## 1.1.3 * Improved github/ci integration ## 1.1.2 * Fixed [#6]: pip install breaks codc ## 1.1.1 * Fixed [ODB-534]: PyPI package is missing CHANGELOG ## 1.1.0 * Fixed [ODB-533]: Decode data starting with missing values correctly * Fixed [ODB-530]: Bitfield column inspection returns incomplete data in pure-Python implementation * Bumped up required `odc` version number to 1.4.0 * Added missing frame properties accessor to `codc` interface * Fixed [ODB-525]: Setting odc prefix variable (`odc_DIR`) does not work as expected on macOS * Fixed [ODB-524]: Keys and values in decoded frame properties are switched on older Python version * Added test flag to skip `codc` tests on demand (`PYODC_SKIP_CODC`) * Fixed [ODB-523]: Additional properties parameter is omitted in encode_odb() when string is passed as file * Fixed package setup metadata * Added documentation ## 1.0.4 * Correct support for constant codecs * Decoding by column short name ## 1.0.3 * Specify `odc` library location with `odc/ODC_DIR` * Correct `setup.py` dependencies to include pandas * Support missing ConstantString values encoded from ODB1 using the `odb_migrator` ## 1.0.2 * String missing values should be `None` not `NaN` * Refactor oneshot behaviour (`read_odb_oneshot` --> `read_odb(..., single=True)`) * Raise correct error on `odc` not found * Split `codb.py` into a full `codc` module * Fix miscellaneous bugs ## 1.0.1 * Fixed automatic selection of integral codecs ## 1.0.0 * Initial version [#6]: https://github.com/ecmwf/pyodc/issues/6 [ODB-534]: https://jira.ecmwf.int/browse/ODB-534 [ODB-533]: https://jira.ecmwf.int/browse/ODB-533 [ODB-530]: https://jira.ecmwf.int/browse/ODB-530 [ODB-525]: https://jira.ecmwf.int/browse/ODB-525 [ODB-524]: https://jira.ecmwf.int/browse/ODB-524 [ODB-523]: https://jira.ecmwf.int/browse/ODB-523 %package -n python3-pyodc Summary: A Python interface to odc for encoding/decoding ODB-2 files. Provides: python-pyodc BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-pyodc # pyodc [![PyPI](https://img.shields.io/pypi/v/pyodc)](https://pypi.org/project/pyodc/) [![Build Status](https://img.shields.io/github/workflow/status/ecmwf/pyodc/Continuous%20Integration/develop)](https://github.com/ecmwf/pyodc/actions/workflows/ci.yml) [![Documentation Status](https://readthedocs.org/projects/pyodc/badge/?version=latest)](https://pyodc.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Licence](https://img.shields.io/github/license/ecmwf/pyodc)](https://github.com/ecmwf/pyodc/blob/develop/LICENSE) A Python interface to `odc` for encoding/decoding ODB\-2 files. The package contains two different implementations of the same library: * `pyodc` is a pure-python encoder and decoder for ODB\-2 data, which encodes data from, and decodes it into pandas data frames * `codc` is an implementation of the same API as `pyodc` that depends on the ECMWF `odc` library, and comes with _much_ better performance [Documentation] [Changelog] ## Dependencies ### Required * Python 3.x ### Optional * [odc] * [pytest] * [pandoc] * [Jupyter Notebook] For `codc` to work, `odc` library must be compiled and installed on the system and made available to Python (through the CFFI mechanism) as a shared library. There are multiple ways to make the library visible to CFFI: it can be installed as a system library, the installation prefix can be passed in `odc_DIR` environment variable, or the library directory can be included in `LD_LIBRARY_PATH`. ## Installation ```sh pip install --user pyodc ``` Check if the module was installed correctly: ```sh python >>> import pyodc >>> import codc # optional ``` ## Usage An introductory Jupyter Notebook with helpful usage examples is provided in the root of this repository: ```sh git clone git@github.com:ecmwf/pyodc.git cd pyodc jupyter notebook Introduction.ipynb ``` ## Development ### Run Unit Tests To run the unit tests, make sure that the `pytest` module is installed first: ```sh python -m pytest ``` ### Build Documentation To build the documentation locally, please install the Python dependencies first: ```sh cd docs pip install -r requirements.txt make html ``` The built HTML documentation will be available under the `docs/_build/html/index.html` path. ## License This software is licensed under the terms of the Apache Licence Version 2.0 which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. In applying this licence, ECMWF does not waive the privileges and immunities granted to it by virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. [Documentation]: https://pyodc.readthedocs.io/en/latest/ [Changelog]: ./CHANGELOG.md [odc]: https://github.com/ecmwf/odc [pytest]: https://pytest.org [pandoc]: https://pandoc.org/ [Jupyter Notebook]: https://jupyter.org # Changelog for pyodc ## 1.1.3 * Improved github/ci integration ## 1.1.2 * Fixed [#6]: pip install breaks codc ## 1.1.1 * Fixed [ODB-534]: PyPI package is missing CHANGELOG ## 1.1.0 * Fixed [ODB-533]: Decode data starting with missing values correctly * Fixed [ODB-530]: Bitfield column inspection returns incomplete data in pure-Python implementation * Bumped up required `odc` version number to 1.4.0 * Added missing frame properties accessor to `codc` interface * Fixed [ODB-525]: Setting odc prefix variable (`odc_DIR`) does not work as expected on macOS * Fixed [ODB-524]: Keys and values in decoded frame properties are switched on older Python version * Added test flag to skip `codc` tests on demand (`PYODC_SKIP_CODC`) * Fixed [ODB-523]: Additional properties parameter is omitted in encode_odb() when string is passed as file * Fixed package setup metadata * Added documentation ## 1.0.4 * Correct support for constant codecs * Decoding by column short name ## 1.0.3 * Specify `odc` library location with `odc/ODC_DIR` * Correct `setup.py` dependencies to include pandas * Support missing ConstantString values encoded from ODB1 using the `odb_migrator` ## 1.0.2 * String missing values should be `None` not `NaN` * Refactor oneshot behaviour (`read_odb_oneshot` --> `read_odb(..., single=True)`) * Raise correct error on `odc` not found * Split `codb.py` into a full `codc` module * Fix miscellaneous bugs ## 1.0.1 * Fixed automatic selection of integral codecs ## 1.0.0 * Initial version [#6]: https://github.com/ecmwf/pyodc/issues/6 [ODB-534]: https://jira.ecmwf.int/browse/ODB-534 [ODB-533]: https://jira.ecmwf.int/browse/ODB-533 [ODB-530]: https://jira.ecmwf.int/browse/ODB-530 [ODB-525]: https://jira.ecmwf.int/browse/ODB-525 [ODB-524]: https://jira.ecmwf.int/browse/ODB-524 [ODB-523]: https://jira.ecmwf.int/browse/ODB-523 %package help Summary: Development documents and examples for pyodc Provides: python3-pyodc-doc %description help # pyodc [![PyPI](https://img.shields.io/pypi/v/pyodc)](https://pypi.org/project/pyodc/) [![Build Status](https://img.shields.io/github/workflow/status/ecmwf/pyodc/Continuous%20Integration/develop)](https://github.com/ecmwf/pyodc/actions/workflows/ci.yml) [![Documentation Status](https://readthedocs.org/projects/pyodc/badge/?version=latest)](https://pyodc.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Licence](https://img.shields.io/github/license/ecmwf/pyodc)](https://github.com/ecmwf/pyodc/blob/develop/LICENSE) A Python interface to `odc` for encoding/decoding ODB\-2 files. The package contains two different implementations of the same library: * `pyodc` is a pure-python encoder and decoder for ODB\-2 data, which encodes data from, and decodes it into pandas data frames * `codc` is an implementation of the same API as `pyodc` that depends on the ECMWF `odc` library, and comes with _much_ better performance [Documentation] [Changelog] ## Dependencies ### Required * Python 3.x ### Optional * [odc] * [pytest] * [pandoc] * [Jupyter Notebook] For `codc` to work, `odc` library must be compiled and installed on the system and made available to Python (through the CFFI mechanism) as a shared library. There are multiple ways to make the library visible to CFFI: it can be installed as a system library, the installation prefix can be passed in `odc_DIR` environment variable, or the library directory can be included in `LD_LIBRARY_PATH`. ## Installation ```sh pip install --user pyodc ``` Check if the module was installed correctly: ```sh python >>> import pyodc >>> import codc # optional ``` ## Usage An introductory Jupyter Notebook with helpful usage examples is provided in the root of this repository: ```sh git clone git@github.com:ecmwf/pyodc.git cd pyodc jupyter notebook Introduction.ipynb ``` ## Development ### Run Unit Tests To run the unit tests, make sure that the `pytest` module is installed first: ```sh python -m pytest ``` ### Build Documentation To build the documentation locally, please install the Python dependencies first: ```sh cd docs pip install -r requirements.txt make html ``` The built HTML documentation will be available under the `docs/_build/html/index.html` path. ## License This software is licensed under the terms of the Apache Licence Version 2.0 which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. In applying this licence, ECMWF does not waive the privileges and immunities granted to it by virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. [Documentation]: https://pyodc.readthedocs.io/en/latest/ [Changelog]: ./CHANGELOG.md [odc]: https://github.com/ecmwf/odc [pytest]: https://pytest.org [pandoc]: https://pandoc.org/ [Jupyter Notebook]: https://jupyter.org # Changelog for pyodc ## 1.1.3 * Improved github/ci integration ## 1.1.2 * Fixed [#6]: pip install breaks codc ## 1.1.1 * Fixed [ODB-534]: PyPI package is missing CHANGELOG ## 1.1.0 * Fixed [ODB-533]: Decode data starting with missing values correctly * Fixed [ODB-530]: Bitfield column inspection returns incomplete data in pure-Python implementation * Bumped up required `odc` version number to 1.4.0 * Added missing frame properties accessor to `codc` interface * Fixed [ODB-525]: Setting odc prefix variable (`odc_DIR`) does not work as expected on macOS * Fixed [ODB-524]: Keys and values in decoded frame properties are switched on older Python version * Added test flag to skip `codc` tests on demand (`PYODC_SKIP_CODC`) * Fixed [ODB-523]: Additional properties parameter is omitted in encode_odb() when string is passed as file * Fixed package setup metadata * Added documentation ## 1.0.4 * Correct support for constant codecs * Decoding by column short name ## 1.0.3 * Specify `odc` library location with `odc/ODC_DIR` * Correct `setup.py` dependencies to include pandas * Support missing ConstantString values encoded from ODB1 using the `odb_migrator` ## 1.0.2 * String missing values should be `None` not `NaN` * Refactor oneshot behaviour (`read_odb_oneshot` --> `read_odb(..., single=True)`) * Raise correct error on `odc` not found * Split `codb.py` into a full `codc` module * Fix miscellaneous bugs ## 1.0.1 * Fixed automatic selection of integral codecs ## 1.0.0 * Initial version [#6]: https://github.com/ecmwf/pyodc/issues/6 [ODB-534]: https://jira.ecmwf.int/browse/ODB-534 [ODB-533]: https://jira.ecmwf.int/browse/ODB-533 [ODB-530]: https://jira.ecmwf.int/browse/ODB-530 [ODB-525]: https://jira.ecmwf.int/browse/ODB-525 [ODB-524]: https://jira.ecmwf.int/browse/ODB-524 [ODB-523]: https://jira.ecmwf.int/browse/ODB-523 %prep %autosetup -n pyodc-1.1.4 %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-pyodc -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri May 05 2023 Python_Bot - 1.1.4-1 - Package Spec generated