Open
Description
Bug Report
mypy seems to assume that import importlib
brings in the relevant submodules (though I can't see anything in typeshed that would indicate this?) even though it does not
importlib.metadata
is not implicitly brought in by importlib
:
$ python3 -c 'import importlib; importlib.metadata'
Traceback (most recent call last):
File "<string>", line 1, in <module>
AttributeError: module 'importlib' has no attribute 'metadata'
To Reproduce
import importlib
reveal_type(importlib.metadata) # expected error but none?
import urllib
reveal_type(urllib.parse) # similar situation but properly errors!
Expected Behavior
I expect two errors, but I only get one
Actual Behavior
$ mypy t.py
t.py:3: note: Revealed type is "types.ModuleType"
t.py:7: error: Module has no attribute "parse" [attr-defined]
t.py:7: note: Revealed type is "Any"
Found 1 error in 1 file (checked 1 source file)
Your Environment
- Mypy version used: 1.13.0
- Mypy command-line flags: n/a
- Mypy configuration options from
mypy.ini
(and other config files): n/a - Python version used: 3.13.0