Patches for ITK 5.4.6

Hi folks,

The next patch (bugfix) release, ITK 5.4.6, is coming up.

Patches currently staged on the Git release-5.4 branch include:

Bradley Lowekamp (1):
      BUG: Fix GDCM posix_memalign undefined with mingw

Dženan Zukić (2):
      ENH: Update CI images from Windows-2019 to Windows-2022
      COMP: Fix doc-string of TreeIteratorBase::RemoveChild from Deprecated

Hans J. Johnson (2):
      PERF: Enable FFTW SIMD codelets with per-CPU introspection at configure time
      COMP: Fix FFTW SIMD detection for Windows ARM64 and MSVC

Matt McCormick (7):
      DOC: ITK 5.4.5 release notes
      COMP: Update tool.pixi.project to tool.pixi.workspace
      COMP: Update Azure Pipelines Windows image to windows-2022
      COMP: Update CI ExternalDataVersion from 5.4.3 to 5.4.5
      DOC: Do not upgrade CMake in emulated Linux ARM build
      DOC: Update Python Xcode version to 16.2 for macos-15 runners
      ENH: Add ITK_PYTHON_RELEASE_GIL option and SWIG -threads flag

Simon Rit (1):
      BUG: Allow auto registering more than two factories in Python modules

Vladimir S. FONOV (1):
      MINC 2025-02-24 (3b8d9c7e)

Are there other patches that are missing? Patches should be critical bugfixes, improved support for compilers, and documentation fixes.

1 Like

Matt,

There should be a couple commits to update MINC too. This and the GDCM update are needed to build with R on windows with the mingw toolchain.

Brad

Hi Brad,

Is there a pointer to the relevant MINC PR’s?

Thanks,
Matt

Here is the PR: Minc update for release 5.4 by blowekamp · Pull Request #5773 · InsightSoftwareConsortium/ITK · GitHub

1 Like

@blowekamp thanks, that’s included.

1 Like

Just double-checking: ITK 5.4.6 will still export the old GoogleTest target names, right? (I mean GTest::GTest and GTest::Main.)

So the following pull request is for ITK 6, not for ITK 5.4.6:

Fine to me, just double-checking :smiley:

Maybe 3b3c1e15bb5cdcbd83f061f9968a2704fe9e9baf from PR 6002?

1 Like

@Niels_Dekker correct – the names are not changing in ITK 5.

1 Like

@dzenanz please review: COMP: Move inline = default destructors to .cxx for 30 exported classes by thewtex · Pull Request #6041 · InsightSoftwareConsortium/ITK · GitHub

We should also consider a full update to GDCM or apply critical patched to the thridparty GDCM library.

1 Like

Two additional items for 5.4.6 consideration:

[TODO as of 20260413] PEP 688 buffer protocol and GIL release safety (#6042***,*** #6043***)***

PRs ENH: Backport #6026 — PEP 688 buffer protocol and np.asarray() lifetime safety by hjmjohnson · Pull Request #6042 · InsightSoftwareConsortium/ITK · GitHub and ENH: Backport #6027 — comprehensive tests for itk.Image buffer protocol and lifetime by hjmjohnson · Pull Request #6043 · InsightSoftwareConsortium/ITK · GitHub backport the PEP 688 buffer protocol

(_buffer_/_release_buffer_) and comprehensive lifetime safety tests from main. These fix np.asarray(itk_image) to work correctly with Python 3.12+ and prevent

use-after-free when the backing ITK image is garbage collected. Both PRs target release-5.4 and CI is pending.

and 1 done

[DONE] Backport FFTW feature selections (#6025***)***

Issue Backport #6007 For FFTW feature selections to release-5.4 · Issue #6025 · InsightSoftwareConsortium/ITK · GitHub requests backporting PR PERF: Use ABI-guaranteed SIMD baselines for redistribution-safe FFTW builds by hjmjohnson · Pull Request #6007 · InsightSoftwareConsortium/ITK · GitHub ("PERF: Use

ABI-guaranteed SIMD baselines for redistribution-safe FFTW builds"), which was merged to main on 2026-04-08. The current release-5.4 FFTW configuration has pitfalls in

cross-platform environments that #6007 resolves. The FFTW SIMD codelet changes are already partially staged (per Post #1*),* but the full feature-selection mechanism from

#6007 is more robust.

My vote is to do a full update. that seems like the path of least resistance.

I’ve created a tracking issue with a prioritized list of backport candidates from `main`:

Backport candidates for ITK 5.4.6 release · Issue #6051 · InsightSoftwareConsortium/ITK · GitHub

It includes 7 Tier 1 critical bug fixes (all 1–3 file cherry-picks), 3 Tier 2 high-value fixes, 4 Tier 3 build fixes for modern toolchains, and the GDCM CVE @blowekamp mentioned. PRs #6041, #6042, #6043 are already merged to `release-5.4`; #6022 and #6025 are still open.

@matt.mccormick — happy to open backport PRs for any of the Tier 1 items.

Created: Backport candidates for ITK 5.4.6 release · Issue #6051 · InsightSoftwareConsortium/ITK · GitHub

1 Like

@hjmjohnson great, could you please create PR’s for the Tier 1 patches?

We should also consider a full update to GDCM or apply critical patched to the thridparty GDCM library.

This updates to current GDCM release Release 5.4 update gdcm by thewtex · Pull Request #6059 · InsightSoftwareConsortium/ITK · GitHub

Still todo is a patch for CVE-2026-3650