Python override raises SystemError on import vtk
Using the new override
mechanism with vtkDataObject
leads to a SystemError
on import vtk
(using a nightly wheel for MacOS built on the CI pipeline)
>>> from vtkmodules.vtkCommonDataModel import vtkDataObject
>>> @vtkDataObject.override
... class DataObject(vtkDataObject):
... pass
...
>>> import vtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/site-packages/vtk.py", line 31, in <module>
all_m = importlib.import_module('vtkmodules.all')
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/site-packages/vtkmodules/all.py", line 14, in <module>
from .vtkImagingCore import *
SystemError: initialization of vtkImagingCore raised unreported exception
>>>
Similarly, with vtkDataSet
it's a SystemError
but in a different place:
>>> from vtkmodules.vtkCommonDataModel import vtkDataSet
>>> @vtkDataSet.override
... class DataSet(vtkDataSet):
... pass
...
>>> import vtk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/site-packages/vtk.py", line 31, in <module>
all_m = importlib.import_module('vtkmodules.all')
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/Users/bane/anaconda3/envs/vtk-dev/lib/python3.9/site-packages/vtkmodules/all.py", line 139, in <module>
from .vtkAcceleratorsVTKmDataModel import *
SystemError: initialization of vtkAcceleratorsVTKmDataModel raised unreported exception
>>>
if you flip the order of imports, all works seemingly fine
>>> import vtk
>>> from vtkmodules.vtkCommonDataModel import vtkDataObject
>>> @vtkDataObject.override
... class DataObject(vtkDataObject):
... pass
...
>>> vtk.vtkDataObject()
<DataObject(0x600000650000) at 0x114feddc0>
Edited by Bane Sullivan