Release request: include the socket cancellation FD double-close fix (#740)
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 25/100
Piste de recherche
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.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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.
- Langage dominant
- Cython
- Étoiles
- 11.9k
- Forks
- 616
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de MagicStack/uvloop
-
License not clearOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
MagicStack/uvloop#759 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
MagicStack/uvloop#741 · 2 réactions ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
MagicStack/uvloop#702 · 8 commentaires · 9 réactions ·
-
Directly constructed subprocess pipe protocols segfault when callbacks use a non-process ownerOuverte
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
MagicStack/uvloop#765 ·
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
MagicStack/uvloop#763 · 1 réaction ·
Toutes les issues de MagicStack/uvloop
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
agilepathway/label-checker#710 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
simp/pupmod-simp-stunnel#173 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Wetzel402/Skylite-UX#112 ·
-
Release notesOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
mieweb/timehuddle#634 ·
Les mainteneurs répondent en général sous 1 jour