- Update to 2.0.1:

* Python 3.11: Fix a memory leak. See issue 328 and gevent issue 1924.
- 2.0.0.post0 (2022-11-03)
   * Add Programming Language :: Python :: 3.11 to the PyPI classifier
     metadata.
- 2.0.0 (2022-10-31)
   * Nothing changed yet.
- 2.0.0rc5 (2022-10-31)
   * Linux: Fix another group of rare crashes that could occur when shutting
     down an interpeter running multiple threads. See issue 325.
- 2.0.0rc4 (2022-10-30)
   * Linux: Fix a rare crash that could occur when shutting down an interpreter
     running multiple threads, when some of those threads are in greenlets
     making calls to functions that release the GIL.
- 2.0.0rc3 (2022-10-29)
   * Python 2: Fix a crash that could occur when raising an old-style instance
     object.
- 2.0.0rc2 (2022-10-28)
   * Workaround a CPython 3.8 bug that could cause the interpreter to crash
     during an early phase of shutdown with the message "Fatal Python error:
     Python memory allocator called without holding the GI." This only impacted
     CPython 3.8a3 through CPython 3.9a5; the fix is only applied to CPython
     3.8 releases (please don't use an early alpha release of CPython 3.9).
- 2.0.0rc1 (2022-10-27)
   * Deal gracefully with greenlet switches that occur while deferred
     deallocation of objects is happening using CPython's "trash can"
     mechanism. Previously, if a large nested container held items that
     switched greenlets during delayed deallocation, and that second greenlet
     also invoked the trash can, CPython's internal state could become corrupt.
     This was visible as an assertion error in debug builds. Now, the relevant

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-greenlet?expand=0&rev=62
This commit is contained in:
Daniel Garcia 2023-01-04 11:25:57 +00:00 committed by Git OBS Bridge
parent d9107d3581
commit 7b7c2f8345
4 changed files with 92 additions and 7 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bcb6c6dd1d6be6d38d6db283747d07fda089ff8c559a835236560a4410340455
size 91624

3
greenlet-2.0.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67
size 163824

View File

@ -1,3 +1,86 @@
-------------------------------------------------------------------
Wed Jan 4 10:59:48 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>
- Update to 2.0.1:
* Python 3.11: Fix a memory leak. See issue 328 and gevent issue 1924.
- 2.0.0.post0 (2022-11-03)
* Add Programming Language :: Python :: 3.11 to the PyPI classifier
metadata.
- 2.0.0 (2022-10-31)
* Nothing changed yet.
- 2.0.0rc5 (2022-10-31)
* Linux: Fix another group of rare crashes that could occur when shutting
down an interpeter running multiple threads. See issue 325.
- 2.0.0rc4 (2022-10-30)
* Linux: Fix a rare crash that could occur when shutting down an interpreter
running multiple threads, when some of those threads are in greenlets
making calls to functions that release the GIL.
- 2.0.0rc3 (2022-10-29)
* Python 2: Fix a crash that could occur when raising an old-style instance
object.
- 2.0.0rc2 (2022-10-28)
* Workaround a CPython 3.8 bug that could cause the interpreter to crash
during an early phase of shutdown with the message "Fatal Python error:
Python memory allocator called without holding the GI." This only impacted
CPython 3.8a3 through CPython 3.9a5; the fix is only applied to CPython
3.8 releases (please don't use an early alpha release of CPython 3.9).
- 2.0.0rc1 (2022-10-27)
* Deal gracefully with greenlet switches that occur while deferred
deallocation of objects is happening using CPython's "trash can"
mechanism. Previously, if a large nested container held items that
switched greenlets during delayed deallocation, and that second greenlet
also invoked the trash can, CPython's internal state could become corrupt.
This was visible as an assertion error in debug builds. Now, the relevant
internal state is saved and restored during greenlet switches. See also
gevent issue 1909.
* Rename the C API function PyGreenlet_GET_PARENT to PyGreenlet_GetParent
for consistency. The old name remains available as a deprecated alias.
- 2.0.0a2 (2022-03-24)
* Fix a crash on older versions of the Windows C runtime when an unhandled
C++ exception was thrown inside a greenlet by another native extension.
This is a bug in that extension, and the interpreter will still abort, but
at least it does so deliberately. Thanks to Kirill Smelkov. See PR 286.
* Musllinux wheels for aarch64 are now built, tested, and uploaded to PyPI.
Thanks to Alexander Piskun.
* This version of greenlet is known to compile and pass tests on CPython
3.11.0a6. Earlier 3.11 releases will not work; later releases may or may
not work. See PR 294. Special thanks to Victor Stinner, Brandt Bucher and
the CPython developers.
- 2.0.0a1 (2022-01-20)
* Add experimental, untested support for 64-bit Windows on ARM using MSVC.
See PR 271.
* Drop support for very old versions of GCC and MSVC.
Compilation now requires a compiler that either supports C++11 or has some
other intrinsic way to create thread local variables; for older GCC, clang
and SunStudio we use __thread, while for older MSVC we use
__declspec(thread).
* Wheels compatible with the musllinux specification are built, tested, and
uploaded to PyPI for x86_64. (This was retroactively done for version
1.1.2 as well.)
* This version of greenlet is known to compile and pass tests on CPython
3.11.0a4. Earlier or later 3.11 releases may or may not work. See PR 280.
Special thanks to Brandt Bucher and the CPython developers.
* Fix several leaks that could occur when using greenlets from multiple
threads. For example, it is no longer necessary to call getcurrent()
before exiting a thread to allow its main greenlet to be cleaned up. See
issue 252.
* Fix the C API PyGreenlet_Throw to perform the same error checking that the
Python API greenlet.throw() does. Previously, it did no error checking.
* Fix C++ exception handling on 32-bit Windows. This might have
ramifications if you embed Python in your application and also use SEH on
32-bit windows, or if you embed Python in a C++ application. Please
contact the maintainers if you have problems in this area.
* In general, C++ exception handling is expected to be better on most
platforms. This work is ongoing.
* The repr of some greenlets has changed. In particular, if the greenlet
object was running in a thread that has exited, the repr now indicates
that. NOTE: The repr of a greenlet is not part of the API and should not
be relied upon by production code. It is likely to differ in other
implementations such as PyPy.
* Main greenlets from threads that have exited are now marked as dead.
- 1.1.3.post0 (2022-10-10)
* Add musllinux (Alpine) binary wheels.
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Sep 12 20:13:22 UTC 2022 - Dirk Müller <dmueller@suse.com> Mon Sep 12 20:13:22 UTC 2022 - Dirk Müller <dmueller@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file for package python-greenlet # spec file for package python-greenlet
# #
# Copyright (c) 2022 SUSE LLC # Copyright (c) 2023 SUSE LLC
# Copyright (c) 2010 B1 Systems GmbH, Vohburg, Germany. # Copyright (c) 2010 B1 Systems GmbH, Vohburg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
@ -17,9 +17,8 @@
# #
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-greenlet Name: python-greenlet
Version: 1.1.3 Version: 2.0.1
Release: 0 Release: 0
Summary: Lightweight in-process concurrent programming Summary: Lightweight in-process concurrent programming
License: MIT License: MIT
@ -28,6 +27,8 @@ URL: https://github.com/python-greenlet/greenlet
Source0: https://files.pythonhosted.org/packages/source/g/greenlet/greenlet-%{version}.tar.gz Source0: https://files.pythonhosted.org/packages/source/g/greenlet/greenlet-%{version}.tar.gz
Source9: python-greenlet-rpmlintrc Source9: python-greenlet-rpmlintrc
BuildRequires: %{python_module devel} BuildRequires: %{python_module devel}
BuildRequires: %{python_module objgraph}
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
BuildRequires: c++_compiler BuildRequires: c++_compiler
BuildRequires: fdupes BuildRequires: fdupes
@ -72,7 +73,8 @@ export CFLAGS="%{optflags} -fno-tree-dominator-opts -fno-strict-aliasing"
%doc AUTHORS CHANGES.rst README.rst %doc AUTHORS CHANGES.rst README.rst
%doc docs/_build/html/ %doc docs/_build/html/
%license LICENSE* %license LICENSE*
%{python_sitearch}/greenlet* %{python_sitearch}/greenlet
%{python_sitearch}/greenlet-%{version}*-info
%files %{python_files devel} %files %{python_files devel}
%doc AUTHORS %doc AUTHORS