From 400ba698f0c528cd59f3c31a271308652b2c774d Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Mon, 21 Sep 2026 10:15:19 -0500 Subject: [PATCH 1/3] COMP: Build against ITK 6 The Python wrapping for this module has never produced a module. Three independent defects, all of which also apply to ITK 5.4: itk_wrap_module() named the filter rather than the ITK module, so the generated sources did not match the module EntropyBasedIntensityCorrection that itk-module.cmake declares. The .wrap file named the class itk::EntropyBasedIntensityCorrection, from which the wrapping machinery derives the header name, so it looked for itkEntropyBasedIntensityCorrection.h. It also instantiated the class with two template arguments; the filter takes three (TInputImage, TMaskImage, TOutputImage). ITK 6 turns ITK_DISALLOW_COPY_AND_ASSIGN into a static assertion asking for ITK_DISALLOW_COPY_AND_MOVE, which ITK 5.4 defines as well. --- include/itkEntropyBasedIntensityCorrectionImageFilter.h | 2 +- wrapping/CMakeLists.txt | 2 +- wrapping/itkEntropyBasedIntensityCorrectionImageFilter.wrap | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/itkEntropyBasedIntensityCorrectionImageFilter.h b/include/itkEntropyBasedIntensityCorrectionImageFilter.h index 7ba52e3..997a900 100644 --- a/include/itkEntropyBasedIntensityCorrectionImageFilter.h +++ b/include/itkEntropyBasedIntensityCorrectionImageFilter.h @@ -41,7 +41,7 @@ template class EntropyBasedIntensityCorrectionImageFilter: public ImageToImageFilter< TInputImage, TOutputImage > { public: - ITK_DISALLOW_COPY_AND_ASSIGN(EntropyBasedIntensityCorrectionImageFilter); + ITK_DISALLOW_COPY_AND_MOVE(EntropyBasedIntensityCorrectionImageFilter); static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension; static constexpr unsigned int OutputImageDimension = TOutputImage::ImageDimension; diff --git a/wrapping/CMakeLists.txt b/wrapping/CMakeLists.txt index 01bd34d..24b0ceb 100644 --- a/wrapping/CMakeLists.txt +++ b/wrapping/CMakeLists.txt @@ -1,3 +1,3 @@ -itk_wrap_module(EntropyBasedIntensityCorrectionImageFilter) +itk_wrap_module(EntropyBasedIntensityCorrection) itk_auto_load_submodules() itk_end_wrap_module() diff --git a/wrapping/itkEntropyBasedIntensityCorrectionImageFilter.wrap b/wrapping/itkEntropyBasedIntensityCorrectionImageFilter.wrap index 6ae4dbe..58dbeea 100644 --- a/wrapping/itkEntropyBasedIntensityCorrectionImageFilter.wrap +++ b/wrapping/itkEntropyBasedIntensityCorrectionImageFilter.wrap @@ -1,4 +1,4 @@ -itk_wrap_class("itk::EntropyBasedIntensityCorrection" POINTER) - itk_wrap_image_filter("${WRAP_ITK_SCALAR}" 2) +itk_wrap_class("itk::EntropyBasedIntensityCorrectionImageFilter" POINTER) + itk_wrap_image_filter("${WRAP_ITK_SCALAR}" 3) itk_end_wrap_class() From 535fb4ebce5e0e6cba7dcc706279e4122716f253 Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Thu, 24 Sep 2026 10:16:33 -0500 Subject: [PATCH 2/3] STYLE: Fix KWStyle license header mismatches Every source file's header used the retired "Copyright Insight Software Consortium" line instead of "Copyright NumFOCUS", and the Apache License URL was missing its scheme's final letter (http, not https). Both are checked verbatim against Utilities/KWStyle/ITKHeader.h, so EntropyBasedIntensityCorrectionKWStyleTest failed on every file. --- include/itkEntropyBasedIntensityCorrectionImageFilter.h | 4 ++-- include/itkEntropyBasedIntensityCorrectionImageFilter.hxx | 4 ++-- test/itkEntropyBasedIntensityCorrectionImageFilterTest.cxx | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/itkEntropyBasedIntensityCorrectionImageFilter.h b/include/itkEntropyBasedIntensityCorrectionImageFilter.h index 997a900..1daeb0d 100644 --- a/include/itkEntropyBasedIntensityCorrectionImageFilter.h +++ b/include/itkEntropyBasedIntensityCorrectionImageFilter.h @@ -1,12 +1,12 @@ /*========================================================================= * - * Copyright Insight Software Consortium + * Copyright NumFOCUS * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0.txt + * https://www.apache.org/licenses/LICENSE-2.0.txt * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, diff --git a/include/itkEntropyBasedIntensityCorrectionImageFilter.hxx b/include/itkEntropyBasedIntensityCorrectionImageFilter.hxx index 1ac29c8..d57cd00 100644 --- a/include/itkEntropyBasedIntensityCorrectionImageFilter.hxx +++ b/include/itkEntropyBasedIntensityCorrectionImageFilter.hxx @@ -1,12 +1,12 @@ /*========================================================================= * - * Copyright Insight Software Consortium + * Copyright NumFOCUS * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0.txt + * https://www.apache.org/licenses/LICENSE-2.0.txt * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, diff --git a/test/itkEntropyBasedIntensityCorrectionImageFilterTest.cxx b/test/itkEntropyBasedIntensityCorrectionImageFilterTest.cxx index 929a5b6..267109f 100644 --- a/test/itkEntropyBasedIntensityCorrectionImageFilterTest.cxx +++ b/test/itkEntropyBasedIntensityCorrectionImageFilterTest.cxx @@ -1,12 +1,12 @@ /*========================================================================= * - * Copyright Insight Software Consortium + * Copyright NumFOCUS * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0.txt + * https://www.apache.org/licenses/LICENSE-2.0.txt * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, From 5e73e459a7209daa1c360292d582d50c1470c0fc Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Thu, 24 Sep 2026 10:17:15 -0500 Subject: [PATCH 3/3] COMP: Point the clang-format lint action at its current branch InsightSoftwareConsortium/ITKClangFormatLinterAction renamed its default branch from master to main, so @master no longer resolves and the lint job fails before running. Also bumps actions/checkout from the long-deprecated v1 to v4, matching sibling remote modules. --- .github/workflows/clang-format-linter.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/clang-format-linter.yml b/.github/workflows/clang-format-linter.yml index 69166d9..3b4b052 100644 --- a/.github/workflows/clang-format-linter.yml +++ b/.github/workflows/clang-format-linter.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: fetch-depth: 1 - - uses: InsightSoftwareConsortium/ITKClangFormatLinterAction@master + - uses: InsightSoftwareConsortium/ITKClangFormatLinterAction@main