From 28d8042b788eeda5341f36d7da653836a9faa2ec Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Tue, 11 Apr 2023 17:30:58 +0000 Subject: automatic import of python-threaded --- .gitignore | 1 + python-threaded.spec | 143 +++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 145 insertions(+) create mode 100644 python-threaded.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..8e57473 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/threaded-4.1.0.tar.gz diff --git a/python-threaded.spec b/python-threaded.spec new file mode 100644 index 0000000..8497f97 --- /dev/null +++ b/python-threaded.spec @@ -0,0 +1,143 @@ +%global _empty_manifest_terminate_build 0 +Name: python-threaded +Version: 4.1.0 +Release: 1 +Summary: Decorators for running functions in Thread/ThreadPool/IOLoop +License: Apache License, Version 2.0 +URL: https://github.com/python-useful-helpers/threaded +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/68/1a/ec454b2d86172112e4e59e6b0626e5cbd4a790a95ef8df60347bb3145beb/threaded-4.1.0.tar.gz + + +%description +threaded is a set of decorators, which wrap functions in: + * `concurrent.futures.ThreadPool` + * `threading.Thread` + * `asyncio.Task` in Python 3. +Why? Because copy-paste of `loop.create_task`, `threading.Thread` and `thread_pool.submit` is boring, +especially if target functions is used by this way only. +Pros: +* Free software: Apache license +* Open Source: https://github.com/python-useful-helpers/threaded +* PyPI packaged: https://pypi.python.org/pypi/threaded +* Tested: see bages on top +* Support multiple Python versions: + Python 3.4 + Python 3.5 + Python 3.6 + Python 3.7 + PyPy3 3.5+ +Decorators: +* `ThreadPooled` - native ``concurrent.futures.ThreadPool``. +* `threadpooled` is alias for `ThreadPooled`. +* `Threaded` - wrap in ``threading.Thread``. +* `threaded` is alias for `Threaded`. +* `AsyncIOTask` - wrap in ``asyncio.Task``. Uses the same API, as `ThreadPooled`. +* `asynciotask` is alias for `AsyncIOTask`. + +%package -n python3-threaded +Summary: Decorators for running functions in Thread/ThreadPool/IOLoop +Provides: python-threaded +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-cffi +BuildRequires: gcc +BuildRequires: gdb +%description -n python3-threaded +threaded is a set of decorators, which wrap functions in: + * `concurrent.futures.ThreadPool` + * `threading.Thread` + * `asyncio.Task` in Python 3. +Why? Because copy-paste of `loop.create_task`, `threading.Thread` and `thread_pool.submit` is boring, +especially if target functions is used by this way only. +Pros: +* Free software: Apache license +* Open Source: https://github.com/python-useful-helpers/threaded +* PyPI packaged: https://pypi.python.org/pypi/threaded +* Tested: see bages on top +* Support multiple Python versions: + Python 3.4 + Python 3.5 + Python 3.6 + Python 3.7 + PyPy3 3.5+ +Decorators: +* `ThreadPooled` - native ``concurrent.futures.ThreadPool``. +* `threadpooled` is alias for `ThreadPooled`. +* `Threaded` - wrap in ``threading.Thread``. +* `threaded` is alias for `Threaded`. +* `AsyncIOTask` - wrap in ``asyncio.Task``. Uses the same API, as `ThreadPooled`. +* `asynciotask` is alias for `AsyncIOTask`. + +%package help +Summary: Development documents and examples for threaded +Provides: python3-threaded-doc +%description help +threaded is a set of decorators, which wrap functions in: + * `concurrent.futures.ThreadPool` + * `threading.Thread` + * `asyncio.Task` in Python 3. +Why? Because copy-paste of `loop.create_task`, `threading.Thread` and `thread_pool.submit` is boring, +especially if target functions is used by this way only. +Pros: +* Free software: Apache license +* Open Source: https://github.com/python-useful-helpers/threaded +* PyPI packaged: https://pypi.python.org/pypi/threaded +* Tested: see bages on top +* Support multiple Python versions: + Python 3.4 + Python 3.5 + Python 3.6 + Python 3.7 + PyPy3 3.5+ +Decorators: +* `ThreadPooled` - native ``concurrent.futures.ThreadPool``. +* `threadpooled` is alias for `ThreadPooled`. +* `Threaded` - wrap in ``threading.Thread``. +* `threaded` is alias for `Threaded`. +* `AsyncIOTask` - wrap in ``asyncio.Task``. Uses the same API, as `ThreadPooled`. +* `asynciotask` is alias for `AsyncIOTask`. + +%prep +%autosetup -n threaded-4.1.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-threaded -f filelist.lst +%dir %{python3_sitearch}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot - 4.1.0-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..577e373 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +70ebe82dadba967080756b8cf7def623 threaded-4.1.0.tar.gz -- cgit v1.2.3