Skip to content

Commit 438d11e

Browse files
authored
Merge pull request #402 from thewtex/itk-5.3.0
Itk 5.3.0
2 parents 788c0da + d68014a commit 438d11e

File tree

14 files changed

+1556
-1121
lines changed

14 files changed

+1556
-1121
lines changed

.github/workflows/build-test-publish.yml

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,25 @@ name: Build, test, publish
33
on: [push,pull_request]
44

55
env:
6-
itk-git-tag: "v5.3rc04"
6+
itk-git-tag: "37c107436f163436d9f9caf015b6f642eacdf651"
77

88
jobs:
99
build-test-cxx:
1010
runs-on: ${{ matrix.os }}
1111
strategy:
1212
max-parallel: 3
1313
matrix:
14-
os: [ubuntu-20.04, windows-2019, macos-11]
14+
os: [ubuntu-22.04, windows-2022, macos-12]
1515
include:
16-
- os: ubuntu-20.04
16+
- os: ubuntu-22.04
1717
c-compiler: "gcc"
1818
cxx-compiler: "g++"
1919
cmake-build-type: "MinSizeRel"
20-
- os: windows-2019
20+
- os: windows-2022
2121
c-compiler: "cl.exe"
2222
cxx-compiler: "cl.exe"
2323
cmake-build-type: "Release"
24-
- os: macos-11
24+
- os: macos-12
2525
c-compiler: "clang"
2626
cxx-compiler: "clang++"
2727
cmake-build-type: "MinSizeRel"
@@ -31,18 +31,18 @@ jobs:
3131
with:
3232
path: Ex
3333

34-
- name: Set up Python 3.7
34+
- name: Set up Python 3.9
3535
uses: actions/setup-python@v1
3636
with:
37-
python-version: 3.7
37+
python-version: 3.9
3838

3939
- name: Install build dependencies
4040
run: |
4141
python -m pip install --upgrade pip
4242
python -m pip install ninja
4343
4444
- name: Get specific version of CMake, Ninja
45-
uses: lukka/get-cmake@v3.18.3
45+
uses: lukka/get-cmake@v3.19.2
4646

4747
- name: Download ITK
4848
run: |
@@ -52,20 +52,20 @@ jobs:
5252
git checkout ${{ env.itk-git-tag }}
5353
5454
- name: Build ITK
55-
if: matrix.os != 'windows-2019'
55+
if: matrix.os != 'windows-2022'
5656
run: |
5757
cd ..
5858
mkdir ITK-build
5959
cd ITK-build
6060
cmake -DCMAKE_C_COMPILER:FILEPATH="${{ matrix.c-compiler }}" -DBUILD_SHARED_LIBS:BOOL=ON -DCMAKE_CXX_COMPILER="${{ matrix.cxx-compiler }}" -DCMAKE_BUILD_TYPE:STRING=${{ matrix.cmake-build-type }} -DBUILD_TESTING:BOOL=OFF -GNinja ../ITK
6161
ninja
6262
- name: Build ITK
63-
if: matrix.os == 'windows-2019'
63+
if: matrix.os == 'windows-2022'
6464
run: |
6565
cd ..
6666
mkdir ITK-build
6767
cd ITK-build
68-
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
68+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
6969
cmake -DCMAKE_C_COMPILER:FILEPATH="${{ matrix.c-compiler }}" -DBUILD_SHARED_LIBS:BOOL=OFF -DCMAKE_CXX_COMPILER="${{ matrix.cxx-compiler }}" -DCMAKE_BUILD_TYPE:STRING=${{ matrix.cmake-build-type }} -DBUILD_TESTING:BOOL=OFF -GNinja ../ITK
7070
ninja
7171
shell: cmd
@@ -115,13 +115,13 @@ jobs:
115115
EOF
116116
cat dashboard.cmake
117117
- name: Build and test
118-
if: matrix.os != 'windows-2019'
118+
if: matrix.os != 'windows-2022'
119119
run: |
120120
ctest -j 2 -VV -S dashboard.cmake
121121
- name: Build and test
122-
if: matrix.os == 'windows-2019'
122+
if: matrix.os == 'windows-2022'
123123
run: |
124-
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
124+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
125125
ctest -j 2 -VV -S dashboard.cmake
126126
shell: cmd
127127

