Release request: include the socket cancellation FD double-close fix (#740)
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
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.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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.
- Linguagem predominante
- Cython
- Estrelas
- 11.9k
- Forks
- 616
- Merge médio
- 4h 43min
- PRs com merge (30d)
- 3
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de MagicStack/uvloop
-
License not clearAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
MagicStack/uvloop#759 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
MagicStack/uvloop#741 · 2 reações ·
-
`asyncio.get_event_loop` raises error instead of spawning new loop when no loop is running.Talvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
MagicStack/uvloop#702 · 8 comentários · 9 reações ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
MagicStack/uvloop#773 ·
-
UDPTransport.abort() with a queued datagram reports a fatal write error and a resume_writing() AttributeErrorTalvez já em andamento @graingert assumiu há 1 dia. Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 68/100
MagicStack/uvloop#771 ·
Todas as issues de MagicStack/uvloop
Issues semelhantes
-
area:ci bug triage:confirmed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
Cotal-AI/Cotal#2872 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
omacom/try-omarchy#319 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
LearningCircuit/local-deep-research#7206 ·
Mantenedores costumam responder em até 1 dia
-
area: release bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
TMHSDigital/subenum#102 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia