Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

close_loop coroutine instantiated but never awaited in (old?) asyncio loop integration

Offen
#1,260 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
python
Bereich
backend

Rechercherichtung

Beginne in ipykernel/eventloops.py ungefähr bei Zeile 455 und untersuche die Integration von %gui asyncio, einschließlich der Frage, wie close_loop aufgerufen wird. Prüfe, ob dieser Pfad noch unterstützt wird und ob sich das Problem mit der nicht abgewarteten Coroutine reproduzieren lässt. Als erledigt gilt die Aufgabe, wenn das unterstützte Verhalten eindeutig festgelegt ist und das Problem behoben oder der veraltete Pfad sauber als veraltet gekennzeichnet wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

I was trawling through the source code and I spotted what looks to me like a possible bug here:
https://github.com/ipython/ipykernel/blob/d4a8703593cbe5d82bc955d68543dc623f5b4510/ipykernel/eventloops.py#L455

This instantiates a coroutine that never gets awaited. Calling an async def function just returns a coroutine object and does not start evaluating the function until the coroutine is started.

Additional poking around makes it look like asyncio loop integration here is actually semi-dead code from an era when the tornado event loop and asynio event loop where not the same event loop (tornado < 5?). Seems like this should be cleaned up, as my read is this old asyncio loop integration is not being maintained. Maybe a deprecation warning should be displayed if anyone tries to use %gui asyncio or something?

Vorherrschende Sprache
Python
Sterne
734
Forks
412
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
13

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus ipython/ipykernel

Alle Issues in ipython/ipykernel

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.