graingert · GitHub

Bug report

Bug description:

import asyncio
import gc
import objgraph
import weakref
async def amain():
    exc = None
    try:
        await asyncio.open_connection(
            host="localhost", port=8080, happy_eyeballs_delay=0.25
        )
    except* OSError as excs:
        exc = excs.exceptions[0]
    assert exc is not None
    print(gc.get_referrers(exc))
asyncio.run(amain())

should be empty but you get a bunch of exceptions lists:

[[ConnectionRefusedError(111, "Connect call failed ('127.0.0.1', 8080)")], [ConnectionRefusedError(111, "Connect call failed ('127.0.0.1', 8080)")]]

CPython versions tested on:

3.12, 3.13, CPython main branch

Operating systems tested on:

Linux

Linked PRs

Read the original on github.com ↗