-
-
Notifications
You must be signed in to change notification settings - Fork 716
ENH: Bump SWIG to 2024-03-26-master #4541
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Supports more modern C++ - More Pythonic interfaces, e.g. Python Iterator Protocol - Python Limited ABI There were duplicate definition errors due to double inclusion of %template(vectoritkImageXX, std::vector< itkImageXX >) via itkImage_ext.i in PCAShapeSignedDistanceFunction. Remove itkImage_ext.i from the latter but still provide the required typemaps by adding DECL_PYTHON_STD_VEC_RAW_TO_SMARTPTR_TYPEMAP in itkPCAShapeSignedDistanceFunction.wrap. Remove -py3 because it is no longer supported (the default). Remove "ios_base*" config templates because they are no longer emitted. Bump PCRE. SWIG and PCRE are now built via CMake instead of autotools.
|
@dzenanz note how to support |
|
Wow, that's a big step forward! Thanks Matt! Still wondering, is there a specific reason to take the revision of 2024-03-26-master, rather than the last official release, https://github.com/swig/swig/releases/tag/v4.2.1 ? |
Yes, we want this patch: swig/swig@21aa6e8 |
|
Does this touch #3955? |
|
MacOS Python build error: |
dzenanz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good. Maybe we need a newer MacOS virtual machine image?
| # `double` because of OptimizerParameters is hardcoded as templated | ||
| # over `double` in parent class `ShapeSignedDistanceFunction`. | ||
| foreach(t ${types}) | ||
| string(APPEND ITK_WRAP_PYTHON_SWIG_EXT "DECL_PYTHON_STD_VEC_RAW_TO_SMARTPTR_TYPEMAP(itkImage${ITKM_${t}}${d}, itkImage${ITKM_${t}}${d}_Pointer)\n") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this expected to work in remote modules? Should I replace the old way with this style?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes
|
I assume we need to bump the version here:
|
I will add macOS binaries. |
Built with MACOSX_DEPLOYMENT_TARGET set to 10.11.
No, we want to keep testing against the older version, and bumping would not help with the build. |
Built with MACOSX_DEPLOYMENT_TARGET=10.11.
Built with quay.io/pypa/manylinux_2_28_aarch64:2024-03-25-9206bd9.
All the binary versions are required minimum versions are now the same per-platform.
Builds for Python 3.11 will work on 3.11 or greater CPython. 3.11 is required for the Buffer Protocol API's used in our NumPy bridge..
|
/azp run ITK.Windows |
There were duplicate definition errors due to double inclusion of
%template(vectoritkImageXX, std::vector< itkImageXX >)
via itkImage_ext.i in PCAShapeSignedDistanceFunction. Remove
itkImage_ext.i from the latter but still provide the required typemaps
by adding DECL_PYTHON_STD_VEC_RAW_TO_SMARTPTR_TYPEMAP in
itkPCAShapeSignedDistanceFunction.wrap.
Remove -py3 because it is no longer supported (the default).
Remove "ios_base*" config templates because they are no longer emitted.
Bump PCRE. SWIG and PCRE are now built via CMake instead of autotools.
Closes #4536
Closes #3364
Closes #3955