Python 3.13 Error Walking Stack w/ PYTHONASYNCIODEBUG=1
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- python
- Domínio
- backend, networking
Direção de pesquisa
Comece executando a reprodução fornecida do Docker a partir de Dockerfile.latest com repro.py no Python 3.13 e PYTHONASYNCIODEBUG=1 e, em seguida, compare-a com o ambiente em que a variável não está definida. Rastreie a falha na caminhada da pilha que envolve o gerador assíncrono e os frames C; considera-se concluído quando a reprodução termina com sucesso com o modo de depuração habilitado.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
There appears to be a bug in uvloop for python 3.13 walking the stack when PYTHONASYNCIODEBUG=1 and there are c frames in the stack.
I suspect this is tied to changes in 3.13 with how python handles frames
To Repro:
Python 3.13
uvloop 0.22.1 (also confirmed it happens
run: docker build -f Dockerfile.latest -t crash-test-latest . 2>&1 | tail -3 && echo "---" && docker run --rm crash-test-latest 2>&1; echo "exit: $?"
exits w/ 139
If you go into the dockerfile and set ENV PYTHONASYNCIODEBUG= (instead of 1), exits w/ 0
Dockerfile:
FROM python:3.13-slim
RUN pip install uvloop==0.22.1
ENV PYTHONASYNCIODEBUG=1
COPY repro.py /repro.py
CMD ["python3", "/repro.py"]
Repro.py
import asyncio
import sys
import os
print(f"Python: {sys.version}")
print(f"Platform: {sys.platform}")
print(f"PYTHONASYNCIODEBUG: {os.environ.get('PYTHONASYNCIODEBUG', '<not set>')}")
import uvloop
print(f"uvloop: {uvloop.__version__}")
async def gen():
yield 1
yield 2
async def main():
x = gen()
await x.__anext__()
# x goes out of scope on function exit
uvloop.install()
asyncio.run(main())
print("NO CRASH")
- Linguagem predominante
- Cython
- Estrelas
- 11.9k
- Forks
- 615
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
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 clear Aberta
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 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
MagicStack/uvloop#702 · 8 comentários · 9 reações ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 68/100
MagicStack/uvloop#763 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 68/100
MagicStack/uvloop#760 ·
Todas as issues de MagicStack/uvloop
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
crossplane/crossplane#7859 ·
-
bot:ai-assisted component:compact-js status:untriaged
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
midnightntwrk/midnight-sdk#403 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
nightscout/nocturne#1379 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
octobercms/october#6130 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
ClickHouse/clickhouse-connect#1057 ·