diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-platonic-sqs.spec | 262 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 264 insertions, 0 deletions
@@ -0,0 +1 @@ +/platonic-sqs-1.2.8.tar.gz diff --git a/python-platonic-sqs.spec b/python-platonic-sqs.spec new file mode 100644 index 0000000..41e255f --- /dev/null +++ b/python-platonic-sqs.spec @@ -0,0 +1,262 @@ +%global _empty_manifest_terminate_build 0 +Name: python-platonic-sqs +Version: 1.2.8 +Release: 1 +Summary: Platonic wrapper for Amazon Simple Queue Service +License: MIT +URL: https://github.com/python-platonic/platonic-sqs +Source0: https://mirrors.aliyun.com/pypi/web/packages/1b/d5/efc8ad4afd31919ad9d62b312c90ae0dfdceb8ad9a98d2b28a0e470b0676/platonic-sqs-1.2.8.tar.gz +BuildArch: noarch + +Requires: python3-boto3-stubs[sqs] +Requires: python3-boltons +Requires: python3-platonic +Requires: python3-attrs +Requires: python3-botocore +Requires: python3-boto3 +Requires: python3-mypy-boto3-sqs + +%description +# platonic-sqs + +[](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) +[](https://pypi.org/project/platonic-sqs/) +[](https://github.com/wemake-services/wemake-python-styleguide) + +A [platonic](https://platonic.tools) wrapper for Amazon SQS queue service. Abstracts away the implementation details of SQS, providing you with a clean and typed queue interface. + + +## Installation + +```bash +pip install platonic-sqs +``` + + +## Send + +```python +from platonic.sqs.queue import SQSSender + +numbers_out = SQSSender[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', +) + +numbers_out.send(15) +numbers_out.send_many([1, 1, 2, 3, 5, 8, 13]) +``` + +## Receive & acknowledge + +```python +from platonic.sqs.queue import SQSReceiver +from platonic.timeout import ConstantTimeout +from datetime import timedelta + +incoming_numbers = SQSReceiver[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', + # Thus we prevent the receiver from blocking forever if queue is empty + timeout=ConstantTimeout(period=timedelta(minutes=3)), +) + +# If the queue is empty, this call with block until there is a message. +cmd = incoming_numbers.receive() + +assert cmd.value == 15 +# Do complicated stuff with the value +print(cmd.value * 1234 + 5767) + +incoming_numbers.acknowledge(cmd) +``` + +## License + +[MIT](https://github.com/python-platonic/platonic-sqs/blob/master/LICENSE) + + +## Credits + +* This project was generated with [`wemake-python-package`](https://github.com/wemake-services/wemake-python-package). Current template version is: [c9e9ea8b9be2464cacd00b9c2a438e821da9121b](https://github.com/wemake-services/wemake-python-package/tree/c9e9ea8b9be2464cacd00b9c2a438e821da9121b). See what is [updated](https://github.com/wemake-services/wemake-python-package/compare/c9e9ea8b9be2464cacd00b9c2a438e821da9121b...master) since then. +* This project is partially sponsored by [Recall Masters](https://github.com/Recall-Masters) - look out for issues with `sponsored` tag. + + +%package -n python3-platonic-sqs +Summary: Platonic wrapper for Amazon Simple Queue Service +Provides: python-platonic-sqs +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-platonic-sqs +# platonic-sqs + +[](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) +[](https://pypi.org/project/platonic-sqs/) +[](https://github.com/wemake-services/wemake-python-styleguide) + +A [platonic](https://platonic.tools) wrapper for Amazon SQS queue service. Abstracts away the implementation details of SQS, providing you with a clean and typed queue interface. + + +## Installation + +```bash +pip install platonic-sqs +``` + + +## Send + +```python +from platonic.sqs.queue import SQSSender + +numbers_out = SQSSender[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', +) + +numbers_out.send(15) +numbers_out.send_many([1, 1, 2, 3, 5, 8, 13]) +``` + +## Receive & acknowledge + +```python +from platonic.sqs.queue import SQSReceiver +from platonic.timeout import ConstantTimeout +from datetime import timedelta + +incoming_numbers = SQSReceiver[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', + # Thus we prevent the receiver from blocking forever if queue is empty + timeout=ConstantTimeout(period=timedelta(minutes=3)), +) + +# If the queue is empty, this call with block until there is a message. +cmd = incoming_numbers.receive() + +assert cmd.value == 15 +# Do complicated stuff with the value +print(cmd.value * 1234 + 5767) + +incoming_numbers.acknowledge(cmd) +``` + +## License + +[MIT](https://github.com/python-platonic/platonic-sqs/blob/master/LICENSE) + + +## Credits + +* This project was generated with [`wemake-python-package`](https://github.com/wemake-services/wemake-python-package). Current template version is: [c9e9ea8b9be2464cacd00b9c2a438e821da9121b](https://github.com/wemake-services/wemake-python-package/tree/c9e9ea8b9be2464cacd00b9c2a438e821da9121b). See what is [updated](https://github.com/wemake-services/wemake-python-package/compare/c9e9ea8b9be2464cacd00b9c2a438e821da9121b...master) since then. +* This project is partially sponsored by [Recall Masters](https://github.com/Recall-Masters) - look out for issues with `sponsored` tag. + + +%package help +Summary: Development documents and examples for platonic-sqs +Provides: python3-platonic-sqs-doc +%description help +# platonic-sqs + +[](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) +[](https://pypi.org/project/platonic-sqs/) +[](https://github.com/wemake-services/wemake-python-styleguide) + +A [platonic](https://platonic.tools) wrapper for Amazon SQS queue service. Abstracts away the implementation details of SQS, providing you with a clean and typed queue interface. + + +## Installation + +```bash +pip install platonic-sqs +``` + + +## Send + +```python +from platonic.sqs.queue import SQSSender + +numbers_out = SQSSender[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', +) + +numbers_out.send(15) +numbers_out.send_many([1, 1, 2, 3, 5, 8, 13]) +``` + +## Receive & acknowledge + +```python +from platonic.sqs.queue import SQSReceiver +from platonic.timeout import ConstantTimeout +from datetime import timedelta + +incoming_numbers = SQSReceiver[int]( + url='https://sqs.us-west-2.amazonaws.com/123456789012/queue-name', + # Thus we prevent the receiver from blocking forever if queue is empty + timeout=ConstantTimeout(period=timedelta(minutes=3)), +) + +# If the queue is empty, this call with block until there is a message. +cmd = incoming_numbers.receive() + +assert cmd.value == 15 +# Do complicated stuff with the value +print(cmd.value * 1234 + 5767) + +incoming_numbers.acknowledge(cmd) +``` + +## License + +[MIT](https://github.com/python-platonic/platonic-sqs/blob/master/LICENSE) + + +## Credits + +* This project was generated with [`wemake-python-package`](https://github.com/wemake-services/wemake-python-package). Current template version is: [c9e9ea8b9be2464cacd00b9c2a438e821da9121b](https://github.com/wemake-services/wemake-python-package/tree/c9e9ea8b9be2464cacd00b9c2a438e821da9121b). See what is [updated](https://github.com/wemake-services/wemake-python-package/compare/c9e9ea8b9be2464cacd00b9c2a438e821da9121b...master) since then. +* This project is partially sponsored by [Recall Masters](https://github.com/Recall-Masters) - look out for issues with `sponsored` tag. + + +%prep +%autosetup -n platonic-sqs-1.2.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-platonic-sqs -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.8-1 +- Package Spec generated @@ -0,0 +1 @@ +474bec480053492ed4754e564509bfdf platonic-sqs-1.2.8.tar.gz |