diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-toredis-fork.spec | 156 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 158 insertions, 0 deletions
@@ -0,0 +1 @@ +/toredis-fork-0.1.4.tar.gz diff --git a/python-toredis-fork.spec b/python-toredis-fork.spec new file mode 100644 index 0000000..0c5cba0 --- /dev/null +++ b/python-toredis-fork.spec @@ -0,0 +1,156 @@ +%global _empty_manifest_terminate_build 0 +Name: python-toredis-fork +Version: 0.1.4 +Release: 1 +Summary: Really simple async Redis client for Tornado +License: http://www.apache.org/licenses/LICENSE-2.0 +URL: http://github.com/mrjoes/toredis/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/fb/3c/1224e002cf9f1d23dad5d5ac0ded131c994d00b50f66ca76198778350bcd/toredis-fork-0.1.4.tar.gz +BuildArch: noarch + + +%description +This is minimalistic, but feature rich redis client for Tornado built on top of `hiredis <https://github.com/pietern/hiredis-py>`_ protocol parser. +Supports all redis commands, which are auto-generated from the redis `JSON documentation file <https://github.com/antirez/redis-doc/blob/master/commands.json>`_. +Key design points: +1. While toredis attempts to add some syntactical sugar to the API, all responses are returned "as is". For example, if command returns + list of items and developer requested only one key, list with one entry will be returned. For example:: + def handle(self, result): + print(len(result)) + conn.hkeys('test1', handle) +2. Most redis commands accept one or more keys. Toredis adds a bit of logic to handle single key or array of keys. Due to python + limitations, it is not possible to use ``*args`` with named ``callback`` argument, so you will have to pass array of key names:: + # This will work + conn.blpop('test', callback=callback) + conn.blpop(['test', 'test2'], callback=callback) + # This won't work + conn.blpop('test', 'test2', callback=callback) +3. If redis connection will be dropped while waiting for response, callback will be triggered with `None` as a value. +4. Toredis does not provide reconnection feature, but you can override :meth:`~toredis.Client.on_disconnect` method and implement your reconnection logic. +You can find command `documentation here <https://github.com/mrjoes/toredis/blob/master/toredis/commands.py>`_ (will be moved to rtd later). +Pipelining is also supported:: + # For more than one pipeline for connection create it with Pipeline(conn) + pipeline = conn.pipeline() + pipeline.set('foo', 'bar') + pipeline.get('foo') + pipeline.send(callback=callback) +For more examples please refer to tests. +More on `redis pipelining <http://redis.io/topics/pipelining>`_. +Things missing: +* Backport pure-python redis protocol parser (for PyPy support) +* Connection pools + +%package -n python3-toredis-fork +Summary: Really simple async Redis client for Tornado +Provides: python-toredis-fork +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-toredis-fork +This is minimalistic, but feature rich redis client for Tornado built on top of `hiredis <https://github.com/pietern/hiredis-py>`_ protocol parser. +Supports all redis commands, which are auto-generated from the redis `JSON documentation file <https://github.com/antirez/redis-doc/blob/master/commands.json>`_. +Key design points: +1. While toredis attempts to add some syntactical sugar to the API, all responses are returned "as is". For example, if command returns + list of items and developer requested only one key, list with one entry will be returned. For example:: + def handle(self, result): + print(len(result)) + conn.hkeys('test1', handle) +2. Most redis commands accept one or more keys. Toredis adds a bit of logic to handle single key or array of keys. Due to python + limitations, it is not possible to use ``*args`` with named ``callback`` argument, so you will have to pass array of key names:: + # This will work + conn.blpop('test', callback=callback) + conn.blpop(['test', 'test2'], callback=callback) + # This won't work + conn.blpop('test', 'test2', callback=callback) +3. If redis connection will be dropped while waiting for response, callback will be triggered with `None` as a value. +4. Toredis does not provide reconnection feature, but you can override :meth:`~toredis.Client.on_disconnect` method and implement your reconnection logic. +You can find command `documentation here <https://github.com/mrjoes/toredis/blob/master/toredis/commands.py>`_ (will be moved to rtd later). +Pipelining is also supported:: + # For more than one pipeline for connection create it with Pipeline(conn) + pipeline = conn.pipeline() + pipeline.set('foo', 'bar') + pipeline.get('foo') + pipeline.send(callback=callback) +For more examples please refer to tests. +More on `redis pipelining <http://redis.io/topics/pipelining>`_. +Things missing: +* Backport pure-python redis protocol parser (for PyPy support) +* Connection pools + +%package help +Summary: Development documents and examples for toredis-fork +Provides: python3-toredis-fork-doc +%description help +This is minimalistic, but feature rich redis client for Tornado built on top of `hiredis <https://github.com/pietern/hiredis-py>`_ protocol parser. +Supports all redis commands, which are auto-generated from the redis `JSON documentation file <https://github.com/antirez/redis-doc/blob/master/commands.json>`_. +Key design points: +1. While toredis attempts to add some syntactical sugar to the API, all responses are returned "as is". For example, if command returns + list of items and developer requested only one key, list with one entry will be returned. For example:: + def handle(self, result): + print(len(result)) + conn.hkeys('test1', handle) +2. Most redis commands accept one or more keys. Toredis adds a bit of logic to handle single key or array of keys. Due to python + limitations, it is not possible to use ``*args`` with named ``callback`` argument, so you will have to pass array of key names:: + # This will work + conn.blpop('test', callback=callback) + conn.blpop(['test', 'test2'], callback=callback) + # This won't work + conn.blpop('test', 'test2', callback=callback) +3. If redis connection will be dropped while waiting for response, callback will be triggered with `None` as a value. +4. Toredis does not provide reconnection feature, but you can override :meth:`~toredis.Client.on_disconnect` method and implement your reconnection logic. +You can find command `documentation here <https://github.com/mrjoes/toredis/blob/master/toredis/commands.py>`_ (will be moved to rtd later). +Pipelining is also supported:: + # For more than one pipeline for connection create it with Pipeline(conn) + pipeline = conn.pipeline() + pipeline.set('foo', 'bar') + pipeline.get('foo') + pipeline.send(callback=callback) +For more examples please refer to tests. +More on `redis pipelining <http://redis.io/topics/pipelining>`_. +Things missing: +* Backport pure-python redis protocol parser (for PyPy support) +* Connection pools + +%prep +%autosetup -n toredis-fork-0.1.4 + +%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-toredis-fork -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.4-1 +- Package Spec generated @@ -0,0 +1 @@ +e8dbb0d1492050a3da7267e2456182d6 toredis-fork-0.1.4.tar.gz |