@@ -130,38 +130,38 @@ jobs:
130130
strategy:
131131
max-parallel: 3
132132
matrix:
133-
os: [ubuntu-20.04, windows-2019, macos-11]
133+
os: [ubuntu-22.04, windows-2022, macos-12]
134134
include:
135135
- os: ubuntu-20.04
136136
c-compiler: "gcc"
137137
cxx-compiler: "g++"
138138
cmake-build-type: "MinSizeRel"
139-
- os: windows-2019
139+
- os: windows-2022
140140
c-compiler: "cl.exe"
141141
cxx-compiler: "cl.exe"
142142
cmake-build-type: "Release"
143-
- os: macos-11
143+
- os: macos-12
144144
c-compiler: "clang"
145145
cxx-compiler: "clang++"
146146
cmake-build-type: "MinSizeRel"
147147

148148
steps:
149-
- uses: actions/checkout@v2
149+
- uses: actions/checkout@v3
150150
with:
151151
path: Ex
152152

153-
- name: Set up Python 3.7
154-
uses: actions/setup-python@v1
153+
- name: Set up Python 3.9
154+
uses: actions/setup-python@v3
155155
with:
156-
python-version: 3.7
156+
python-version: 3.9
157157

158158
- name: Install build dependencies
159159
run: |
160160
python -m pip install --upgrade pip
161161
python -m pip install ninja
162162
163163
- name: Get specific version of CMake, Ninja
164-
uses: lukka/get-cmake@v3.18.3
164+
uses: lukka/get-cmake@v3.19.2
165165

166166
- name: Fetch CTest driver script
167167
run: |
@@ -213,14 +213,14 @@ jobs:
213213
cat dashboard.cmake
214214
215215
- name: Build and test
216-
if: matrix.os != 'windows-2019'
216+
if: matrix.os != 'windows-2022'
217217
run: |
218218
ctest -j 2 -VV -S dashboard.cmake
219219
220220
- name: Build and test
221-
if: matrix.os == 'windows-2019'
221+
if: matrix.os == 'windows-2022'
222222
run: |
223-
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
223+
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
224224
ctest -j 2 -VV -S dashboard.cmake
225225
shell: cmd
226226

@@ -229,20 +229,20 @@ jobs:
229229
strategy:
230230
max-parallel: 3
231231
matrix:
232-
os: [ubuntu-20.04, windows-2019, macos-11]
232+
os: [ubuntu-22.04, windows-2022, macos-12]
233233

234234
steps:
235-
- uses: actions/checkout@v1
236-
- name: Set up Python 3.7
237-
uses: actions/setup-python@v1
235+
- uses: actions/checkout@v3
236+
- name: Set up Python 3.9
237+
uses: actions/setup-python@v3
238238
with:
239-
python-version: 3.7
239+
python-version: 3.9
240240

241241
- name: Install build dependencies
242242
run: |
243243
python -m pip install --upgrade pip
244244
python -m pip install ninja
245-
python -m pip install itk>=5.2.0.post2
245+
python -m pip install itk>=5.3.0
246246
python -m pip install matplotlib
247247
python -m pip install itkwidgets
248248
@@ -254,26 +254,26 @@ jobs:
254254
strategy:
255255
max-parallel: 3
256256
matrix:
257-
os: [ubuntu-20.04]
257+
os: [ubuntu-22.04]
258258
include:
259-
- os: ubuntu-20.04
259+
- os: ubuntu-22.04
260260
c-compiler: "gcc"
261261
cxx-compiler: "g++"
262262
cmake-build-type: "Release"
263263

264264
steps:
265-
- uses: actions/checkout@v2
265+
- uses: actions/checkout@v3
266266
with:
267267
path: Ex
268268
submodules: recursive
269269

270-
- name: Set up Python 3.8
271-
uses: actions/setup-python@v1
270+
- name: Set up Python 3.9
271+
uses: actions/setup-python@v3
272272
with:
273-
python-version: 3.8
273+
python-version: 3.9
274274

275275
- name: Get specific version of CMake, Ninja
276-
uses: lukka/get-cmake@v3.18.3
276+
uses: lukka/get-cmake@v3.19.2
277277

278278
- name: Install build dependencies
279279
run: |

.github/workflows/label-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ jobs:
88
runs-on: ubuntu-latest
99

1010
steps:
11-
- uses: srvaroa/labeler@v0.8
11+
- uses: srvaroa/labeler@v0.9
1212
env:
1313
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

CMake/ITKSphinxExamplesExternalData.cmake

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ list(APPEND ExternalData_OBJECT_STORES
2121
"${CMAKE_SOURCE_DIR}/.ExternalData"
2222
)
2323

