diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-10 12:04:33 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 12:04:33 +0000 |
commit | 4449850429e1dee583af34ec54380c2e64431631 (patch) | |
tree | 14d2c7543b91cd07ff36563ddc1e40b3ef5ff939 | |
parent | 3d0f95b56080d7cdc8cd18d619aff018b6159a7f (diff) |
automatic import of python-glom
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-glom.spec | 394 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 396 insertions, 0 deletions
@@ -0,0 +1 @@ +/glom-23.3.0.tar.gz diff --git a/python-glom.spec b/python-glom.spec new file mode 100644 index 0000000..dd05dca --- /dev/null +++ b/python-glom.spec @@ -0,0 +1,394 @@ +%global _empty_manifest_terminate_build 0 +Name: python-glom +Version: 23.3.0 +Release: 1 +Summary: A declarative object transformer and formatter, for conglomerating nested data. +License: BSD License +URL: https://github.com/mahmoud/glom +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b7/96/93dcb00519fffca57026b0c84a4e15b719587b125b78fda39c6b2f690d44/glom-23.3.0.tar.gz +BuildArch: noarch + +Requires: python3-boltons +Requires: python3-attrs +Requires: python3-face +Requires: python3-PyYAML + +%description +# glom + +*Restructuring data, the Python way* + +<a href="https://pypi.org/project/glom/"><img src="https://img.shields.io/pypi/v/glom.svg"></a> +<a href="https://calver.org/"><img src="https://img.shields.io/badge/calver-YY.MM.MICRO-22bfda.svg"></a> + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet.png"> + +Real applications have real data, and real data nests. Objects inside +of objects inside of lists of objects. + +glom is a new and powerful way to handle real-world data, featuring: + +* Path-based access for nested data structures +* Readable, meaningful error messages +* Declarative data transformation, using lightweight, Pythonic specifications +* Built-in data exploration and debugging features + +All of that and more, available as a [fully-documented][rtd], +pure-Python package, tested on Python 3.7+, as well as +PyPy3. Installation is as easy as: + +``` + pip install glom +``` + +And when you install glom, you also get [the `glom` command-line +interface][cli_rtd], letting you experiment at the console, but never limiting +you to shell scripts: + +``` +Usage: glom [FLAGS] [spec [target]] + +Command-line interface to the glom library, providing nested data access and data +restructuring with the power of Python. + +Flags: + + --help / -h show this help message and exit + --target-file TARGET_FILE path to target data source (optional) + --target-format TARGET_FORMAT format of the source data (json or python) (defaults + to 'json') + --spec-file SPEC_FILE path to glom spec definition (optional) + --spec-format SPEC_FORMAT format of the glom spec definition (json, python, + python-full) (defaults to 'python') + --indent INDENT number of spaces to indent the result, 0 to disable + pretty-printing (defaults to 2) + --debug interactively debug any errors that come up + --inspect interactively explore the data + +``` + +Anything you can do at the command line readily translates to Python +code, so you've always got a path forward when complexity starts to +ramp up. + + +## Examples +#### Without glom +```python +>>> data = {'a': {'b': {'c': 'd'}}} +>>> data['a']['b']['c'] +'d' +>>> data2 = {'a': {'b': None}} +>>> data2['a']['b']['c'] +Traceback (most recent call last): +... +TypeError: 'NoneType' object is not subscriptable +``` + +#### With glom +```python +>>> glom(data, 'a.b.c') +'d' +>>> glom(data2, 'a.b.c') +Traceback (most recent call last): +... +PathAccessError: could not access 'c', index 2 in path Path('a', 'b', 'c'), got error: ... +``` + +## Learn more + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet_multi.png"> + +If all this seems interesting, continue exploring glom below: + +* [glom Tutorial][tutorial] +* [Full API documentation at Read the Docs][rtd] +* [Original announcement blog post (2018-05-09)][glom_announce] +* [Frequently Asked Questions][faq] +* [PyCon 2018 Lightning Talk (2018-05-11)][pycon_talk] + +All of the links above are overflowing with examples, but should you +find anything about the docs, or glom itself, lacking, [please submit +an issue][gh_issues]! + +[rtd]: https://glom.readthedocs.io +[cli_rtd]: http://glom.readthedocs.io/en/latest/cli.html +[tutorial]: https://glom.readthedocs.io/en/latest/tutorial.html +[faq]: https://glom.readthedocs.io/en/latest/faq.html +[glom_announce]: https://sedimental.org/glom_restructured_data.html +[gh_issues]: https://github.com/mahmoud/glom/issues/ +[pycon_talk]: https://www.youtube.com/watch?v=bTAFl8P2DkE&t=18m07s + +In the meantime, just remember: When you've got nested data, glom it! ☄️ + + +%package -n python3-glom +Summary: A declarative object transformer and formatter, for conglomerating nested data. +Provides: python-glom +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-glom +# glom + +*Restructuring data, the Python way* + +<a href="https://pypi.org/project/glom/"><img src="https://img.shields.io/pypi/v/glom.svg"></a> +<a href="https://calver.org/"><img src="https://img.shields.io/badge/calver-YY.MM.MICRO-22bfda.svg"></a> + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet.png"> + +Real applications have real data, and real data nests. Objects inside +of objects inside of lists of objects. + +glom is a new and powerful way to handle real-world data, featuring: + +* Path-based access for nested data structures +* Readable, meaningful error messages +* Declarative data transformation, using lightweight, Pythonic specifications +* Built-in data exploration and debugging features + +All of that and more, available as a [fully-documented][rtd], +pure-Python package, tested on Python 3.7+, as well as +PyPy3. Installation is as easy as: + +``` + pip install glom +``` + +And when you install glom, you also get [the `glom` command-line +interface][cli_rtd], letting you experiment at the console, but never limiting +you to shell scripts: + +``` +Usage: glom [FLAGS] [spec [target]] + +Command-line interface to the glom library, providing nested data access and data +restructuring with the power of Python. + +Flags: + + --help / -h show this help message and exit + --target-file TARGET_FILE path to target data source (optional) + --target-format TARGET_FORMAT format of the source data (json or python) (defaults + to 'json') + --spec-file SPEC_FILE path to glom spec definition (optional) + --spec-format SPEC_FORMAT format of the glom spec definition (json, python, + python-full) (defaults to 'python') + --indent INDENT number of spaces to indent the result, 0 to disable + pretty-printing (defaults to 2) + --debug interactively debug any errors that come up + --inspect interactively explore the data + +``` + +Anything you can do at the command line readily translates to Python +code, so you've always got a path forward when complexity starts to +ramp up. + + +## Examples +#### Without glom +```python +>>> data = {'a': {'b': {'c': 'd'}}} +>>> data['a']['b']['c'] +'d' +>>> data2 = {'a': {'b': None}} +>>> data2['a']['b']['c'] +Traceback (most recent call last): +... +TypeError: 'NoneType' object is not subscriptable +``` + +#### With glom +```python +>>> glom(data, 'a.b.c') +'d' +>>> glom(data2, 'a.b.c') +Traceback (most recent call last): +... +PathAccessError: could not access 'c', index 2 in path Path('a', 'b', 'c'), got error: ... +``` + +## Learn more + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet_multi.png"> + +If all this seems interesting, continue exploring glom below: + +* [glom Tutorial][tutorial] +* [Full API documentation at Read the Docs][rtd] +* [Original announcement blog post (2018-05-09)][glom_announce] +* [Frequently Asked Questions][faq] +* [PyCon 2018 Lightning Talk (2018-05-11)][pycon_talk] + +All of the links above are overflowing with examples, but should you +find anything about the docs, or glom itself, lacking, [please submit +an issue][gh_issues]! + +[rtd]: https://glom.readthedocs.io +[cli_rtd]: http://glom.readthedocs.io/en/latest/cli.html +[tutorial]: https://glom.readthedocs.io/en/latest/tutorial.html +[faq]: https://glom.readthedocs.io/en/latest/faq.html +[glom_announce]: https://sedimental.org/glom_restructured_data.html +[gh_issues]: https://github.com/mahmoud/glom/issues/ +[pycon_talk]: https://www.youtube.com/watch?v=bTAFl8P2DkE&t=18m07s + +In the meantime, just remember: When you've got nested data, glom it! ☄️ + + +%package help +Summary: Development documents and examples for glom +Provides: python3-glom-doc +%description help +# glom + +*Restructuring data, the Python way* + +<a href="https://pypi.org/project/glom/"><img src="https://img.shields.io/pypi/v/glom.svg"></a> +<a href="https://calver.org/"><img src="https://img.shields.io/badge/calver-YY.MM.MICRO-22bfda.svg"></a> + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet.png"> + +Real applications have real data, and real data nests. Objects inside +of objects inside of lists of objects. + +glom is a new and powerful way to handle real-world data, featuring: + +* Path-based access for nested data structures +* Readable, meaningful error messages +* Declarative data transformation, using lightweight, Pythonic specifications +* Built-in data exploration and debugging features + +All of that and more, available as a [fully-documented][rtd], +pure-Python package, tested on Python 3.7+, as well as +PyPy3. Installation is as easy as: + +``` + pip install glom +``` + +And when you install glom, you also get [the `glom` command-line +interface][cli_rtd], letting you experiment at the console, but never limiting +you to shell scripts: + +``` +Usage: glom [FLAGS] [spec [target]] + +Command-line interface to the glom library, providing nested data access and data +restructuring with the power of Python. + +Flags: + + --help / -h show this help message and exit + --target-file TARGET_FILE path to target data source (optional) + --target-format TARGET_FORMAT format of the source data (json or python) (defaults + to 'json') + --spec-file SPEC_FILE path to glom spec definition (optional) + --spec-format SPEC_FORMAT format of the glom spec definition (json, python, + python-full) (defaults to 'python') + --indent INDENT number of spaces to indent the result, 0 to disable + pretty-printing (defaults to 2) + --debug interactively debug any errors that come up + --inspect interactively explore the data + +``` + +Anything you can do at the command line readily translates to Python +code, so you've always got a path forward when complexity starts to +ramp up. + + +## Examples +#### Without glom +```python +>>> data = {'a': {'b': {'c': 'd'}}} +>>> data['a']['b']['c'] +'d' +>>> data2 = {'a': {'b': None}} +>>> data2['a']['b']['c'] +Traceback (most recent call last): +... +TypeError: 'NoneType' object is not subscriptable +``` + +#### With glom +```python +>>> glom(data, 'a.b.c') +'d' +>>> glom(data2, 'a.b.c') +Traceback (most recent call last): +... +PathAccessError: could not access 'c', index 2 in path Path('a', 'b', 'c'), got error: ... +``` + +## Learn more + +<img width="30%" align="right" src="https://raw.githubusercontent.com/mahmoud/glom/master/docs/_static/comet_multi.png"> + +If all this seems interesting, continue exploring glom below: + +* [glom Tutorial][tutorial] +* [Full API documentation at Read the Docs][rtd] +* [Original announcement blog post (2018-05-09)][glom_announce] +* [Frequently Asked Questions][faq] +* [PyCon 2018 Lightning Talk (2018-05-11)][pycon_talk] + +All of the links above are overflowing with examples, but should you +find anything about the docs, or glom itself, lacking, [please submit +an issue][gh_issues]! + +[rtd]: https://glom.readthedocs.io +[cli_rtd]: http://glom.readthedocs.io/en/latest/cli.html +[tutorial]: https://glom.readthedocs.io/en/latest/tutorial.html +[faq]: https://glom.readthedocs.io/en/latest/faq.html +[glom_announce]: https://sedimental.org/glom_restructured_data.html +[gh_issues]: https://github.com/mahmoud/glom/issues/ +[pycon_talk]: https://www.youtube.com/watch?v=bTAFl8P2DkE&t=18m07s + +In the meantime, just remember: When you've got nested data, glom it! ☄️ + + +%prep +%autosetup -n glom-23.3.0 + +%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-glom -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 23.3.0-1 +- Package Spec generated @@ -0,0 +1 @@ +cda864fc8909828bf584ef7a3f219293 glom-23.3.0.tar.gz |