Skip to content

Commit c7bae32

Browse files
authored
Merge branch 'dev' into mlflow-sqlite-migration
2 parents 2daf8a9 + 4ba89bd commit c7bae32

69 files changed

Lines changed: 856 additions & 211 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ jobs:
6767
rm -rf /opt/hostedtoolcache/{node,go,Ruby,Java*}
6868
ls -al /opt/hostedtoolcache
6969
rm -rf /usr/share/dotnet/
70-
python -m pip install -U pip wheel
71-
python -m pip install -r requirements-dev.txt
70+
python -m pip install -U --no-build-isolation pip wheel wheel-stub
71+
python -m pip install --no-build-isolation -r requirements-dev.txt
7272
BUILD_MONAI=1 ./runtests.sh --build
7373
7474
- name: Perform CodeQL Analysis

.github/workflows/pythonapp-gpu.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
# Jenkinsfile.monai-premerge
22
name: premerge-gpu
33

4-
# on:
4+
on:
55
# # quick tests for pull requests and the releasing branches
66
# push:
77
# branches:
88
# - main
99
# - releasing/*
1010
# pull_request:
1111
# types: [opened, synchronize, closed]
12+
# Allows you to run this workflow manually from the Actions tab
13+
workflow_dispatch:
1214

1315
concurrency:
1416
# automatically cancel the previously triggered workflows when there's a newer version

.github/workflows/weekly-preview.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ jobs:
6969
export YEAR_WEEK=$(date +'%y%U')
7070
echo "Year week for tag is ${YEAR_WEEK}"
7171
if ! [[ $YEAR_WEEK =~ ^[0-9]{4}$ ]] ; then echo "Wrong 'year week' format. Should be 4 digits."; exit 1 ; fi
72-
git tag "1.6.dev${YEAR_WEEK}"
72+
git tag "1.7.dev${YEAR_WEEK}"
7373
git log -1
7474
git tag --list
7575
python setup.py sdist bdist_wheel

CHANGELOG.md

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,67 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
55

66
## [Unreleased]
77

