Releases: SyneRBI/SIRF-SuperBuild
Releases · SyneRBI/SIRF-SuperBuild
v3.8.0
-
Removed ACE as no longer needed by Gadgetron
-
Updated Versions:
- SIRF: 3.8.0
- STIR: 6.2.0
- parallelproj: 1.9.1 (contains a fix for truncation of the TOF kernel)
- CIL: v24.1.0
- Armadillo: 12.8.4 (as per latest Gadgetron, see #923)
- pet-rd-tools: 2.0.2
-
docker image updates:
- fix CUDA toolkit on GPU image
- use CMake 3.29.6
-
VM updates:
- use CMake 3.29.6
v3.7.0
- Adds CCPi-Regularisation-Toolkit as prerequisite for CIL and reinstate unit tests
- Docker:
- Handle
BUILD_CIL
correctly and not install CIL from conda ifBUILD_CIL=ON
- Handle
- CMake:
- only pass through
OpenMP*LIBRARY
variables if set, and addOpenMP_iomp_LIBRARY
to the list (for Intel compiler) #879
- only pass through
- Updated Versions:
- SIRF: v3.7.0
- CIL: ccf17f393ba911d13b74f2327779dde030098fe6 # 28 May 2024
- CCPi-Regularisation-Toolkit: v24.0.1
- STIR: v6.1.0
v3.6.0
- build the STIR native Python interface by default (STIR_BUILD_SWIG_PYTHON=ON). You can still switch this off.
- docker image updates:
- uses
docker-stacks
- CPU: ubuntu:22.04
- GPU: nvidia/cuda:11.7.1-cudnn8-runtime-ubuntu22.04
- Important: Docker tags have now changed, see docker/README.md for a table. Changes w.r.t. previous versions are listed below (note that
-gpu
versions of all tags exist as well, e.g.latest-gpu
etc).- The
latest
tag now includes the jupyter server etc, so theservice
tag should no longer be used (and corresponding images on DockerHub will not be updated). - The new
edge
tag corresponds tomaster
branch of the SIRF-SuperBuild. Note that this will include the "normal" versions of all packages. - The
devel
tag (forDEVEL_BUILD=ON
withmaster
versions of SIRF, STIR etc) is no longer pushed to DockerHub, and therefore will not be updated.
- The
- Docker images are now pushed to DockerHub and GHCR
- added requirements.yml
- revert to
conda
but withlibmamba
solver
- uses
- updated versions:
- SIRF: v3.6.0
- STIR: v6.0.0
- parallelproj: v1.7.3
- Gadgetron: 6202fb7352a14fb82817b57a97d928c988eb0f4b (version of Oct 13, 2023)
- ISMRMRD: v1.13.7
- NiftyReg: a328efb3a2f8ea4b47cf0f7b581d983a570a1ffd (version of 8 Mar, 2024, fixing find omp.h problems on MacOS)
- siemens_to_ismrmrd: v1.2.11
- CIL: db5a2a6cd3bddfbbf53e65f0549ac206096e5b44 (version of Feb 13, 2024)
- CCPi-Regularisation-Toolkit: 71f8d304d804b54d378f0ed05539f01aaaf13758 (version of Dec 3. 2023)
- ROOT: v6-28-12
- nlohmann/json: 3.11.3
- CMake changes
- pass through
OpenMP_CXX_INCLUDE_DIR
andOpenMP_C_INCLUDE_DIR
to
dependent projects. For instance, on MacOS the compiler might not find
omp.h unless these variables are set.
- pass through
- VM changes
- UPDATE.sh (and hence update_VM.sh) has extra developer options to set the
DEVEL_BUILD=ON (-D) and skip the build (-S).
- UPDATE.sh (and hence update_VM.sh) has extra developer options to set the
- Drop Travis
Full Changelog: v3.5.0...v3.6.0
v3.5.0
- Temporarily disable CCPi-Regularisation due to #832
- CMake/building:
- default
DISABLE_MATLAB
toON
as SIRF Matlab support is out-of-date and enabling it could
generate conflicts with Python shared libraries.
- default
- docker image updates
- introduce
REMOVE_BUILD_FILES
variable. If set to 1 (which is the default),
most build files will be removed in the docker image. - introduce
RUN_CTESTS
variable. If set to 1 (which is the default),
the CTests will be run while building the image. - remove obsolete copying of gadgetron.xml
- Installing requirements for SIRF-Exercises uses its environment.yml or requirements.txt depending on settings.
- introduce
- Build Gadgetron master. Requires new Ubuntu packages: libdcmtk-dev, libpugixml-dev, libgflags-dev,
libssl-dev, libcurl4-openssl-dev, pkg-config, golang, libboost-coroutine-dev, libboost-context-dev, libboost-random-dev. - Added SuperBuild project dependencies for Gadgetron: range-v3, RocksDB, Date, mrd-storage-server
- updated versions:
- Gadgetron: 42f11bf14b77b16f1ca5bcfbfa435d5ee8cb22a6 (master)
- RocksDB: 6.26.0
- range-v3: 0.12.0
- siemens_to_ismrmrd: 8bb8b08f53ce73c2de9ba5f47f1532f96292d92b
- ISMRMRD: v1.13.2
- SIRF: v3.5.0
- CIL: v23.1.0
- CCPi-Regularisation: v22.0.0
- TomoPhantom: v2.0.0
v3.4.0
- Removed CIL-ASTRA as it has been merged into CIL code base.
- docker images updates
- Ubuntu: 22.04
- added dependencies to python-opencv , pytest, pytest-cov and coverage
- added requirements.yml and requirements-service.yml to handle dependencies for conda python
- updates to use mamba
- use jupyterlab as opposed to notebook in the "service" images
- CMake: v3.25.1
- VM updates
- Ubuntu: 22.04
- update configuration and documentation to use jupyterlab as opposed to the notebook server
- CMake: 3.21.3
- fixes documentation
- use the VMSVGA graphics controller
- use environment variables in Vagrantfile for easier building
- updated versions:
- SIRF: v3.4.0
- CIL: a6062410028c9872c5b355be40b96ed1497fed2a > 22.1.0
- GTest: 1.12.1
- glog: 0.6.0
- parallelproj: v1.2.13
- STIR: rel_5.1.0
- Boost: 1.78.0
v3.3.1
- VM:
- "update_VM.sh -s" (i.e. "UPDATE.sh -s") no longer runs configure_gnome.sh. If you have a very old VM, run it manually instead.
- Updates to run using docker scripts
- installs custom pip and all python prerequisites with pip
- Bugfix in finding cython and python in UPDATE.sh
- general refresh of scripts etc
- move
zero_fill.sh
fromfirst_run.sh
and move it to a newclean_before_VM_export.sh
script, which also removes build files to make the exported VM smaller.
- docker and VM:
- install
uuid-dev
such that we're prepared for installing ROOT - no longer force numpy<=1.20
- install
- CMake:
- FindCython allows hints
v3.3.0
v3.3.0
- add CITATION.cff (and remove .zenodo.json)
- updated versions:
- SIRF: 3.3.0
- STIR: 5.0.2
- parallelproj: v0.8
- CCPi Regularisation: v21.0.0
- CIL: v21.4.1 (CIL devel build to commit hash ef66083de231492f9571f5512b33068f6950e877 )
- Windows
- Boost build add regex and random
- install
env_sirf.PS1
and.bat
files (as the.sh
and.csh
files)
- docker:
- fix problems with CUDA repo keys
- minor fixes to scripts for use elsewhere (including preparation for more recent Ubuntu)
- added numba as dependency
- VM:
- set
BUILD_CIL=ON
- set
- generic *.cmake fixes:
- update to the ASTRA build script
- fix/add minimum versions for various packages
- improve finding GTest
- known problems:
- VM and jupyterhub scripts need merging various fixes
- VM build files are currently not up to date with 3.3.0 version
v3.2.0
- Moved the VM to this SuperBuild repo
- CMake: removed USE_SYSTEM_siemens_to_ismrmrd
- CMake: added required versions for STIR, NIFTYREG, ISMRMRD.
- Drop Python 2 support
- CMake minimum required version is set to 3.16.2, as it supports Boost 1.72
- VirtualBox VM is created from the SIRF-SuperBuild repository
- Docker images install CIL via conda, so setting BUILD_CIL=OFF in the docker build
- Added jupyterhub Dockerfile and documentation to build the jupyterhub image used in training on top of SIRF docker images and jupyter datascience-notebook image with GPU access.
- Adds Boost random for ISMRMRD 1.5.0 #636
- moved the VM repository to the VirtualBox subdirectory
- fix usage of proj_EXTRA_CMAKE_ARGS facility (it was broken for all projects except ITK) #616
- Boost: fix cases where the wrong version of boost could be found #627
- GTest: if USE_SYSTEM_GTest=OFF, attempt to force finding our version, otherwise, pass GTest_DIR or GTEST_ROOT on to dependent projects.
- add the CERN ROOT library (if USE_ROOT=ON, but defaults to OFF), which can be used by STIR to read GATE ROOT files.
- updated versions:
- CMake: 3.16.2
- ISMRMRD: 1.7.0 if siemens_to_ismrmrd is built, 1.4.2.1 otherwise
- siemens_to_ismrmrd: 6d0ab3d3d0c8ade5c0526db1c6af9825008425ad > 1.2.2 with bug-fix for boost/foreach.hpp
- ITK: 5.2.1 However, we now build a smaller set of modules, most (but not all) of IO, and Filtering. See SuperBuild/External_ITK.cmake)
- NiftyReg: 99d584e2b8ea0bffe7e65e40c8dc818751782d92 ) (fixes gcc-9 OpenMP problems)
- CIL: v21.4.0
- GTest: 1.11.0
- Boost: 1.72.0
- JSON: 3.10.4
- ACE: 6.5.9
- parallelproj: v0.8
v3.1.0
v3.1.0
- docker:
- configure nbstripout in SIRF-Exercises for
sirf-service
- major change w.r.t. users and permissions. We now build as user
jovyan
(by default)
and still switch tosirfuser
for running the container. This avoids having to
reset permissions of many files, and therefore speeds-up container start-up. - introduced
SIRF_SB_URL
,SIRF_SB_TAG
andNUM_PARALLEL_BUILDS
. They default to the
values used before (i.e. resp. the mainSIRF-SuperBuild
repo,master
and2
). - add dependencies that are available only from conda-forge (for CIL)
- improved documentation
- configure nbstripout in SIRF-Exercises for
- allow specifying
HDF5_URL
andHDF5_TAG
like for other projects - updated versions:
- SIRF: 3.1.0
- CIL: 21.2.0
- CIL-ASTRA: 21.2.0
- disable built of NiftyPET by default as our current setup requires Python2 for which we dropped support
- Continuous Integration testing:
- Removed all Travis runs except those that run docker
v3.0.0
- Docker builds:
- travis to use BUILD_CIL=ON for all Docker builds
- Docker builds moved to Python3 only.
- Environment files with name
env_sirf.sh
(andcsh
) are created. Symbolic links or copies with the previous nameenv_ccppetmr.sh
(andcsh
) depending on the version of CMake available are made. - Fix some issues with finding Python #472
- Handling dependent projects:
- Sets
USE_ITK=ON
by default. - Disabled building of
Module_ITKReview
by default - Updates for CIL 20.11+ which has a different python module structure. CCPi-FrameworkPlugins has been also removed.
- CIL repository has been transferred to the TomographicImaging organisation; reflect changes in CIL repositories
- Patch Gadgetron include file hoNDFFT.h to remove spurious ".."
- Add Gadgetron as a dependency of SIRF if
BUILD_Gadgetron
isON
. - Enabled HDF5 support for STIR by default (build C++ libraries for HDF5)
- Add option
BUILD_TESTING_JSON
(default OFF)
- Sets
- Updated versions:
- JSON: 3.9.1
- SWIG: 4.0.2
- STIR: 4.1.1
- SIRF: 3.0.0
- CIL: 21.1.0
- CCPi-Regularisation toolkit: 20.09
- Continuous Integration testing:
- Add GitHub actions and removed most Travis runs
- Switched Travis
ctest
from--verbose
to--output-on-failure
and addedtravis_wait
of 20 minutes to keep it from timing-out if some tests take longer than 10.