-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Labels
hmr-daemonRelated to the `hmr-daemon` packageRelated to the `hmr-daemon` package
Description
I happened to discover this issue when using `mcp` CLI, which is weird:
> mcp
Exception in thread hmr-daemon:
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "D:\dev\m\.venv\Scripts\mcp.exe\__main__.py", line 4, in <module>
from mcp.cli import app
File "D:\dev\m\.venv\Lib\site-packages\mcp\__init__.py", line 1, in <module>
from .client.session import ClientSession
File "D:\dev\m\.venv\Lib\site-packages\mcp\client\session.py", line 5, in <module>
import anyio.lowlevel
File "D:\dev\m\.venv\Lib\site-packages\anyio\lowlevel.py", line 9, in <module>
from .abc import AsyncBackend
File "D:\dev\m\.venv\Lib\site-packages\anyio\abc\__init__.py", line 43, in <module>
from .._core._synchronization import (
...<5 lines>...
)
File "D:\dev\m\.venv\Lib\site-packages\anyio\_core\_synchronization.py", line 12, in <module>
from ..lowlevel import checkpoint_if_cancelled
ImportError: cannot import name 'checkpoint_if_cancelled' from partially initialized module 'anyio.lowlevel' (most likely due to a circular import) (D:\dev\m\.venv\Lib\site-packages\anyio\lowlevel.py)Here is a minimal reproducible script:
from time import sleep
sleep(0.01)
import anyio.lowlevel # noqa: E402, F401Traceback:
> python bug.py
Exception in thread hmr-daemon:
Traceback (most recent call last):
File "D:\dev\m\bug.py", line 5, in <module>
import anyio.lowlevel # noqa: E402, F401
^^^^^^^^^^^^^^^^^^^^^
File "D:\dev\m\.venv\Lib\site-packages\anyio\lowlevel.py", line 9, in <module>
from .abc import AsyncBackend
File "D:\dev\m\.venv\Lib\site-packages\anyio\abc\__init__.py", line 43, in <module>
from .._core._synchronization import (
...<5 lines>...
)
File "D:\dev\m\.venv\Lib\site-packages\anyio\_core\_synchronization.py", line 12, in <module>
from ..lowlevel import checkpoint_if_cancelled
ImportError: cannot import name 'checkpoint_if_cancelled' from partially initialized module 'anyio.lowlevel' (most likely due to a circular import) (D:\dev\m\.venv\Lib\site-packages\anyio\lowlevel.py)Metadata
Metadata
Assignees
Labels
hmr-daemonRelated to the `hmr-daemon` packageRelated to the `hmr-daemon` package