Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Using the `--IPKernelApp.trio_loop=True` doesn't appear to set the main loop to use `trio`

Aberta
#1,243 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
42/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
jupyter, python
Domínio
backend, devtools

Direção de pesquisa

Reproduza o comando com --IPKernelApp.trio_loop=True e compare os casos de await de trio e asyncio. Rastreie como o ipykernel lida com a configuração trio_loop e identifique por que trio.sleep está fora de um contexto assíncrono; considera-se concluído quando os awaits de trio funcionarem com a flag e o comportamento observado de asyncio corresponder à semântica pretendida.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

To reproduce:

% ipython --IPKernelApp.trio_loop=True
Python 3.11.6 | packaged by conda-forge | (main, Oct  3 2023, 10:37:07) [Clang 15.0.7 ]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.24.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import trio

In [2]: await trio.sleep(1)
...
RuntimeError: must be called from async context

However the following does work, which is not expected:

% ipython --IPKernelApp.trio_loop=True
Python 3.11.6 | packaged by conda-forge | (main, Oct  3 2023, 10:37:07) [Clang 15.0.7 ]
Type 'copyright', 'credits' or 'license' for more information
IPython 8.24.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import asyncio

In [2]: await asyncio.sleep(1)

In [3]:

I could have missed something obvious though...

Linguagem predominante
Python
Estrelas
734
Forks
412
Merge médio
1d 9h
PRs com merge (30d)
13

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de ipython/ipykernel

Todas as issues de ipython/ipykernel

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.