From 90c82818c422c8a4b4f6457e4f87a7aaa2d967a0a7f34e1da5aaaad51a93d882 Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Fri, 15 Aug 2025 02:18:30 +0000 Subject: [PATCH] - Update to 5.1.3: * issue #152: fix crash when scheduling non copy-able functions * issue #101: allow `atexit.register` callbacks on pool shutdown * Fix deadlock with `waitforthreads` function * Fix bug causing threads to crash when using `waitforthreads` function OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Pebble?expand=0&rev=38 --- .gitattributes | 23 ++++++ .gitignore | 1 + Pebble-5.0.7.tar.gz | 3 + Pebble-5.1.0.tar.gz | 3 + pebble-5.1.1.tar.gz | 3 + pebble-5.1.3.tar.gz | 3 + python-Pebble.changes | 187 ++++++++++++++++++++++++++++++++++++++++++ python-Pebble.spec | 64 +++++++++++++++ 8 files changed, 287 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Pebble-5.0.7.tar.gz create mode 100644 Pebble-5.1.0.tar.gz create mode 100644 pebble-5.1.1.tar.gz create mode 100644 pebble-5.1.3.tar.gz create mode 100644 python-Pebble.changes create mode 100644 python-Pebble.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/Pebble-5.0.7.tar.gz b/Pebble-5.0.7.tar.gz new file mode 100644 index 0000000..493da70 --- /dev/null +++ b/Pebble-5.0.7.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2784c147766f06388cea784084b14bec93fdbaa793830f1983155aa330a2a6e4 +size 32054 diff --git a/Pebble-5.1.0.tar.gz b/Pebble-5.1.0.tar.gz new file mode 100644 index 0000000..23ca170 --- /dev/null +++ b/Pebble-5.1.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c30376f1827b21ecec4126ff90e7f22ad5501cac1ff2b32c86ff2601681f932 +size 35060 diff --git a/pebble-5.1.1.tar.gz b/pebble-5.1.1.tar.gz new file mode 100644 index 0000000..3c9f6c3 --- /dev/null +++ b/pebble-5.1.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e91a5b8e48b30b26eaa5391ba2cf65fbb3594fba17b88bc0b3351cf849d0305 +size 38672 diff --git a/pebble-5.1.3.tar.gz b/pebble-5.1.3.tar.gz new file mode 100644 index 0000000..952c7d8 --- /dev/null +++ b/pebble-5.1.3.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fdf00dde4abb09907817114ad8cf822836b6d6cc8f43a3f0ec741be276086e7 +size 39027 diff --git a/python-Pebble.changes b/python-Pebble.changes new file mode 100644 index 0000000..985882c --- /dev/null +++ b/python-Pebble.changes @@ -0,0 +1,187 @@ +------------------------------------------------------------------- +Fri Aug 15 02:17:49 UTC 2025 - Steve Kowalik + +- Update to 5.1.3: + * issue #152: fix crash when scheduling non copy-able functions + * issue #101: allow `atexit.register` callbacks on pool shutdown + * Fix deadlock with `waitforthreads` function + * Fix bug causing threads to crash when using `waitforthreads` + function + +------------------------------------------------------------------- +Wed Apr 23 10:56:25 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 5.1.1 + * issue #146: fix pool hanging on pickle errors. + * issue #147: fix pool hanging when futures are cancelled + while large amount of data is being transferred. +- Adjust upstream source name in spec file +- Allow lower- and uppercase filenames for meta directory +- Switch build system from setuptools to pyproject.toml + * Add python-pip and python-wheel to BuildRequires + * Replace %python_build with %pyproject_wheel + * Replace %python_install with %pyproject_install +- Use Python 3.11 on SLE-15 by default + +------------------------------------------------------------------- +Fri Jan 24 13:34:44 UTC 2025 - Yunus Acar + +- Update to 5.1.0: + * issue #140: expose internal constants to allow changing default + timeouts and polling intervals. + * issue #141: add PID of expired process to ProcessExpired exception. + * Add pool decorators parameter allowing to provide a PebblePool + as executor for the decorated functions. + * issue #137: reset SIGTERM default handler to child processes. + * Include concurrent and asynchronous modules as top-level packages. + * Improve type hinting logic. + * Refactor internal logic: remove code duplication. + +------------------------------------------------------------------- +Fri Mar 22 21:01:33 UTC 2024 - Dirk Müller + +- update to 5.0.7: + * issue #96: handle race condition under different interpreters + * issue #125: handle frozen classes as exceptions + * issue #127: handle unexpected errors when reading from pipe in + process decorators + * issue #128: allow different context from `multiprocessing` ones + +------------------------------------------------------------------- +Wed Dec 27 13:52:06 UTC 2023 - Dirk Müller + +- update to 5.0.6: + * issue #124: handle `BaseException` in pools' workers + +------------------------------------------------------------------- +Sun Dec 10 21:37:30 UTC 2023 - Dirk Müller + +- update to 5.0.5: + * issue #123: do not raise exception when returned from workers + * issue #122: slightly improve type hints + * issue #122: add type hints to decorator functions + +------------------------------------------------------------------- +Tue Nov 15 21:50:22 UTC 2022 - Martin Liška + +- Update to 5.0.3 + * issue #111: reinstate `Pool.schedule` function in place of + `Pool.submit`. + +------------------------------------------------------------------- +Mon Oct 10 11:29:15 UTC 2022 - Martin Liška + +- Update to 5.0.2 + * issue #108: fix build tag enforcing Python 3.6 as minimum + compatible version. + +------------------------------------------------------------------- +Thu Oct 6 07:29:26 UTC 2022 - Martin Liška + +- Update to 5.0.1 + * Improvements: + + issue #105: run callbacks after process termination on timeout or + task cancellation + +------------------------------------------------------------------- +Tue Sep 13 11:09:36 UTC 2022 - Martin Liška + +- Update to 5.0.0 + * Backward incompatible changes: + + issue #93: Python 2 is no longer compatible. Minimum supported + version is now 3.7. + + * Deprecations: + + issue #90: pools `schedule` method is now deprecated, use `submit` + instead. + + * Features: + + issue #90: pools are now compatible with asyncio APIs. + + issue #94: asynchronous function decorators + + issue #102: type hints have been added to all functionalities + + issue #103: support alternative multiprocessing.context + implementations + + * Fixes: + + issue #99: fix deadlock when closing a full pipe on Windows in pool +- Require Python >= 3.7. +- Drop Python 2 support. + +------------------------------------------------------------------- +Tue Aug 16 23:32:48 UTC 2022 - Yogalakshmi Arunachalam + +- Update to 4.6.3 + + issue #84: fix import bug on Windows +- Update to 4.6.2 + * Fixes: + + issue #82: fix issue with poll mechanism in MAC OS Mojave (@sam-harding) + + Fix polling timeout resolution (@sam-harding) + +- Update to 4.6.1 + * Improvements: + + issue #76: allow spawning processes within `ProcessPool` workers + + Few minor improvements + + * Fixes: + + issues #75: fix error when cancelling futures in Python >= 3.8 + + issue #80: fix error when using decorators without @pie notation + + Several minor fixes on MAC OS + + * Tests: + + Add Windows and MAC OS test automation support + +------------------------------------------------------------------- +Thu Jan 14 03:53:26 UTC 2021 - Steve Kowalik + +- Update to 4.6.0 + * Features: + + issue #73: allow passing `multiprocessing.context` object + as `concurrent.process` and `ProcessPool` parameter + * Fixes: + + issues #34, #35: rework Pool termination logic to silence Windows errors + + issue #68: use fully qualified function name in `concurrent.process` + decorator trampoline to handle class inheritance in Windows + + issue #69: correctly propagate the timeout in pool's map method + + issue #64: rework versioning logic + +------------------------------------------------------------------- +Wed May 6 15:47:22 UTC 2020 - Martin Liška + +- Bump to 4.5.2: + - Fix issue #58: handle pool connection teardown in Python 3.8 + +------------------------------------------------------------------- +Mon Apr 20 11:18:48 UTC 2020 - Tomáš Chvátal + +- Fix build without python2 + +------------------------------------------------------------------- +Thu Mar 26 16:16:44 UTC 2020 - Marketa Calabkova + +- update to 4.5.1 + * add daemon parameter to decorator + * travis: add Python 3.8 tests + +------------------------------------------------------------------- +Wed Jan 15 10:59:02 UTC 2020 - Marketa Calabkova + +- update to 4.4.1 + * use poll in channel implementation instead of select + * handle pickling errors in ProcessPool + * add test cases + +------------------------------------------------------------------- +Mon Oct 7 15:00:00 UTC 2019 - Tomáš Chvátal + +- Update to 4.4.0: + * Various doc and test fixes + +------------------------------------------------------------------- +Sat Aug 24 05:59:11 UTC 2019 - Jan Engelhardt + +- Use description from upstream. + +------------------------------------------------------------------- +Sun Aug 11 03:51:46 UTC 2019 - Todd R + +- Initial version diff --git a/python-Pebble.spec b/python-Pebble.spec new file mode 100644 index 0000000..5c882ed --- /dev/null +++ b/python-Pebble.spec @@ -0,0 +1,64 @@ +# +# spec file for package python-Pebble +# +# Copyright (c) 2025 SUSE LLC and contributors +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +Name: python-Pebble +Version: 5.1.3 +Release: 0 +Summary: Threading and multiprocessing eye-candy for Python +License: LGPL-3.0-only +URL: https://github.com/noxdafox/pebble +Source: https://files.pythonhosted.org/packages/source/p/pebble/pebble-%{version}.tar.gz +BuildRequires: %{python_module base >= 3.8} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: git-core +BuildRequires: python-rpm-macros +BuildArch: noarch +# SECTION test requirements +BuildRequires: %{python_module pytest} +# /SECTION +%python_subpackages + +%description +Pebble provides an API to manage threads and processes within an application. +It wraps Python’s standard library threading and multiprocessing objects. + +%prep +%setup -q -n pebble-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +# Seems to actually deadlock +%pytest -k 'not test_pool_deadlock_stop_cancel' + +%files %{python_files} +%doc README.rst +%license LICENSE +%{python_sitelib}/pebble +%{python_sitelib}/[Pp]ebble-%{version}.dist-info + +%changelog