python-json-tricks/python-json-tricks.spec
2024-01-29 16:32:37 +08:00

129 lines
6.0 KiB
RPMSpec

%global _empty_manifest_terminate_build 0
Name: python-json-tricks
Version: 3.17.3
Release: 1
Summary: Extra features for Python's JSON: comments, order, numpy, pandas, datetimes, and many more! Simple but customizable.
License: BSD-3-Clause
URL: https://github.com/mverleg/pyjson_tricks
Source0: https://github.com/mverleg/pyjson_tricks/archive/refs/tags/v%{version}.tar.gz
BuildArch: noarch
%description
The `pyjson-tricks` package brings several pieces of functionality to python handling of json files:
1. **Store and load numpy arrays** in human-readable format.
2. **Store and load class instances** both generic and customized.
3. **Store and load date/times** as a dictionary (including timezone).
4. **Preserve map order** ``{}`` using ``OrderedDict``.
5. **Allow for comments** in json files by starting lines with ``#``.
6. Sets, complex numbers, Decimal, Fraction, enums, compression, duplicate keys, pathlib Paths ...
As well as compression and disallowing duplicate keys.
* Code: https://github.com/mverleg/pyjson_tricks
* Documentation: http://json-tricks.readthedocs.org/en/latest/
* PIP: https://pypi.python.org/pypi/json_tricks
The 2.0 series added some of the above features and broke backward compatibility. The version 3.0 series is a more readable rewrite that also makes it easier to combine encoders, again not fully backward compatible.
Several keys of the format ``__keyname__`` have special meanings, and more might be added in future releases.
If you're considering JSON-but-with-comments as a config file format, have a look at HJSON_, it might be more appropriate. For other purposes, keep reading!
Thanks for all the Github stars!
%package -n python3-json-tricks
Summary: Extra features for Python's JSON: comments, order, numpy, pandas, datetimes, and many more! Simple but customizable.
Provides: python-json-tricks
BuildRequires: python3-devel
BuildRequires: python3-setuptools
%description -n python3-json-tricks
The `pyjson-tricks` package brings several pieces of functionality to python handling of json files:
1. **Store and load numpy arrays** in human-readable format.
2. **Store and load class instances** both generic and customized.
3. **Store and load date/times** as a dictionary (including timezone).
4. **Preserve map order** ``{}`` using ``OrderedDict``.
5. **Allow for comments** in json files by starting lines with ``#``.
6. Sets, complex numbers, Decimal, Fraction, enums, compression, duplicate keys, pathlib Paths ...
As well as compression and disallowing duplicate keys.
* Code: https://github.com/mverleg/pyjson_tricks
* Documentation: http://json-tricks.readthedocs.org/en/latest/
* PIP: https://pypi.python.org/pypi/json_tricks
The 2.0 series added some of the above features and broke backward compatibility. The version 3.0 series is a more readable rewrite that also makes it easier to combine encoders, again not fully backward compatible.
Several keys of the format ``__keyname__`` have special meanings, and more might be added in future releases.
If you're considering JSON-but-with-comments as a config file format, have a look at HJSON_, it might be more appropriate. For other purposes, keep reading!
Thanks for all the Github stars!
%package help
Summary: Development documents and examples for json-tricks
Provides: python3-json-tricks-doc
%description help
The `pyjson-tricks` package brings several pieces of functionality to python handling of json files:
1. **Store and load numpy arrays** in human-readable format.
2. **Store and load class instances** both generic and customized.
3. **Store and load date/times** as a dictionary (including timezone).
4. **Preserve map order** ``{}`` using ``OrderedDict``.
5. **Allow for comments** in json files by starting lines with ``#``.
6. Sets, complex numbers, Decimal, Fraction, enums, compression, duplicate keys, pathlib Paths ...
As well as compression and disallowing duplicate keys.
* Code: https://github.com/mverleg/pyjson_tricks
* Documentation: http://json-tricks.readthedocs.org/en/latest/
* PIP: https://pypi.python.org/pypi/json_tricks
The 2.0 series added some of the above features and broke backward compatibility. The version 3.0 series is a more readable rewrite that also makes it easier to combine encoders, again not fully backward compatible.
Several keys of the format ``__keyname__`` have special meanings, and more might be added in future releases.
If you're considering JSON-but-with-comments as a config file format, have a look at HJSON_, it might be more appropriate. For other purposes, keep reading!
Thanks for all the Github stars!
%prep
%autosetup -n pyjson_tricks-%{version}
%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-json-tricks -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri Jan 26 2024 fuanan <fuanan3@h-partners.com> - 3.17.3-1
- Type:enhancement
- ID:NA
- SUG:NA
- DESC:update version to 3.17.3
drop python 2 support
datatime fixes
Remove ancient pathlib requirement for python3. It is part of the stdlib since Python 3.4
* Tue Dec 13 2022 fuanan <fuanan3@h-partners.com> - 3.15.5-1
- Type:enhancement
- ID:NA
- SUG:NA
- DESC:update version to 3.15.5
* Thu Oct 01 2020 Python_Bot <Python_Bot@openeuler.org>
- Package Spec generated