NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2504 most downloaded on PyPI
Highly concurrent networking library
Last release 1 months ago
14 Aug 2026
Ships fairly regularly
a new release about every 6 weeks
Nearly every release is documented
notes for 58 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
18 years old
70 releases · first in 2008
Related to #1103
Related to #1103
Update changelog for version 0.41.1
One column per quarter.
Update changelog for version 0.41.0
Update changelog for version 0.41.0 (#1088)
Signed-off-by: Hervé Beraud hberaud@redhat.com
Related to #1073
Signed-off-by: Hervé Beraud hberaud@redhat.com
Related to #1063
Related to #1063
Related to #1059
Related to #1059
Related to #1051
Related to #1051
Related to #1039
Related to #1039
Related to #1028
Related to #1028
Related to #1016
Related to #1016
[fix] fix the monkey patching with the asyncio hub
[fix] Python 3.13: Use greenthread's dead state where possible
[fix] wsgi: server MUST NOT send Content-Length/Transfer-Encoding header in response with a status code of 1xx, 204 or (2xx to CONNECT request)
[fix] os.read/write waits until file descriptor is ready. https://github.com/eventlet/eventlet/pull/975
[fix] eventlet.websocket is not always used from eventlet.wsgi, so do not assume eventlet.set_idle exists https://github.com/eventlet/eventlet/pull/94
[fix] Make sure asyncio hub doesn't use greendns for asyncio DNS APIs https://github.com/eventlet/eventlet/pull/938
[security] Dnspython 2.6.1 - Address DoS via the Tudoor mechanism (CVE-2023-29483) https://github.com/eventlet/eventlet/pull/916
[fix] Do not allow failed patching to stop execution https://github.com/eventlet/eventlet/pull/907
[removal] Remove deprecated CGIHTTPServer and SimpleHTTPServer https://github.com/eventlet/eventlet/pull/881
async def context https://github.com/eventlet/eventlet/pull/889Fix deprecation warning on ssl.PROTOCOL_TLS https://github.com/eventlet/eventlet/pull/872
Allowing inheritance of GreenSSLSocket without overriding the __new_ method https://github.com/eventlet/eventlet/pull/796
__version__ removal https://github.com/eventlet/eventlet/pull/859[bug] Fix memory leak in greendns https://github.com/eventlet/eventlet/issues/810
dnspython 2.3.0 raised AttributeError: module 'dns.rdtypes' has no attribute 'ANY' https://github.com/eventlet/eventlet/issues/781
greenio: GreenPipe/fdopen() with 'a' in mode raised io.UnsupportedOperation: File or stream is not writable https://github.com/eventlet/eventlet/pull/
Prevent deadlock on logging._lock https://github.com/eventlet/eventlet/issues/742
green.thread: unlocked Lock().release() should raise exception, returned True https://github.com/eventlet/eventlet/issues/697
greendns: compatibility with dnspython v2 https://github.com/eventlet/eventlet/pull/722
ciphers https://github.com/eventlet/eventlet/pull/718ssl: py3.6 using client certificates raised ValueError: check_hostname needs server_hostname argument https://github.com/eventlet/eventlet/pull/705
IMPORTANT: websocket: Limit maximum uncompressed frame length to 8MiB https://github.com/eventlet/eventlet/security/advisories/GHSA-9p9m-jm8w-94p2
Use _imp instead of deprecated imp
greendns: patch ssl to fix RecursionError on SSLContext.options.__set__ https://github.com/eventlet/eventlet/issues/677
patcher: built-in open() did not accept kwargs https://github.com/eventlet/eventlet/issues/683
pyopenssl tsafe module was deprecated and removed in v20.0.0
patcher: [py27] recursion error in pytest/python2.7 installing register_at_fork https://github.com/eventlet/eventlet/issues/660 patcher: monkey_patch(
patcher: [py27] recursion error in pytest/python2.7 installing register_at_fork https://github.com/eventlet/eventlet/issues/660
patcher: monkey_patch(builtins=True) failed on py3 because file class is gone https://github.com/eventlet/eventlet/issues/541
don't crash on PyPy 7.0.0 https://github.com/eventlet/eventlet/pull/547
Only install monotonic on python2 https://github.com/eventlet/eventlet/pull/583
ssl: context wrapped listener fails accept() https://github.com/eventlet/eventlet/issues/651
Sorry, Eventlet was broken on Windows for versions 0.27-0.28 patcher: no os.register_at_fork on Windows
Always remove the right listener from the hub https://github.com/eventlet/eventlet/pull/645
patcher: Clean up threading book-keeping at fork when monkey-patched
pin dnspython <2.0.0 https://github.com/eventlet/eventlet/issues/619
Fix compatibility with SSLContext usage >= Python 3.7
green.ssl: redundant set_nonblocking() caused SSLWantReadError
wsgi (tests): Stop using deprecated cgi.parse_qs() to support Python 3.8; Thanks to Miro Hrončok
open for pathlib on py 3.7; Thanks to David Szottenwsgi: Only send 100 Continue response if no response has been sent yet; Thanks to Tim Burke
greendns: don't contact nameservers if one entry is returned from hosts file; Thanks to Daniel Alvarez
greendns: Fix infinite loop when UDP source address mismatch; Thanks to Lon Hohberger
green.threading: current_thread() did not see new monkey-patched threads; Thanks to Jake Tesler
Fixed issue installing excess enum34 on Python3.4+ (rebuild with updated setuptools)
dns: reading /etc/hosts raised DeprecationWarning for universal lines on Python 3.4+; Thanks to Chris Kerr
New timeout error API: .is_timeout=True on exception object It's now easy to test if network error is transient and retry is appropriate. Please sprea
dns: try unqualified queries as top level
IMPORTANT: removed select.poll() function
ssl: IMPORTANT DoS FIX do_handshake_connect=False in server accept(); Thanks to Garth Mollett
loggingwsgi: change TCP_NODELAY to TCP_QUICKACK, ignore socket error when not available
wsgi: Use buffered writes - fixes partial socket.send without custom writelines(); Github issue #295
wsgi: Fix data loss on partial writes (socket.send); Thanks to Jakub Stasiak
ssl: incorrect initalization of default context; Thanks to stuart-mclaren
Wheel build 0.16.0 incorrectly shipped removed module eventlet.util.
greenio: fixed memory leak, introduced in 0.15.1; Thanks to Michael Kerrin, Tushar Gohad
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →