-
Notifications
You must be signed in to change notification settings - Fork 1.5k
monai-weekly/monai pip install conflicting load_submodules #4993
Copy link
Copy link
Closed
Description
Describe the bug
running pip install monai after running pip install monai-weekly causes module import random errors:
$ pip install monai-weekly
Collecting monai-weekly
Using cached monai_weekly-0.10.dev2234-py3-none-any.whl (1.0 MB)
Requirement already satisfied: numpy>=1.17 in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from monai-weekly) (1.23.2)
Requirement already satisfied: torch>=1.7 in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from monai-weekly) (1.12.1)
Requirement already satisfied: typing-extensions in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from torch>=1.7->monai-weekly) (4.3.0)
Installing collected packages: monai-weekly
Successfully installed monai-weekly-0.10.dev2234
$ pip install monai
Collecting monai
Using cached monai-0.9.1-202207251608-py3-none-any.whl (990 kB)
Requirement already satisfied: numpy>=1.17 in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from monai) (1.23.2)
Requirement already satisfied: torch>=1.7 in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from monai) (1.12.1)
Requirement already satisfied: typing-extensions in /usr/local/anaconda3/envs/py38/lib/python3.8/site-packages (from torch>=1.7->monai) (4.3.0)
Installing collected packages: monai
Successfully installed monai-0.9.1
$ python
Python 3.8.12 (default, Oct 12 2021, 06:23:56)
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import monai
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/anaconda3/envs/py38/lib/python3.8/site-packages/monai/__init__.py", line 48, in <module>
load_submodules(sys.modules[__name__], True, exclude_pattern=excludes)
File "/usr/local/anaconda3/envs/py38/lib/python3.8/site-packages/monai/utils/module.py", line 191, in load_submodules
mod = import_module(name)
File "/usr/local/anaconda3/envs/py38/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/local/anaconda3/envs/py38/lib/python3.8/site-packages/monai/apps/reconstruction/networks/blocks/varnetblock.py", line 16, in <module>
from monai.apps.reconstruction.networks.nets.utils import sensitivity_map_expand, sensitivity_map_reduce
File "/usr/local/anaconda3/envs/py38/lib/python3.8/site-packages/monai/apps/reconstruction/networks/nets/utils.py", line 21, in <module>
from monai.apps.reconstruction.complex_utils import complex_conj_t, complex_mul_t
ImportError: cannot import name 'complex_conj_t' from 'monai.apps.reconstruction.complex_utils' (/usr/local/anaconda3/envs/py38/lib/python3.8/site-packages/monai/apps/reconstruction/complex_utils.py)
>>> Expected behavior
no import error
Additional context
the root cause is both pip install monai-weekly and monai may write to the same folder
(e.g., python3.8/site-packages/monai/), the load_submodules function tries to preload all subfolders:
Line 45 in aa93129
| load_submodules(sys.modules[__name__], False, exclude_pattern=excludes) |
a workaround would be always run pip uninstall monai-weekly and pip uninstall monai multiple times before pip installing a new version (either monai-weekly or monai).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels