Skip to content
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

Strategy to publish external modules for different versions of ITK #142

Open
dyollb opened this issue Nov 29, 2022 · 2 comments
Open

Strategy to publish external modules for different versions of ITK #142

dyollb opened this issue Nov 29, 2022 · 2 comments

Comments

@dyollb
Copy link

dyollb commented Nov 29, 2022

Currently, it is tricky to know which version of an ITK external module can be used with a specific version of ITK.
Since often external modules are not updated on PyPi, users need to try until they find a version of ITK that (seems to) work.

It would be nice if there was a consistent strategy. Some ideas:

  • in setup.py only the current minor versions are allowed, e.g. itk >= 5.3.0, < 5.4.0
  • in setup.py only the current patch versions are allowed, e.g. itk >= 5.2.1, < 5.2.2
@SimonRit
Copy link

I agree with you, we should maybe fix the ITK version for a given module release. In my experience, some patch versions are incompatible, e.g., 5.3rc04.post3 and 5.3rc04.post4.

@thewtex
Copy link
Member

thewtex commented Nov 29, 2022

Yes, fixing to patch versions is conservative, but safest.

thewtex added a commit to thewtex/ITKModuleTemplate that referenced this issue Jun 5, 2024
Update CI to build against v5.4.0

Also, improve how the `itk` python package version dependency is
specified. Uses `== 5.4.*` to indicated compatibility with 5.4.0, 5.4.1,
5.4.2, etc., but not 5.5.0, etc. There is generally binary
incompatibilty between minor versions. While it is possible that there
could be binary incompatibility between patch releases, it is more
likely that they will be compatible. This flexibilty helps ensure
that remote module packages are not assumed invalid when a new patch
version of `itk` is released. Addresses InsightSoftwareConsortium#142
jhlegarreta pushed a commit to jhlegarreta/ITKModuleTemplate that referenced this issue Jul 2, 2024
Update CI to build against v5.4.0

Also, improve how the `itk` python package version dependency is
specified. Uses `== 5.4.*` to indicated compatibility with 5.4.0, 5.4.1,
5.4.2, etc., but not 5.5.0, etc. There is generally binary
incompatibilty between minor versions. While it is possible that there
could be binary incompatibility between patch releases, it is more
likely that they will be compatible. This flexibilty helps ensure
that remote module packages are not assumed invalid when a new patch
version of `itk` is released. Addresses InsightSoftwareConsortium#142
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants