InsightSoftwareConsortium / InsightSoftwareConsortium/ITK
ITK Python v5.3rc03 fails to import ITKImageGrid after upgrade
- Dominant language
- C++
- Stars
- 1.7k
- Forks
- 748
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 64
Description
### Description
Seeing an issue where ITK v5.3rc03 fails to find the `ImageGrid` module after upgrading from a previous ITK version such as v5.2.post1. Succeeds on a clean install.
### Steps to Reproduce
1. `pip install itk==v5.3rc03`
2. Launch Python console
3. `import itk`
4. `itk.auto_progress(2)` (for module visibility)
4. `itk.force_load()`
### Expected behavior
All modules load without error
### Actual behavior
```py
>>> itk.force_load()
Loading ITKPyBase... done
Loading ITKCommon... done
Loading ITKStatistics... done
Loading ITKImageFilterBase... done
Loading ITKTransform... done
Loading ITKMesh... done
Loading ITKImageFunction... done
Loading ITKSpatialObjects... done
Loading ITKSmoothing... done
Loading ITKOptimizers... done
Loading ITKPath... done
Loading ITKImageCompose... done
Loading ITKImageStatistics... done
Traceback (most recent call last):
File "", line 1, in
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/init_helpers.py", line 116, in force_load
getattr(itk, k)
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/lazy.py", line 137, in __getattribute__
base.itk_load_swig_module(module, namespace)
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/base.py", line 102, in itk_load_swig_module
itk_load_swig_module(dep, namespace)
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/base.py", line 102, in itk_load_swig_module
itk_load_swig_module(dep, namespace)
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/base.py", line 102, in itk_load_swig_module
itk_load_swig_module(dep, namespace)
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/base.py", line 98, in itk_load_swig_module
l_data = itk_base_global_module_data[name]
KeyError: 'ITKImageGrid'
>>> itk.ImageGrid
Traceback (most recent call last):
File "", line 1, in
File "/home/tom/anaconda3/envs/venv-itk/lib/python3.8/site-packages/itk/support/lazy.py", line 130, in __getattribute__
value = types.ModuleType.__getattribute__(self, attr)
AttributeError: module 'itk' has no attribute 'ImageGrid'
```
### Reproducibility
After upgrading from v5.2.1.post1: 100%
After a clean install (uninstall and install all ITK packages with `pip`): 0%
### Versions
ITK 5.3 release candidate 3
### Environment
Observed on Windows and Linux in Python 3.8
### Additional Information
Observed after direct upgrade with `pip install itk==v5.3rc03` on both Windows and Linux. Problem was resolved for both platforms by removing all ITK packages with `pip uninstall itk ...` and reinstalling with `pip install itk`.
Contributor guide
Assessment
This issue has not been assessed yet.