Skip to content

Commit

Permalink
Preparing release 24.2.1
Browse files Browse the repository at this point in the history
  • Loading branch information
jamadden committed Feb 14, 2024
1 parent 60b55d0 commit 2db2fa1
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 30 deletions.
41 changes: 41 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,47 @@

.. towncrier release notes start
24.2.1 (2024-02-14)
===================


Bugfixes
--------

- Add support for Python patch releases 3.11.8 and 3.12.2, which changed
internal details of threading.

As a result of these changes, note that it is no longer possible to
change the ``__class__`` of a ``gevent.threading._DummyThread``
object on those versions.

See :issue:`2020`.

Other
-----

Other updates for compatibility with the standard library include:

- Errors raised from ``subprocess.Popen`` may not have a filename set.
- ``SSLSocket.recv_into`` and ``SSLSocket.read`` no longer require the
buffer to implement ``len`` and now work with buffers whose size is
not 1.
- gh-108310: Fix CVE-2023-40217: Check for & avoid the ssl pre-close
flaw.

In addition:

- Drop ``setuptools`` to a soft test dependency.
- Drop support for very old versions of CFFI.
- Update bundled c-ares from 1.19.1 to 1.26.0.
- Locks created by gevent, but acquired from multiple different
threads (not recommended), no longer spin to implement timeouts
and interruptible blocking. Instead, they use the native
functionality of the Python 3 lock. This may improve some scenarios.
See :issue:`2013`.



23.9.1 (2023-09-12)
===================

Expand Down
26 changes: 0 additions & 26 deletions docs/changes/2020.bugfix

This file was deleted.

2 changes: 1 addition & 1 deletion src/gevent/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#: Use ``pkg_resources.parse_version(__version__)`` or
#: ``packaging.version.Version(__version__)`` to get a machine-usable
#: value.
__version__ = '23.9.2.dev0'
__version__ = '24.2.1'


__all__ = [
Expand Down
2 changes: 1 addition & 1 deletion src/gevent/_semaphore.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ class Semaphore(AbstractLinkable): # pylint:disable=undefined-variable
Improved support for multi-threaded usage. When multi-threaded usage is detected,
instances will no longer create the thread's hub if it's not present.
.. versionchanged:: NEXT
.. versionchanged:: 24.2.1
Uses Python 3 native lock timeouts for cross-thread operations instead
of spinning.
"""
Expand Down
4 changes: 2 additions & 2 deletions src/gevent/ssl.py
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ def read(self, nbytes=2014, buffer=None):
"""Read up to LEN bytes and return them.
Return zero-length string on EOF.
.. versionchanged:: NEXT
.. versionchanged:: 24.2.1
No longer requires a non-None *buffer* to implement ``len()``.
This is a backport from 3.11.8.
"""
Expand Down Expand Up @@ -607,7 +607,7 @@ def recv(self, buflen=1024, flags=0):

def recv_into(self, buffer, nbytes=None, flags=0):
"""
.. versionchanged:: NEXT
.. versionchanged:: 24.2.1
No longer requires a non-None *buffer* to implement ``len()``.
This is a backport from 3.11.8.
"""
Expand Down

0 comments on commit 2db2fa1

Please sign in to comment.