diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-05 04:35:37 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 04:35:37 +0000 |
commit | f7b940363a214367e1bfac048aade51b07f02286 (patch) | |
tree | c2ce8ac033186ea1a51214acf4e826d8fcba4cb8 | |
parent | d10ddc69b9426f7a3a549adbe03eddde0ef11526 (diff) |
automatic import of python-jsonstreamsopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-jsonstreams.spec | 190 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 192 insertions, 0 deletions
@@ -0,0 +1 @@ +/jsonstreams-0.6.0.tar.gz diff --git a/python-jsonstreams.spec b/python-jsonstreams.spec new file mode 100644 index 0000000..de2c3b1 --- /dev/null +++ b/python-jsonstreams.spec @@ -0,0 +1,190 @@ +%global _empty_manifest_terminate_build 0 +Name: python-jsonstreams +Version: 0.6.0 +Release: 1 +Summary: A JSON streaming writer +License: MIT +URL: https://github.com/dcbaker/jsonstreams +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/85/8c/01333839805428590015bb4cbc3b730876609e536954eb1140d24b410bd0/jsonstreams-0.6.0.tar.gz +BuildArch: noarch + +Requires: python3-six +Requires: python3-enum34 +Requires: python3-simplejson +Requires: python3-tox + +%description +Source code is available at `github <https://github.com/dcbaker/jsonstreams>`_. +The code is licensed MIT. See the included LICENSE file for the exact terms. +Description +########### +JSONstreams is a package that attempts to making writing JSON in a streaming +format easier. In contrast to the core json module, this package doesn't +require building a complete tree of dicts and lists before writing, instead it +provides a straightforward way to to write a JSON document **without** building +the whole data structure ahead of time. +JSONstreams considers there to be two basic types, the JSON array and the JSON +object, which correspond to Python's list and dict respectively, and can encode +any types that the json.JSONEncoder can, or can use an subclass to handle +additional types. +The interface is designed to be context manger centric. The Stream class, and +the Array and Object classes returned by the subarray and subobject methods +(respectively), can be used as context managers or not, but use as context +managers are recommended to ensure that each container is closed properly. +Basic Usage +########### +A simple example looks like this + import jsonstreams + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('foo', 'bar') + with s.subobject('a') as a: + a.write('foo', 1) + a.write('bar', 2) + s.write('bar', 'foo') +Writing into a closed group will raise an exception, which should not be +handled, this exception is always an error in programming and should be +corrected. +It is possible to write any value that the encoder (json.JSONEncoder by +default) can encode, so iterating over lists or dictionaries to write them in +is unnecessary: + import jsonstreams + mylist = list(range(10)) + mydict = {a: b for a in range(10) for b in 'abcdefghij'} + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('list', mylist) + s.write('dict', mydict) + +%package -n python3-jsonstreams +Summary: A JSON streaming writer +Provides: python-jsonstreams +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-jsonstreams +Source code is available at `github <https://github.com/dcbaker/jsonstreams>`_. +The code is licensed MIT. See the included LICENSE file for the exact terms. +Description +########### +JSONstreams is a package that attempts to making writing JSON in a streaming +format easier. In contrast to the core json module, this package doesn't +require building a complete tree of dicts and lists before writing, instead it +provides a straightforward way to to write a JSON document **without** building +the whole data structure ahead of time. +JSONstreams considers there to be two basic types, the JSON array and the JSON +object, which correspond to Python's list and dict respectively, and can encode +any types that the json.JSONEncoder can, or can use an subclass to handle +additional types. +The interface is designed to be context manger centric. The Stream class, and +the Array and Object classes returned by the subarray and subobject methods +(respectively), can be used as context managers or not, but use as context +managers are recommended to ensure that each container is closed properly. +Basic Usage +########### +A simple example looks like this + import jsonstreams + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('foo', 'bar') + with s.subobject('a') as a: + a.write('foo', 1) + a.write('bar', 2) + s.write('bar', 'foo') +Writing into a closed group will raise an exception, which should not be +handled, this exception is always an error in programming and should be +corrected. +It is possible to write any value that the encoder (json.JSONEncoder by +default) can encode, so iterating over lists or dictionaries to write them in +is unnecessary: + import jsonstreams + mylist = list(range(10)) + mydict = {a: b for a in range(10) for b in 'abcdefghij'} + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('list', mylist) + s.write('dict', mydict) + +%package help +Summary: Development documents and examples for jsonstreams +Provides: python3-jsonstreams-doc +%description help +Source code is available at `github <https://github.com/dcbaker/jsonstreams>`_. +The code is licensed MIT. See the included LICENSE file for the exact terms. +Description +########### +JSONstreams is a package that attempts to making writing JSON in a streaming +format easier. In contrast to the core json module, this package doesn't +require building a complete tree of dicts and lists before writing, instead it +provides a straightforward way to to write a JSON document **without** building +the whole data structure ahead of time. +JSONstreams considers there to be two basic types, the JSON array and the JSON +object, which correspond to Python's list and dict respectively, and can encode +any types that the json.JSONEncoder can, or can use an subclass to handle +additional types. +The interface is designed to be context manger centric. The Stream class, and +the Array and Object classes returned by the subarray and subobject methods +(respectively), can be used as context managers or not, but use as context +managers are recommended to ensure that each container is closed properly. +Basic Usage +########### +A simple example looks like this + import jsonstreams + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('foo', 'bar') + with s.subobject('a') as a: + a.write('foo', 1) + a.write('bar', 2) + s.write('bar', 'foo') +Writing into a closed group will raise an exception, which should not be +handled, this exception is always an error in programming and should be +corrected. +It is possible to write any value that the encoder (json.JSONEncoder by +default) can encode, so iterating over lists or dictionaries to write them in +is unnecessary: + import jsonstreams + mylist = list(range(10)) + mydict = {a: b for a in range(10) for b in 'abcdefghij'} + with jsonstreams.Stream(jsonstreams.Type.OBJECT, filename='foo') as s: + s.write('list', mylist) + s.write('dict', mydict) + +%prep +%autosetup -n jsonstreams-0.6.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-jsonstreams -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.6.0-1 +- Package Spec generated @@ -0,0 +1 @@ +f3a40174a4f54e0ecbf803cf92ead38a jsonstreams-0.6.0.tar.gz |