%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 [![Coverage](https://coveralls.io/repos/github/python-platonic/platonic-sqs/badge.svg?branch=master)](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) [![Python Version](https://img.shields.io/pypi/pyversions/platonic-sqs.svg)](https://pypi.org/project/platonic-sqs/) [![wemake-python-styleguide](https://img.shields.io/badge/style-wemake-000000.svg)](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 [![Coverage](https://coveralls.io/repos/github/python-platonic/platonic-sqs/badge.svg?branch=master)](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) [![Python Version](https://img.shields.io/pypi/pyversions/platonic-sqs.svg)](https://pypi.org/project/platonic-sqs/) [![wemake-python-styleguide](https://img.shields.io/badge/style-wemake-000000.svg)](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 [![Coverage](https://coveralls.io/repos/github/python-platonic/platonic-sqs/badge.svg?branch=master)](https://coveralls.io/github/python-platonic/platonic-sqs?branch=master) [![Python Version](https://img.shields.io/pypi/pyversions/platonic-sqs.svg)](https://pypi.org/project/platonic-sqs/) [![wemake-python-styleguide](https://img.shields.io/badge/style-wemake-000000.svg)](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 - 1.2.8-1 - Package Spec generated