diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-29 11:12:01 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-29 11:12:01 +0000 |
commit | ddf841ba9b53e0584091e2059ab6a365c50a390b (patch) | |
tree | 84f7b930056b2c7973acbc10a22834e91d1297e6 | |
parent | 74d85f2faf95ced90c25dd62e08f1d1b416e7b9c (diff) |
automatic import of python-tinyrecord
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-tinyrecord.spec | 210 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 212 insertions, 0 deletions
@@ -0,0 +1 @@ +/tinyrecord-0.2.0.tar.gz diff --git a/python-tinyrecord.spec b/python-tinyrecord.spec new file mode 100644 index 0000000..d310485 --- /dev/null +++ b/python-tinyrecord.spec @@ -0,0 +1,210 @@ +%global _empty_manifest_terminate_build 0 +Name: python-tinyrecord +Version: 0.2.0 +Release: 1 +Summary: Atomic transactions for TinyDB +License: MIT +URL: https://github.com/eugene-eeo/tinyrecord +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d8/6c/a004d025d9bf1d8af014fd6f22bd6e49e4533d6fbac54f7d4ae7acb3ef5f/tinyrecord-0.2.0.tar.gz +BuildArch: noarch + + +%description +:: + + TinyDB __ _ __ + / /_(_)__ __ _________ _______ _______/ / + / __/ / _ \/ // / __/ -_) __/ _ \/ __/ _ / + \__/_/_//_/\_, /_/ \__/\__/\___/_/ \_,_/ + /___/ + + +**Supported Pythons:** 3.5+ + +Tinyrecord is a library which implements atomic +transaction support for the `TinyDB`_ NoSQL database. +It uses a record-first then execute architecture which +allows us to minimize the time that we are within a +thread lock. Usage example: + +.. code-block:: python + + from tinydb import TinyDB, where + from tinyrecord import transaction + + table = TinyDB('db.json').table('table') + with transaction(table) as tr: + # insert a new record + tr.insert({'username': 'john'}) + # update records matching a query + tr.update({'invalid': True}, where('username') == 'john') + # delete records + tr.remove(where('invalid') == True) + # update using a function + tr.update(updater, where(...)) + # insert many items + tr.insert_multiple(documents) + +Note that due to performance reasons you cannot view +the data within a transaction unless you've comitted. +You will have to call operations on the transaction +object and not the database itself. Since tinyrecord +works with dictionaries and the latest API, it will +only support the latest version (**4.x**). + +Installation is as simple as ``pip install tinyrecord``. + +.. image:: https://travis-ci.org/eugene-eeo/tinyrecord.svg?branch=master + :target: https://travis-ci.org/eugene-eeo/tinyrecord +.. _TinyDB: https://github.com/msiemens/tinydb + +%package -n python3-tinyrecord +Summary: Atomic transactions for TinyDB +Provides: python-tinyrecord +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-tinyrecord +:: + + TinyDB __ _ __ + / /_(_)__ __ _________ _______ _______/ / + / __/ / _ \/ // / __/ -_) __/ _ \/ __/ _ / + \__/_/_//_/\_, /_/ \__/\__/\___/_/ \_,_/ + /___/ + + +**Supported Pythons:** 3.5+ + +Tinyrecord is a library which implements atomic +transaction support for the `TinyDB`_ NoSQL database. +It uses a record-first then execute architecture which +allows us to minimize the time that we are within a +thread lock. Usage example: + +.. code-block:: python + + from tinydb import TinyDB, where + from tinyrecord import transaction + + table = TinyDB('db.json').table('table') + with transaction(table) as tr: + # insert a new record + tr.insert({'username': 'john'}) + # update records matching a query + tr.update({'invalid': True}, where('username') == 'john') + # delete records + tr.remove(where('invalid') == True) + # update using a function + tr.update(updater, where(...)) + # insert many items + tr.insert_multiple(documents) + +Note that due to performance reasons you cannot view +the data within a transaction unless you've comitted. +You will have to call operations on the transaction +object and not the database itself. Since tinyrecord +works with dictionaries and the latest API, it will +only support the latest version (**4.x**). + +Installation is as simple as ``pip install tinyrecord``. + +.. image:: https://travis-ci.org/eugene-eeo/tinyrecord.svg?branch=master + :target: https://travis-ci.org/eugene-eeo/tinyrecord +.. _TinyDB: https://github.com/msiemens/tinydb + +%package help +Summary: Development documents and examples for tinyrecord +Provides: python3-tinyrecord-doc +%description help +:: + + TinyDB __ _ __ + / /_(_)__ __ _________ _______ _______/ / + / __/ / _ \/ // / __/ -_) __/ _ \/ __/ _ / + \__/_/_//_/\_, /_/ \__/\__/\___/_/ \_,_/ + /___/ + + +**Supported Pythons:** 3.5+ + +Tinyrecord is a library which implements atomic +transaction support for the `TinyDB`_ NoSQL database. +It uses a record-first then execute architecture which +allows us to minimize the time that we are within a +thread lock. Usage example: + +.. code-block:: python + + from tinydb import TinyDB, where + from tinyrecord import transaction + + table = TinyDB('db.json').table('table') + with transaction(table) as tr: + # insert a new record + tr.insert({'username': 'john'}) + # update records matching a query + tr.update({'invalid': True}, where('username') == 'john') + # delete records + tr.remove(where('invalid') == True) + # update using a function + tr.update(updater, where(...)) + # insert many items + tr.insert_multiple(documents) + +Note that due to performance reasons you cannot view +the data within a transaction unless you've comitted. +You will have to call operations on the transaction +object and not the database itself. Since tinyrecord +works with dictionaries and the latest API, it will +only support the latest version (**4.x**). + +Installation is as simple as ``pip install tinyrecord``. + +.. image:: https://travis-ci.org/eugene-eeo/tinyrecord.svg?branch=master + :target: https://travis-ci.org/eugene-eeo/tinyrecord +.. _TinyDB: https://github.com/msiemens/tinydb + +%prep +%autosetup -n tinyrecord-0.2.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-tinyrecord -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.0-1 +- Package Spec generated @@ -0,0 +1 @@ +cbaae3f4599b12e3bea67ca4a75eca99 tinyrecord-0.2.0.tar.gz |