Release request: include the socket cancellation FD double-close fix (#740)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
Research direction
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.
Written by the indexing model from the issue text.
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.
- Dominant language
- Cython
- Stars
- 11.9k
- Forks
- 615
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from MagicStack/uvloop
-
License not clear Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
MagicStack/uvloop#759 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
MagicStack/uvloop#741 · 2 reactions ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
MagicStack/uvloop#702 · 8 comments · 9 reactions ·
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
MagicStack/uvloop#765 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
MagicStack/uvloop#763 ·
All issues in MagicStack/uvloop
Similar issues
-
comp: build/pipeline type: bug version: current (v17+)
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
angular/angularfire#3766 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Help-Wanted Needs-Triage Package-Metadata
Difficulty 1/5 Under an hour Newbie friendliness 90/100
microsoft/winget-pkgs#439144 · 2 comments ·
-
The release versioning rule is nowhere written down — it has to be derived from the tag history Openpriority:p3
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Hochfrequenz/adtler#168 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 68/100
FasterXML/jackson-dataformats-text#741 · 1 comment ·