24-
set(ITK_SPHINX_EXAMPLES_DATA_RELEASED_ROOT_CID bafybeicjaaz3xi2qso3kdirmy5ixoxegvfp3bm7o44ytoh6egj5m6wgeuu)
24+
set(ITK_SPHINX_EXAMPLES_DATA_RELEASED_ROOT_CID bafybeib6yijwyl52gkalx6griio2wsibowlrt3v5wmkkuqlnuvku64c3ra)
25+
2526
set(ExternalData_URL_ALGO_CID_lower cid)
2627
set(ExternalData_URL_TEMPLATES "" CACHE STRING
2728
"Additional URL templates for the ExternalData CMake script to look for testing data. E.g.
@@ -32,6 +33,10 @@ if(NOT ITK_FORBID_DOWNLOADS)
3233
# Local IPFS gateway
3334
"http://127.0.0.1:8080/ipfs/%(hash)"
3435

36+
# Data published on GitHub Pages (note: not complete due to file size
37+
# limit)
38+
"https://insightsoftwareconsortium.github.io/ITKTestingData/%(algo)/%(hash)"
39+
3540
# Released data rsync'd to Kitware's Apache web server
3641
"https://itk.org/files/ExternalData/%(algo)/%(hash)"
3742

@@ -45,6 +50,9 @@ if(NOT ITK_FORBID_DOWNLOADS)
4550
"https://${ITK_SPHINX_EXAMPLES_DATA_RELEASED_ROOT_CID}.ipfs.w3s.link/Objects/CID/%(hash)"
4651

4752
# Released data on estuary.tech
53+
"https://api.estuary.tech/gw/ipfs/${ITK_SPHINX_EXAMPLES_DATA_RELEASED_ROOT_CID}/Objects/CID/%(hash)"
54+
55+
# Protocol Labs gateway
4856
"https://${ITK_SPHINX_EXAMPLES_DATA_RELEASED_ROOT_CID}.ipfs.dweb.link/Objects/CID/%(hash)"
4957

5058
# Gateway for arbitrary new files, uploaded to web3.storage

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
# CMake versions greater than the ITKEX_NEWEST_VALIDATED_POLICIES_VERSION policies will
1111
# continue to generate policy warnings "CMake Warning (dev)...Policy CMP0XXX is not set:"
1212
#
13-
set(ITKEX_OLDEST_VALIDATED_POLICIES_VERSION "3.10.2")
14-
set(ITKEX_NEWEST_VALIDATED_POLICIES_VERSION "3.14.0")
13+
set(ITKEX_OLDEST_VALIDATED_POLICIES_VERSION "3.16.3")
14+
set(ITKEX_NEWEST_VALIDATED_POLICIES_VERSION "3.19.7")
1515
cmake_minimum_required(VERSION ${ITKEX_OLDEST_VALIDATED_POLICIES_VERSION} FATAL_ERROR)
1616
if("${CMAKE_VERSION}" VERSION_LESS_EQUAL "${ITKEX_NEWEST_VALIDATED_POLICIES_VERSION}")
1717
#Set and use the newest available cmake policies that are validated to work
@@ -80,7 +80,7 @@ endif()
8080
if(NOT ITK_VERSION)
8181
# To get the ITK version information from external package when building
8282
# stand alone, ITK is required.
83-
find_package(ITK 5.2.0 REQUIRED)
83+
find_package(ITK 5.3.0 REQUIRED)
8484
endif()
8585
set(ITKSphinxExamples_VERSION_MAJOR ${ITK_VERSION_MAJOR})
8686
set(ITKSphinxExamples_VERSION_MINOR ${ITK_VERSION_MINOR})

Formatting/conf.py.in

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,9 @@ primary_domain = 'cpp'
4040
# Add any Sphinx extension module names here, as strings. They can be extensions
4141
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
4242
extensions = ['sphinx.ext.todo', 'sphinx.ext.imgmath', 'sphinx.ext.ifconfig',
43-
'sphinx.ext.viewcode', 'sphinx.ext.imgconverter', 'breathe', 'doxylink', 'breathelink', 'nbsphinx', 'sphinx_contributors']
43+
'sphinx.ext.viewcode', 'sphinx.ext.imgconverter', 'breathe', 'doxylink',
44+
'breathelink', 'nbsphinx', 'sphinx_contributors',
45+
'IPython.sphinxext.ipython_console_highlighting',]
4446

4547
# Add any paths that contain templates here, relative to this directory.
4648
templates_path = ['templates']

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Required
5959
^^^^^^^^
6060

6161
- CMake_ ( >= 3.10.2 )
62-
- ITK_ ( >= 5.2.0 )
62+
- ITK_ ( >= 5.3.0 )
6363

6464
Optional
6565
^^^^^^^^

