diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-10 19:19:56 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 19:19:56 +0000 |
| commit | d7d0d2ee2d9329738aa24fc4ec431ebc251186e3 (patch) | |
| tree | b6b99a4ce0b56dc0aa142297f427f473dabc57c2 | |
| parent | bbadbe8967390730c96f0a9064fd911bf7875c3f (diff) | |
automatic import of python-redlock-py
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-redlock-py.spec | 237 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 239 insertions, 0 deletions
@@ -0,0 +1 @@ +/redlock-py-1.0.8.tar.gz diff --git a/python-redlock-py.spec b/python-redlock-py.spec new file mode 100644 index 0000000..6e0c5f8 --- /dev/null +++ b/python-redlock-py.spec @@ -0,0 +1,237 @@ +%global _empty_manifest_terminate_build 0 +Name: python-redlock-py +Version: 1.0.8 +Release: 1 +Summary: Redis locking mechanism +License: UNKNOWN +URL: https://github.com/SPSCommerce/identity-service +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/7c/40/29e1730f771b5d27e3c77b5426b6a67a3642868bf8bd592dfa6639feda98/redlock-py-1.0.8.tar.gz +BuildArch: noarch + + +%description +redlock-py - Redis distributed locks in Python + +This python lib implements the Redis-based distributed lock manager algorithm +[described in this blog post](http://antirez.com/news/77). + +To create a lock manager: + + dlm = Redlock([{"host": "localhost", "port": 6379, "db": 0}, ]) + +To acquire a lock: + + my_lock = dlm.lock("my_resource_name",1000) + +Where the resource name is an unique identifier of what you are trying to lock +and 1000 is the number of milliseconds for the validity time. + +The returned value is `False` if the lock was not acquired (you may try again), +otherwise an namedtuple representing the lock is returned, having three fields: + +* validity, an integer representing the number of milliseconds the lock will be valid. +* resource, the name of the locked resource as specified by the user. +* key, a random value which is used to safe reclaim the lock. + +To release a lock: + + dlm.unlock(my_lock) + +It is possible to setup the number of retries (by default 3) and the retry +delay (by default 200 milliseconds) used to acquire the lock. + + +**Disclaimer**: This code implements an algorithm which is currently a proposal, +it was not formally analyzed. Make sure to understand how it works before using it +in your production environments. + +The MIT License (MIT) + +Copyright (c) 2014 SPS Commerce, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +%package -n python3-redlock-py +Summary: Redis locking mechanism +Provides: python-redlock-py +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-redlock-py +redlock-py - Redis distributed locks in Python + +This python lib implements the Redis-based distributed lock manager algorithm +[described in this blog post](http://antirez.com/news/77). + +To create a lock manager: + + dlm = Redlock([{"host": "localhost", "port": 6379, "db": 0}, ]) + +To acquire a lock: + + my_lock = dlm.lock("my_resource_name",1000) + +Where the resource name is an unique identifier of what you are trying to lock +and 1000 is the number of milliseconds for the validity time. + +The returned value is `False` if the lock was not acquired (you may try again), +otherwise an namedtuple representing the lock is returned, having three fields: + +* validity, an integer representing the number of milliseconds the lock will be valid. +* resource, the name of the locked resource as specified by the user. +* key, a random value which is used to safe reclaim the lock. + +To release a lock: + + dlm.unlock(my_lock) + +It is possible to setup the number of retries (by default 3) and the retry +delay (by default 200 milliseconds) used to acquire the lock. + + +**Disclaimer**: This code implements an algorithm which is currently a proposal, +it was not formally analyzed. Make sure to understand how it works before using it +in your production environments. + +The MIT License (MIT) + +Copyright (c) 2014 SPS Commerce, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +%package help +Summary: Development documents and examples for redlock-py +Provides: python3-redlock-py-doc +%description help +redlock-py - Redis distributed locks in Python + +This python lib implements the Redis-based distributed lock manager algorithm +[described in this blog post](http://antirez.com/news/77). + +To create a lock manager: + + dlm = Redlock([{"host": "localhost", "port": 6379, "db": 0}, ]) + +To acquire a lock: + + my_lock = dlm.lock("my_resource_name",1000) + +Where the resource name is an unique identifier of what you are trying to lock +and 1000 is the number of milliseconds for the validity time. + +The returned value is `False` if the lock was not acquired (you may try again), +otherwise an namedtuple representing the lock is returned, having three fields: + +* validity, an integer representing the number of milliseconds the lock will be valid. +* resource, the name of the locked resource as specified by the user. +* key, a random value which is used to safe reclaim the lock. + +To release a lock: + + dlm.unlock(my_lock) + +It is possible to setup the number of retries (by default 3) and the retry +delay (by default 200 milliseconds) used to acquire the lock. + + +**Disclaimer**: This code implements an algorithm which is currently a proposal, +it was not formally analyzed. Make sure to understand how it works before using it +in your production environments. + +The MIT License (MIT) + +Copyright (c) 2014 SPS Commerce, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +%prep +%autosetup -n redlock-py-1.0.8 + +%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-redlock-py -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.8-1 +- Package Spec generated @@ -0,0 +1 @@ +7f8fe8ddefbe35deaa64d67ebdf1c58e redlock-py-1.0.8.tar.gz |
