Release request: include the socket cancellation FD double-close fix (#740)
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 25/100
Rechercherichtung
Review the merged fix in #740 and commit dc680eb20c526d8babacaf4751a12f51431ea246, then inspect the project's release and PyPI wheel publication process. Done means publishing a patch release on GitHub and PyPI that includes the socket cancellation fix and its TCP and Unix socket regression tests.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Thanks for merging #740.
Could you publish a release, including PyPI wheels, containing the socket cancellation / FD double-close fix in commit dc680eb20c526d8babacaf4751a12f51431ea246?
As of September 22, 2026, the latest release on both GitHub and PyPI is still 0.22.1, which does not contain this fix. A normal package upgrade therefore cannot pick it up yet.
The existing upstream report and patch describe a correctness issue: when socket adoption through create_connection(sock=...) or create_unix_connection(sock=...) is cancelled or raises, the Python socket can retain a descriptor already closed by libuv. If that descriptor is reused, subsequent cleanup can close an unrelated connection. The merged patch detaches the socket on the error path and includes TCP and Unix socket regression tests.
A published release would let downstream applications adopt the fix without maintaining custom builds or switching event-loop implementations.
Would a patch release containing #740 be feasible? If a release is already planned, an approximate timeline would be helpful.
Thank you for maintaining uvloop.
- Vorherrschende Sprache
- Cython
- Sterne
- 11.9k
- Forks
- 616
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus MagicStack/uvloop
-
License not clearOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
MagicStack/uvloop#759 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
MagicStack/uvloop#741 · 2 Reaktionen ·
-
`asyncio.get_event_loop` raises error instead of spawning new loop when no loop is running.Evtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
MagicStack/uvloop#702 · 8 Kommentare · 9 Reaktionen ·
-
Directly constructed subprocess pipe protocols segfault when callbacks use a non-process ownerEvtl. vergeben @gyanu2507 hat das vor 12 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 52/100
MagicStack/uvloop#765 ·
-
`connect_read_pipe` double-closes the underlying fd, possibly closing an unrelated fdEvtl. vergeben @jaideeppyne hat das vor 18 Tagen übernommen. Offenbug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
MagicStack/uvloop#763 · 1 Reaktion ·
Alle Issues in MagicStack/uvloop
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
ProtonMail/WebClients#546 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
szTheory/exifcleaner#383 ·
Maintainer antworten meist innerhalb von 1 Tag
-
namespace operations
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
EclipseFdn/open-vsx.org#13731 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 90/100