summaryrefslogtreecommitdiff
path: root/python-fastavro.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-fastavro.spec')
-rw-r--r--python-fastavro.spec397
1 files changed, 397 insertions, 0 deletions
diff --git a/python-fastavro.spec b/python-fastavro.spec
new file mode 100644
index 0000000..e6bbeee
--- /dev/null
+++ b/python-fastavro.spec
@@ -0,0 +1,397 @@
+%global _empty_manifest_terminate_build 0
+Name: python-fastavro
+Version: 1.7.2
+Release: 1
+Summary: Fast read/write of AVRO files
+License: MIT
+URL: https://github.com/fastavro/fastavro
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/9c/22/4dbd4e88640a7fd083d97c7d1de2e8d4f3cccc5d52d8f61a930363bcdb41/fastavro-1.7.2.tar.gz
+
+
+%description
+# fastavro
+[![Build Status](https://github.com/fastavro/fastavro/workflows/Build/badge.svg)](https://github.com/fastavro/fastavro/actions)
+[![Documentation Status](https://readthedocs.org/projects/fastavro/badge/?version=latest)](http://fastavro.readthedocs.io/en/latest/?badge=latest)
+[![codecov](https://codecov.io/gh/fastavro/fastavro/branch/master/graph/badge.svg)](https://codecov.io/gh/fastavro/fastavro)
+
+
+Because the Apache Python `avro` package is written in pure Python, it is
+relatively slow. In one test case, it takes about 14 seconds to iterate through
+a file of 10,000 records. By comparison, the JAVA `avro` SDK reads the same file in
+1.9 seconds.
+
+The `fastavro` library was written to offer performance comparable to the Java
+library. With regular CPython, `fastavro` uses C extensions which allow it to
+iterate the same 10,000 record file in 1.7 seconds. With PyPy, this drops to 1.5
+seconds (to be fair, the JAVA benchmark is doing some extra JSON
+encoding/decoding).
+
+`fastavro` supports the following Python versions:
+
+* Python 3.7
+* Python 3.8
+* Python 3.9
+* Python 3.10
+* Python 3.11
+* PyPy3
+
+## Supported Features
+
+* File Writer
+* File Reader (iterating via records or blocks)
+* Schemaless Writer
+* Schemaless Reader
+* JSON Writer
+* JSON Reader
+* Codecs (Snappy, Deflate, Zstandard, Bzip2, LZ4, XZ)
+* Schema resolution
+* Aliases
+* Logical Types
+* Parsing schemas into the canonical form
+* Schema fingerprinting
+
+## Missing Features
+
+* Anything involving Avro's RPC features
+
+[Cython]: http://cython.org/
+
+# Documentation
+
+Documentation is available at http://fastavro.readthedocs.io/en/latest/
+
+# Installing
+`fastavro` is available both on [PyPI](http://pypi.python.org/pypi)
+
+ pip install fastavro
+
+and on [conda-forge](https://conda-forge.github.io) `conda` channel.
+
+ conda install -c conda-forge fastavro
+
+# Contributing
+
+* Bugs and new feature requests typically start as GitHub issues where they can be discussed. I try to resolve these as time affords, but PRs are welcome from all.
+* Get approval from discussing on the GitHub issue before opening the pull request
+* Tests must be passing for pull request to be considered
+
+Developer requirements can be installed with `pip install -r developer_requirements.txt`.
+If those are installed, you can run the tests with `./run-tests.sh`. If you have trouble
+installing those dependencies, you can run `docker build .` to run the tests inside
+a Docker container. This won't test on all versions of Python or on PyPy, so it's possible
+to still get CI failures after making a pull request, but we can work through those errors
+if/when they happen. `.run-tests.sh` only covers the Cython tests. In order to test the
+pure Python implementation, comment out `python setup.py build_ext --inplace`
+and re-run.
+
+NOTE: Some tests might fail when running the tests locally. An example of this
+is this codec tests. If the supporting codec library is not available, the test
+will fail. These failures can be ignored since the tests will on pull requests
+and will be run in the correct environments with the correct dependencies set up.
+
+### Releasing
+
+We release both to [PyPI][pypi] and to [conda-forge][conda-forge].
+
+We assume you have [twine][twine] installed and that you've created your own
+fork of [fastavro-feedstock][feedstock].
+
+* Make sure the tests pass
+* Run `make tag`
+* Wait for all artifacts to be built and published the the Github release
+* Run `make publish`
+* The conda-forge PR should get created and merged automatically
+
+[conda-forge]: https://conda-forge.org/
+[feedstock]: https://github.com/conda-forge/fastavro-feedstock
+[pypi]: https://pypi.python.org/pypi
+[twine]: https://pypi.python.org/pypi/twine
+
+
+# Changes
+
+See the [ChangeLog]
+
+[ChangeLog]: https://github.com/fastavro/fastavro/blob/master/ChangeLog
+
+# Contact
+
+[Project Home](https://github.com/fastavro/fastavro)
+
+
+%package -n python3-fastavro
+Summary: Fast read/write of AVRO files
+Provides: python-fastavro
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-cffi
+BuildRequires: gcc
+BuildRequires: gdb
+%description -n python3-fastavro
+# fastavro
+[![Build Status](https://github.com/fastavro/fastavro/workflows/Build/badge.svg)](https://github.com/fastavro/fastavro/actions)
+[![Documentation Status](https://readthedocs.org/projects/fastavro/badge/?version=latest)](http://fastavro.readthedocs.io/en/latest/?badge=latest)
+[![codecov](https://codecov.io/gh/fastavro/fastavro/branch/master/graph/badge.svg)](https://codecov.io/gh/fastavro/fastavro)
+
+
+Because the Apache Python `avro` package is written in pure Python, it is
+relatively slow. In one test case, it takes about 14 seconds to iterate through
+a file of 10,000 records. By comparison, the JAVA `avro` SDK reads the same file in
+1.9 seconds.
+
+The `fastavro` library was written to offer performance comparable to the Java
+library. With regular CPython, `fastavro` uses C extensions which allow it to
+iterate the same 10,000 record file in 1.7 seconds. With PyPy, this drops to 1.5
+seconds (to be fair, the JAVA benchmark is doing some extra JSON
+encoding/decoding).
+
+`fastavro` supports the following Python versions:
+
+* Python 3.7
+* Python 3.8
+* Python 3.9
+* Python 3.10
+* Python 3.11
+* PyPy3
+
+## Supported Features
+
+* File Writer
+* File Reader (iterating via records or blocks)
+* Schemaless Writer
+* Schemaless Reader
+* JSON Writer
+* JSON Reader
+* Codecs (Snappy, Deflate, Zstandard, Bzip2, LZ4, XZ)
+* Schema resolution
+* Aliases
+* Logical Types
+* Parsing schemas into the canonical form
+* Schema fingerprinting
+
+## Missing Features
+
+* Anything involving Avro's RPC features
+
+[Cython]: http://cython.org/
+
+# Documentation
+
+Documentation is available at http://fastavro.readthedocs.io/en/latest/
+
+# Installing
+`fastavro` is available both on [PyPI](http://pypi.python.org/pypi)
+
+ pip install fastavro
+
+and on [conda-forge](https://conda-forge.github.io) `conda` channel.
+
+ conda install -c conda-forge fastavro
+
+# Contributing
+
+* Bugs and new feature requests typically start as GitHub issues where they can be discussed. I try to resolve these as time affords, but PRs are welcome from all.
+* Get approval from discussing on the GitHub issue before opening the pull request
+* Tests must be passing for pull request to be considered
+
+Developer requirements can be installed with `pip install -r developer_requirements.txt`.
+If those are installed, you can run the tests with `./run-tests.sh`. If you have trouble
+installing those dependencies, you can run `docker build .` to run the tests inside
+a Docker container. This won't test on all versions of Python or on PyPy, so it's possible
+to still get CI failures after making a pull request, but we can work through those errors
+if/when they happen. `.run-tests.sh` only covers the Cython tests. In order to test the
+pure Python implementation, comment out `python setup.py build_ext --inplace`
+and re-run.
+
+NOTE: Some tests might fail when running the tests locally. An example of this
+is this codec tests. If the supporting codec library is not available, the test
+will fail. These failures can be ignored since the tests will on pull requests
+and will be run in the correct environments with the correct dependencies set up.
+
+### Releasing
+
+We release both to [PyPI][pypi] and to [conda-forge][conda-forge].
+
+We assume you have [twine][twine] installed and that you've created your own
+fork of [fastavro-feedstock][feedstock].
+
+* Make sure the tests pass
+* Run `make tag`
+* Wait for all artifacts to be built and published the the Github release
+* Run `make publish`
+* The conda-forge PR should get created and merged automatically
+
+[conda-forge]: https://conda-forge.org/
+[feedstock]: https://github.com/conda-forge/fastavro-feedstock
+[pypi]: https://pypi.python.org/pypi
+[twine]: https://pypi.python.org/pypi/twine
+
+
+# Changes
+
+See the [ChangeLog]
+
+[ChangeLog]: https://github.com/fastavro/fastavro/blob/master/ChangeLog
+
+# Contact
+
+[Project Home](https://github.com/fastavro/fastavro)
+
+
+%package help
+Summary: Development documents and examples for fastavro
+Provides: python3-fastavro-doc
+%description help
+# fastavro
+[![Build Status](https://github.com/fastavro/fastavro/workflows/Build/badge.svg)](https://github.com/fastavro/fastavro/actions)
+[![Documentation Status](https://readthedocs.org/projects/fastavro/badge/?version=latest)](http://fastavro.readthedocs.io/en/latest/?badge=latest)
+[![codecov](https://codecov.io/gh/fastavro/fastavro/branch/master/graph/badge.svg)](https://codecov.io/gh/fastavro/fastavro)
+
+
+Because the Apache Python `avro` package is written in pure Python, it is
+relatively slow. In one test case, it takes about 14 seconds to iterate through
+a file of 10,000 records. By comparison, the JAVA `avro` SDK reads the same file in
+1.9 seconds.
+
+The `fastavro` library was written to offer performance comparable to the Java
+library. With regular CPython, `fastavro` uses C extensions which allow it to
+iterate the same 10,000 record file in 1.7 seconds. With PyPy, this drops to 1.5
+seconds (to be fair, the JAVA benchmark is doing some extra JSON
+encoding/decoding).
+
+`fastavro` supports the following Python versions:
+
+* Python 3.7
+* Python 3.8
+* Python 3.9
+* Python 3.10
+* Python 3.11
+* PyPy3
+
+## Supported Features
+
+* File Writer
+* File Reader (iterating via records or blocks)
+* Schemaless Writer
+* Schemaless Reader
+* JSON Writer
+* JSON Reader
+* Codecs (Snappy, Deflate, Zstandard, Bzip2, LZ4, XZ)
+* Schema resolution
+* Aliases
+* Logical Types
+* Parsing schemas into the canonical form
+* Schema fingerprinting
+
+## Missing Features
+
+* Anything involving Avro's RPC features
+
+[Cython]: http://cython.org/
+
+# Documentation
+
+Documentation is available at http://fastavro.readthedocs.io/en/latest/
+
+# Installing
+`fastavro` is available both on [PyPI](http://pypi.python.org/pypi)
+
+ pip install fastavro
+
+and on [conda-forge](https://conda-forge.github.io) `conda` channel.
+
+ conda install -c conda-forge fastavro
+
+# Contributing
+
+* Bugs and new feature requests typically start as GitHub issues where they can be discussed. I try to resolve these as time affords, but PRs are welcome from all.
+* Get approval from discussing on the GitHub issue before opening the pull request
+* Tests must be passing for pull request to be considered
+
+Developer requirements can be installed with `pip install -r developer_requirements.txt`.
+If those are installed, you can run the tests with `./run-tests.sh`. If you have trouble
+installing those dependencies, you can run `docker build .` to run the tests inside
+a Docker container. This won't test on all versions of Python or on PyPy, so it's possible
+to still get CI failures after making a pull request, but we can work through those errors
+if/when they happen. `.run-tests.sh` only covers the Cython tests. In order to test the
+pure Python implementation, comment out `python setup.py build_ext --inplace`
+and re-run.
+
+NOTE: Some tests might fail when running the tests locally. An example of this
+is this codec tests. If the supporting codec library is not available, the test
+will fail. These failures can be ignored since the tests will on pull requests
+and will be run in the correct environments with the correct dependencies set up.
+
+### Releasing
+
+We release both to [PyPI][pypi] and to [conda-forge][conda-forge].
+
+We assume you have [twine][twine] installed and that you've created your own
+fork of [fastavro-feedstock][feedstock].
+
+* Make sure the tests pass
+* Run `make tag`
+* Wait for all artifacts to be built and published the the Github release
+* Run `make publish`
+* The conda-forge PR should get created and merged automatically
+
+[conda-forge]: https://conda-forge.org/
+[feedstock]: https://github.com/conda-forge/fastavro-feedstock
+[pypi]: https://pypi.python.org/pypi
+[twine]: https://pypi.python.org/pypi/twine
+
+
+# Changes
+
+See the [ChangeLog]
+
+[ChangeLog]: https://github.com/fastavro/fastavro/blob/master/ChangeLog
+
+# Contact
+
+[Project Home](https://github.com/fastavro/fastavro)
+
+
+%prep
+%autosetup -n fastavro-1.7.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-fastavro -f filelist.lst
+%dir %{python3_sitearch}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri Feb 24 2023 Python_Bot <Python_Bot@openeuler.org> - 1.7.2-1
+- Package Spec generated