8+
## [1.6.0] - 2026-06-12
9+
10+
## What's Changed
11+
### Added
12+
* Add `MAPEMetric` for regression evaluation (#8686)
13+
* Add `CalibrationErrorMetric` and `CalibrationError` handler (#8707)
14+
* Add `AUC-Margin Loss` for AUROC optimization (#8719)
15+
* Add `MCCLoss` (Matthews Correlation Coefficient loss) (#8785)
16+
* Add `EmbeddingCollapseMetric` for detecting representational collapse (#8815)
17+
* Add 3D support and confusion matrix output to `PanopticQualityMetric` (#8684)
18+
* Add `GradientAccumulation` utility for `SupervisedTrainer` (#8763)
19+
* Add nested dot-notation access to `ConfigParser` (#8858)
20+
* Add `allow_pickle` argument to relevant loaders (#8875)
21+
* Add configurable GD-enhancing tumor label in `ConvertToMultiChannelBasedOnBratsClasses` (#8779)
22+
* Enable global coordinates in spatial crop transforms (#8794)
23+
* Generalize `TestTimeAugmentation` to non-spatial predictions (#8715)
24+
* Add parameter to `DiceMetric` and `DiceHelper` classes (#8774)
25+
* Support additional dtypes in `pad_nd` (#8672)
26+
27+
### Fixed
28+
* Fix `Invertd` transform (#8651)
29+
* Fix `PerceptualLoss` errors out after hitting maximum number of downloads (#8652)
30+
* Prevent implicit conversion of `MetaTensor` to numpy array (#8654)
31+
* Fix weights in alpha for `FocalLoss` (#8665)
32+
* Fix align_corners mismatch in `AffineTransform` (#8690)
33+
* Fix multi-axis shear transform to compose individual shear matrices (#8778)
34+
* Fix incorrect `truncated` parameter in `make_gaussian_kernel` causing corrupted `LocalNormalizedCrossCorrelationLoss` (#8781, #8783)
35+
* Fix batch size broadcasting bug in `GeneralizedWassersteinDiceLoss` (#8744)
36+
* Fix `AutoencoderKLMaisi` forcing CUDA transfer on CPU inputs (#8736)
37+
* Fix `TrainableBilateralFilter` 3D input validation (#8729)
38+
* Fix GPU memory leak by checking both image and label tensors for CUDA device (#8708)
39+
* Fix `compute_shape_offset` non-tuple indexing for PyTorch >=2.9 (#8776, #8812)
40+
* Fix memory leak in `optional_import` traceback handling (#8782)
41+
* Fix nested `Compose` `map_items` in forward and inverse paths (#8787)
42+
* Fix `JukeboxLoss.forward` swapped `input_amplitude` and `target_amplitude` (#8821)
43+
* Fix `EnsureChannelFirst` to pass `meta_data` when `track_meta` is False (#8835)
44+
* Fix `RandSimulateLowResolution` to not alter `track_meta` state (#8837)
45+
* Fix incomplete activation validation in `HausdorffDTLoss` (#8841)
46+
* Fix `CrossAttentionBlock` instantiated unconditionally (#8848)
47+
* Fix `GlobalMutualInformationLoss` bin_centers registered as buffer (#8869)
48+
* Fix `SoftclDiceLoss` and `SoftDiceclDiceLoss` with `DiceLoss`-compatible API (#8703)
49+
* Fix execution order of activation and masking in `MaskedDiceLoss` (#8704)
50+
* Fix `load_old_state_dict` key mapping in `AutoencoderKL` (#8786)
51+
* Fix missing `channel_wise` parameter in `RandScaleIntensityFixedMean` (#8741)
52+
* Fix NibabelReader eager C-order copy (#8825)
53+
* Fix `nnUNetV2Runner` to support MIG UUID and respect `CUDA_VISIBLE_DEVICES` (#8716)
54+
* Fix Auto3DSeg device handling and safe no-grad cleanup (#8801, #8803)
55+
* Replace deprecated `cuda.cudart` with `cuda.bindings.runtime` (#8790)
56+
* Replace `Tensor | None` with `Optional[Tensor]` for TorchScript compatibility (#8879)
57+
* Fix for [GHSA-rghg-q7wp-9767](https://github.com/Project-MONAI/MONAI/security/advisories/GHSA-rghg-q7wp-9767) (#8885)
58+
59+
### Changed
60+
* Replace `pickle` with JSON in Auto3DSeg algo serialization (#8695)
61+
* Replace `flake8` with `ruff` and update lint rules (#8692, #8694)
62+
* Modernize build commands for setuptools 80+ compatibility (#8728)
63+
* Replace direct `np.random.*` calls with `np.random.RandomState` instances (#8798)
64+
* Replace `BaseException` with `Exception` across codebase (#8859)
65+
* Update base Docker image to 25.12 (#8738)
66+
* Various performance improvements in engine utilities and core data structures (#8747, #8748, #8751)
67+
* FFT utilities cleanup and update (#8762)
68+
869
## [1.5.2] - 2026-01-28
970

1071
## What's Changed
@@ -1267,7 +1328,8 @@ the postprocessing steps should be used before calling the metrics methods
12671328

12681329
[highlights]: https://github.com/Project-MONAI/MONAI/blob/master/docs/source/highlights.md
12691330

1270-
[Unreleased]: https://github.com/Project-MONAI/MONAI/compare/1.5.2...HEAD
1331+
[Unreleased]: https://github.com/Project-MONAI/MONAI/compare/1.6.0...HEAD
1332+
[1.6.0]: https://github.com/Project-MONAI/MONAI/compare/1.5.2...1.6.0
12711333
[1.5.2]: https://github.com/Project-MONAI/MONAI/compare/1.5.1...1.5.2
12721334
[1.5.1]: https://github.com/Project-MONAI/MONAI/compare/1.5.0...1.5.1
12731335
[1.5.0]: https://github.com/Project-MONAI/MONAI/compare/1.4.0...1.5.0

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ title: "MONAI: Medical Open Network for AI"
66
abstract: "AI Toolkit for Healthcare Imaging"
77
authors:
88
- name: "MONAI Consortium"
9-
date-released: 2026-01-29
10-
version: "1.5.2"
9+
date-released: 2026-06-12
10+
version: "1.6.0"
1111
identifiers:
1212
- description: "This DOI represents all versions of MONAI, and will always resolve to the latest one."
1313
type: doi

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ cd docs/
165165
make html
166166
```
167167

168-
The above commands build html documentation, they are used to automatically generate [https://docs.monai.io](https://docs.monai.io).
168+
The above commands build html documentation, they are used to automatically generate [monai.readthedocs.io](https://monai.readthedocs.io).
169169

170170
The Python code docstring are written in
171171
[reStructuredText](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html) and

Dockerfile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,21 @@ RUN if [[ $(uname -m) =~ "aarch64" ]]; then \
2626

2727
WORKDIR /opt/monai
2828

29+
# Patch NVIDIA's pip constraint file:
30+
# - keep the base image's numpy pin if present (older images pin numpy==1.26.4 as
31+
# their torch was compiled against NumPy 1.x; newer images may ship an empty file)
32+
# - add setuptools<71 (setuptools>=71 removed pkg_resources, breaking MetricsReloaded)
33+
# - pin urllib3>=2 to prevent inadvertent downgrades by pip-installing legacy packages
34+
RUN (grep '^numpy' /etc/pip/constraint.txt || true) > /tmp/new_constraints.txt \
35+
&& printf 'setuptools<71\nurllib3>=2\n' >> /tmp/new_constraints.txt \
36+
&& cp /tmp/new_constraints.txt /etc/pip/constraint.txt
37+
2938
# install full deps
3039
COPY requirements.txt requirements-min.txt requirements-dev.txt /tmp/
3140
RUN cp /tmp/requirements.txt /tmp/req.bak \
3241
&& awk '!/torch/' /tmp/requirements.txt > /tmp/tmp && mv /tmp/tmp /tmp/requirements.txt \
33-
&& python -m pip install --upgrade --no-cache-dir pip \
34-
&& python -m pip install --no-cache-dir -r /tmp/requirements-dev.txt
42+
&& python -m pip install --upgrade --no-cache-dir --no-build-isolation pip wheel wheel-stub \
43+
&& python -m pip install --no-cache-dir --no-build-isolation -r /tmp/requirements-dev.txt
3544

3645
# compile ext and remove temp files
3746
# TODO: remark for issue [revise the dockerfile #1276](https://github.com/Project-MONAI/MONAI/issues/1276)

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Please refer to [the installation guide](https://monai.readthedocs.io/en/latest/
5959

6060
Examples and notebook tutorials are located at [Project-MONAI/tutorials](https://github.com/Project-MONAI/tutorials).
6161

62-
Technical documentation is available at [docs.monai.io](https://docs.monai.io).
62+
Technical documentation is available at [monai.readthedocs.io](https://monai.readthedocs.io).
6363

6464
## Docker
6565

docs/source/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Getting started
4141

4242
Examples and notebook tutorials are located at `Project-MONAI/tutorials <https://github.com/Project-MONAI/tutorials>`_.
4343

44-
Technical documentation is available at `docs.monai.io <https://docs.monai.io>`_.
44+
Technical documentation is available at `monai.readthedocs.io <https://monai.readthedocs.io>`_.
4545

4646
.. toctree::
4747
:maxdepth: 1

docs/source/whatsnew.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ What's New
66
.. toctree::
77
:maxdepth: 1
88

9+
whatsnew_1_6.md
910
whatsnew_1_5_2.md
1011
whatsnew_1_5_1.md
1112
whatsnew_1_5.md

0 commit comments

Comments
 (0)