aa60515d3b
Accepting request 1276883 from devel:languages:python
Ana Guerrero2025-05-13 18:12:39 +00:00
1d7cb5e335
- Update to 3.2.2 * Make greenlet build and run on Python 3.14 beta 1. It will not run on earlier versions of 3.14; it should run on subsequent versions. See PR 445.
Nico Krapp2025-05-12 14:29:06 +00:00
c3f8155beb
Accepting request 1276832 from home:glaubitz:branches:devel:languages:python
Nico Krapp2025-05-12 14:29:06 +00:00
f3d31a8cd0
- Update to 3.2.1 * Fix a crash regression for Riscv64. See issue 443. - from version 3.2.0 * Remove support for Python 3.7 and 3.8. * Add untested, community supported implementation for RiscV 32. See PR 438. * Make greenlet build and run on Python 3.14a7. It will not build on earlier 3.14 alpha releases, and may not build on later 3.14 releases. * Packaging: Use PEP 639 license expressions and include license files.
Markéta Machová2025-04-29 10:26:45 +00:00
9ee6d02a5f
Accepting request 1273371 from home:glaubitz:branches:devel:languages:python
Markéta Machová2025-04-29 10:26:45 +00:00
bf998562ec
Accepting request 1204154 from devel:languages:python
Ana Guerrero2024-09-29 16:09:25 +00:00
57c79461ec
Accepting request 1204154 from devel:languages:python
Ana Guerrero2024-09-29 16:09:25 +00:00
bb2c18eb4d
Accepting request 1204129 from home:ecsos:python
Markéta Machová2024-09-27 11:42:24 +00:00
3932fde8ad
- Update to 3.1.1 * Fix crashes on 32-bit PPC Linux. Note that there is no CI for this, and support is best effort; there may be other issues lurking. * Remove unnecessary logging sometimes during interpreter shutdown. * Fix some crashes on 32-bit PPC MacOS. This is a very old platform, and is only known to be tested on beta versions of an operating system that was never released, using the GCC 14 only provided by MacPorts; it may or may not work on the final MacOS X release that supported 32-bit PowerPC. It has the known issue of leaking memory when greenlets are used in multiple threads. Help debugging this would be appreciated.
Dirk Mueller2024-09-27 07:45:54 +00:00
534504ee98
Accepting request 1203895 from home:glaubitz:branches:devel:languages:python
Dirk Mueller2024-09-27 07:45:54 +00:00
30b70de50d
Accepting request 1199963 from devel:languages:python
Ana Guerrero2024-09-12 14:53:56 +00:00
b0cf80e27c
Accepting request 1199963 from devel:languages:python
Ana Guerrero2024-09-12 14:53:56 +00:00
81777f01f4
Accepting request 1199931 from home:glaubitz:branches:devel:languages:python
Markéta Machová2024-09-11 06:17:11 +00:00
93694b5ddb
Accepting request 1199931 from home:glaubitz:branches:devel:languages:python
Markéta Machová2024-09-11 06:17:11 +00:00
25d3f2776e
Accepting request 1199669 from devel:languages:python
Ana Guerrero2024-09-10 19:12:27 +00:00
bb8b8b941a
Accepting request 1199669 from devel:languages:python
Ana Guerrero2024-09-10 19:12:27 +00:00
1196ca397c
- Cherry-pick upstream patch to add support for Python 3.13 * port-to-python313.patch
Markéta Machová2024-09-09 10:56:04 +00:00
be6f1ab781
Accepting request 1199647 from home:glaubitz:branches:devel:languages:python
Markéta Machová2024-09-09 10:56:04 +00:00
9fbf3594c4
Accepting request 1138145 from devel:languages:python
Ana Guerrero2024-01-12 22:44:40 +00:00
d692d770ef
Accepting request 1138145 from devel:languages:python
Ana Guerrero2024-01-12 22:44:40 +00:00
f649e6bd60
Accepting request 1138007 from home:bnavigator:branches:devel:languages:python
Markéta Machová2024-01-11 15:12:32 +00:00
91b7cf6ff0
Accepting request 1138007 from home:bnavigator:branches:devel:languages:python
Markéta Machová2024-01-11 15:12:32 +00:00
8f9402fcc8
Accepting request 1136486 from devel:languages:python
Ana Guerrero2024-01-09 19:48:27 +00:00
d1d2d8a0c8
Accepting request 1136486 from devel:languages:python
Ana Guerrero2024-01-09 19:48:27 +00:00
a5ca70a2ac
Accepting request 1133678 from devel:languages:python
Ana Guerrero2023-12-17 20:29:07 +00:00
3630ab40c6
Accepting request 1133678 from devel:languages:python
Ana Guerrero2023-12-17 20:29:07 +00:00
08a518ef1d
- update to 3.0.2: * Packaging: Add a minimal `pyproject.toml` to sdists. * Packaging: Various updates to macOS wheels. * Fix a test case on Arm32. Note that this is not a supported platform (there is no CI for it) and support is best effort;
Dirk Mueller2023-12-17 01:46:08 +00:00
25aa6d650a
- update to 3.0.2: * Packaging: Add a minimal `pyproject.toml` to sdists. * Packaging: Various updates to macOS wheels. * Fix a test case on Arm32. Note that this is not a supported platform (there is no CI for it) and support is best effort;
Dirk Mueller2023-12-17 01:46:08 +00:00
0b57f920b9
Accepting request 1129185 from devel:languages:python
Ana Guerrero2023-11-28 21:18:35 +00:00
4bd7d84698
Accepting request 1129185 from devel:languages:python
Ana Guerrero2023-11-28 21:18:35 +00:00
4b955fc182
- update to 3.0.1: * Fix a potential crash on Python 3.8 at interpreter shutdown time. This was a regression from earlier 3.0.x releases.
Dirk Mueller2023-11-27 15:46:51 +00:00
0e816e1fb8
- update to 3.0.1: * Fix a potential crash on Python 3.8 at interpreter shutdown time. This was a regression from earlier 3.0.x releases.
Dirk Mueller2023-11-27 15:46:51 +00:00
a3e20d620e
Accepting request 1115111 from devel:languages:python
Ana Guerrero2023-10-05 18:02:47 +00:00
d2934cbcb1
Accepting request 1115111 from devel:languages:python
Ana Guerrero2023-10-05 18:02:47 +00:00
1667d27fdb
- Update to 3.0.0: * No changes from 3.0rc3 aside from the version number.
Daniel Garcia2023-10-04 06:45:32 +00:00
6657a54aa0
- Update to 3.0.0: * No changes from 3.0rc3 aside from the version number.
Daniel Garcia2023-10-04 06:45:32 +00:00
bf5000bb93
Accepting request 1113760 from devel:languages:python
Ana Guerrero2023-09-29 19:13:07 +00:00
d862fd64e4
Accepting request 1113760 from devel:languages:python
Ana Guerrero2023-09-29 19:13:07 +00:00
682db7c4ad
- update to 3.0.0~rc3: * Fix an intermittent error during process termination on some platforms (GCC/Linux/libstdc++). * Fix some potential bugs (assertion failures and memory leaks) in previously-untested error handling code. In some cases, this means that the process will execute a controlled `abort() after severe trouble when previously the process might have continued for some time with a corrupt state. It is unlikely those errors occurred in practice. * Fix some assertion errors and potential bugs with re-entrant switches. * Fix a potential crash when certain compilers compile greenlet with high levels of optimization. The symptom would be that switching to a greenlet for the first time immediately crashes. * Fix a potential crash when the callable object passed to the greenlet constructor (or set as the greenlet.run attribute) has a destructor attached to it that switches. Typically, triggering this issue would require an unlikely subclass of greenlet.greenlet. * Python 3.11+: Fix rare switching errors that could occur when a garbage collection was triggered during the middle of a switch, and Python-level code in __del__ or weakref callbacks switched to a different greenlet and ultimately switched back to the original greenlet. This often manifested as a SystemError: "switch returned NULL without an exception set." * Python 3.12: Fix walking the frame stack of suspended greenlets. Previously accessing glet.gr_frame.f_back would crash due to changes in CPython's undocumented internal frame handling * Make the platform-specific low-level C/assembly snippets stop using the `register` storage class. Newer versions of standards remove
Dirk Mueller2023-09-19 22:06:34 +00:00
547c45f901
- update to 3.0.0~rc3: * Fix an intermittent error during process termination on some platforms (GCC/Linux/libstdc++). * Fix some potential bugs (assertion failures and memory leaks) in previously-untested error handling code. In some cases, this means that the process will execute a controlled `abort() after severe trouble when previously the process might have continued for some time with a corrupt state. It is unlikely those errors occurred in practice. * Fix some assertion errors and potential bugs with re-entrant switches. * Fix a potential crash when certain compilers compile greenlet with high levels of optimization. The symptom would be that switching to a greenlet for the first time immediately crashes. * Fix a potential crash when the callable object passed to the greenlet constructor (or set as the greenlet.run attribute) has a destructor attached to it that switches. Typically, triggering this issue would require an unlikely subclass of greenlet.greenlet. * Python 3.11+: Fix rare switching errors that could occur when a garbage collection was triggered during the middle of a switch, and Python-level code in __del__ or weakref callbacks switched to a different greenlet and ultimately switched back to the original greenlet. This often manifested as a SystemError: "switch returned NULL without an exception set." * Python 3.12: Fix walking the frame stack of suspended greenlets. Previously accessing glet.gr_frame.f_back would crash due to changes in CPython's undocumented internal frame handling * Make the platform-specific low-level C/assembly snippets stop using the `register` storage class. Newer versions of standards remove
Dirk Mueller2023-09-19 22:06:34 +00:00
1211730c98
- update to 2.0.2: * Fix calling `greenlet.settrace()` with the same tracer object that was currently active. * Various compilation and standards conformance fixes. * 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.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.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.0a1 (2022-01-20) * 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
Dirk Mueller2023-05-04 14:46:15 +00:00
13c08351b1
- update to 2.0.2: * Fix calling `greenlet.settrace()` with the same tracer object that was currently active. * Various compilation and standards conformance fixes. * 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.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.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.0a1 (2022-01-20) * 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
Dirk Mueller2023-05-04 14:46:15 +00:00
2983b265ea
- Add sphinx-6.0.0.patch to make it work with new version of Sphinx.
Daniel Garcia2023-01-05 07:42:04 +00:00
55e047d306
- Add sphinx-6.0.0.patch to make it work with new version of Sphinx.
Daniel Garcia2023-01-05 07:42:04 +00:00
a811b69253
Accepting request 1056122 from devel:languages:python
Daniel Garcia2023-01-05 07:22:36 +00:00
f066a01327
Accepting request 1056122 from devel:languages:python
Daniel Garcia2023-01-05 07:22:36 +00:00
7b7c2f8345
- 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
Daniel Garcia2023-01-04 11:25:57 +00:00
d0f365dbce
- 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
Daniel Garcia2023-01-04 11:25:57 +00:00
0031e4d6b3
- update to 1.1.2: - Fix a potential crash due to a reference counting error when Python subclasses of `greenlet.greenlet were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like getcurrent() before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See issue 251 - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256
Dirk Mueller2021-10-16 19:08:50 +00:00
0b82c5a19a
- update to 1.1.2: - Fix a potential crash due to a reference counting error when Python subclasses of `greenlet.greenlet were deallocated. The crash became more common on Python 3.10; on earlier versions, silent memory corruption could result. - Fix a leak of a list object when the last reference to a greenlet was deleted from some other thread than the one to which it belonged. For this to work correctly, you must call a greenlet API like getcurrent() before the thread owning the greenlet exits: this is a long-standing limitation that can also lead to the leak of a thread's main greenlet if not called; we hope to lift this limitation. Note that in some cases this may also fix leaks of greenlet objects themselves. See issue 251 - Python 3.10: Tracing or profiling into a spawned greenlet didn't work as expected. See `issue 256
Dirk Mueller2021-10-16 19:08:50 +00:00
347d7c3a6a
- update to 1.1.0: * Add support for Python 3.10. Pre-built binary wheels for 3.10 are not currently available for all platforms. The greenlet ABI is different on Python 3.10 from all previous versions, but as 3.10 was never supported before, and the ABI has not changed on other Python versions, this is not considered a reason to change greenlet's major version.
Dirk Mueller2021-06-06 12:38:50 +00:00
813d867d92
- update to 1.1.0: * Add support for Python 3.10. Pre-built binary wheels for 3.10 are not currently available for all platforms. The greenlet ABI is different on Python 3.10 from all previous versions, but as 3.10 was never supported before, and the ABI has not changed on other Python versions, this is not considered a reason to change greenlet's major version.
Dirk Mueller2021-06-06 12:38:50 +00:00
acd5034be6
- update to 1.0.0: * Require setuptools to build from source. * Stop asking setuptools to build both .tar.gz and .zip sdists. PyPI has standardized on .tar.gz for all platforms. * Publish the change log to https://greenlet.readthedocs.ioDirk Mueller2021-02-01 22:26:23 +00:00
5364f73ada
- update to 1.0.0: * Require setuptools to build from source. * Stop asking setuptools to build both .tar.gz and .zip sdists. PyPI has standardized on .tar.gz for all platforms. * Publish the change log to https://greenlet.readthedocs.ioDirk Mueller2021-02-01 22:26:23 +00:00
f027d24c76
- update to 0.4.16: - Support for DEC Alpha architecture - Support for Python 3.9 - Support for Python 3.10a0
Dirk Mueller2020-06-08 19:33:55 +00:00
56b707a9a1
- update to 0.4.16: - Support for DEC Alpha architecture - Support for Python 3.9 - Support for Python 3.10a0
Dirk Mueller2020-06-08 19:33:55 +00:00