Superbuild/External-ITK.cmake

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
# Get and build itk
33

44
if(NOT ITK_TAG)
5-
set(ITK_TAG "e801e637634d1cdf050b358299fd7b3771418f2e")
5+
# ITK release 2022-12-05
6+
set(ITK_TAG "37c107436f163436d9f9caf015b6f642eacdf651")
67
endif()
78

89
set(_vtk_args)
@@ -44,14 +45,6 @@ if(APPLE)
4445
"-DBUILD_SHARED_LIBS:BOOL=ON"
4546
)
4647
endif()
47-
set(_windows_args)
48-
set(_zlib_deps zlib)
49-
if(WIN32)
50-
set(_windows_args
51-
"-DITK_USE_SYSTEM_ZLIB:BOOL=OFF"
52-
)
53-
set(_zlib_deps )
54-
endif()
5548

5649
ExternalProject_Add(ITK
5750
GIT_REPOSITORY "${git_protocol}://github.com/InsightSoftwareConsortium/ITK.git"
@@ -66,19 +59,15 @@ ExternalProject_Add(ITK
6659
-DBUILD_TESTING:BOOL=OFF
6760
-DITK_BUILD_DEFAULT_MODULES:BOOL=ON
6861
-DModule_ITKReview:BOOL=ON
62+
-DITK_LEGACY_REMOVE:BOOL=ON
6963
-DITK_LEGACY_SILENT:BOOL=ON
7064
-DExternalData_OBJECT_STORES:STRING=${ExternalData_OBJECT_STORES}
71-
"-DITK_USE_SYSTEM_ZLIB:BOOL=ON"
72-
"-DZLIB_ROOT:PATH=${ZLIB_ROOT}"
73-
"-DZLIB_INCLUDE_DIR:PATH=${ZLIB_INCLUDE_DIR}"
74-
"-DZLIB_LIBRARY:FILEPATH=${ZLIB_LIBRARY}"
7565
${_vtk_args}
7666
${_opencv_args}
7767
${_wrap_python_args}
7868
${_apple_args}
79-
${_windows_args}
8069
INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "ITK install skipped"
81-
DEPENDS ${ITK_DEPENDENCIES} ${_python_depends} ${_zlib_deps}
70+
DEPENDS ${ITK_DEPENDENCIES} ${_python_depends}
8271
LOG_BUILD 0
8372
)
8473

Superbuild/External-Python.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@ ExternalProject_Add(ITKPython
1717
DOWNLOAD_COMMAND ""
1818
CONFIGURE_COMMAND ${PYTHON_EXECUTABLE} -m venv "${_itk_venv}"
1919
BUILD_COMMAND ${ITKPYTHON_EXECUTABLE} -m pip install --upgrade pip
20-
INSTALL_COMMAND ${ITKPYTHON_EXECUTABLE} -m pip install --ignore-installed itk>=5.3rc4.post2 sphinx==4.4.0 docutils<0.18 six black nbsphinx ipython sphinx-contributors ipykernel matplotlib itkwidgets[lab,notebook]>=1.0a7 pydata-sphinx-theme
20+
INSTALL_COMMAND ${ITKPYTHON_EXECUTABLE} -m pip install --ignore-installed itk>=5.3.0 sphinx==4.4.0 docutils<0.18 six black nbsphinx ipywidgets sphinx-contributors ipykernel matplotlib itkwidgets[lab,notebook]>=1.0a21 pydata-sphinx-theme
2121
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/ITKBlackConfig.cmake
2222
)

Superbuild/External-VTK.cmake

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,9 @@ ExternalProject_Add(VTK
2424
-DVTK_WRAP_PYTHON:BOOL=ON
2525
-DExternalData_OBJECT_STORES:STRING=${ExternalData_OBJECT_STORES}
2626
"-DPython3_EXECUTABLE:FILEPATH=${PYTHON_EXECUTABLE}"
27-
-DVTK_USE_SYSTEM_ZLIB:BOOL=ON
28-
"-DZLIB_ROOT:PATH=${ZLIB_ROOT}"
29-
"-DZLIB_INCLUDE_DIR:PATH=${ZLIB_INCLUDE_DIR}"
30-
"-DZLIB_LIBRARY:FILEPATH=${ZLIB_LIBRARY}"
3127
INSTALL_COMMAND ""
3228
LOG_DOWNLOAD 0
3329
LOG_UPDATE 0
34-
DEPENDS zlib
3530
)
3631

3732
set(VTK_DIR ${CMAKE_BINARY_DIR}/VTK-build)

Superbuild/External-zlib.cmake

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
 (0)