From 3d4bcc0a28bed0309589a4e9f36e3c3534b5accb Mon Sep 17 00:00:00 2001 From: hinerm Date: Wed, 3 Jul 2024 08:56:41 -0500 Subject: [PATCH 001/252] Bump to next development cycle Signed-off-by: hinerm --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ea099af..bee9cb2 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 38.0.0-SNAPSHOT + 38.0.1-SNAPSHOT pom SciJava Parent POM From 9cd51cb3991188cf006355415275be3b6be9ba8e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Jul 2024 15:17:51 -0500 Subject: [PATCH 002/252] CI: add OSSRH_USER as configured env var We need it now in order to deploy to OSS Sonatype. --- .github/workflows/build.yml | 1 + .github/workflows/release.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0a83a16..9d71626 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,6 +42,7 @@ jobs: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} MAVEN_USER: ${{ secrets.MAVEN_USER }} MAVEN_PASS: ${{ secrets.MAVEN_PASS }} + OSSRH_USER: ${{ secrets.OSSRH_USER }} OSSRH_PASS: ${{ secrets.OSSRH_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2bc2a51..74c1018 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,5 +30,6 @@ jobs: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} MAVEN_USER: ${{ secrets.MAVEN_USER }} MAVEN_PASS: ${{ secrets.MAVEN_PASS }} + OSSRH_USER: ${{ secrets.OSSRH_USER }} OSSRH_PASS: ${{ secrets.OSSRH_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} From 046a84b06b87d5ad68f0d6246462150e29cd5aaf Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Jul 2024 15:18:33 -0500 Subject: [PATCH 003/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bee9cb2..ea745f6 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 38.0.1-SNAPSHOT + 38.0.2-SNAPSHOT pom SciJava Parent POM From 73cf49fa621062a5d3ee032fb3d874947e8fec0b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Jul 2024 15:38:15 -0500 Subject: [PATCH 004/252] Update scijava-common: 2.98.0 -> 2.99.0 And reenable the imagej-ops tests, which shouldn't OOME anymore... --- pom.xml | 2 +- tests/run.sh | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index ea745f6..4669132 100644 --- a/pom.xml +++ b/pom.xml @@ -330,7 +330,7 @@ ${scijava-cache.version} - 2.98.0 + 2.99.0 ${scijava-common.version} diff --git a/tests/run.sh b/tests/run.sh index f36bbb3..0b64a7d 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -210,10 +210,7 @@ chmod +x "$meltScript" || # HACK: Remove flaky tests from imagej-ops builds. # CachedOpEnvironmentTest fails intermittently. Of course, it should be # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. -#rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" - -# TEMP: Until scijava/pom-scijava#236 is solved. -echo "net.imagej/imagej-ops" >> "$skipTestsFile" && +rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" # TEMP: Until saalfeldlab/n5-aws-s3#13 is released. echo "org.janelia.saalfeldlab/n5-aws-s3" >> "$skipTestsFile" && From f676a336ad2926ba658261f862308bc337a773cd Mon Sep 17 00:00:00 2001 From: David Gault Date: Thu, 11 Jul 2024 14:27:57 +0100 Subject: [PATCH 005/252] Bump Bio-Formats version to 7.3.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ffe5f3e..e2384fe 100644 --- a/pom.xml +++ b/pom.xml @@ -1245,7 +1245,7 @@ ${jxrlib-all.version} - 7.3.0 + 7.3.1 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From bea2f950ba24a418eef8f47d0e03680fafcae1b7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 16 Jul 2024 10:22:56 -0500 Subject: [PATCH 006/252] Update imagej-ops: 2.0.0 -> 2.1.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0edadb4..b9dd017 100644 --- a/pom.xml +++ b/pom.xml @@ -526,7 +526,7 @@ ${imagej-opencv.version} - 2.0.0 + 2.1.0 ${imagej-ops.version} From b9f9708a90164e47574c769ec2144af24df58e91 Mon Sep 17 00:00:00 2001 From: Stefan Hahmann Date: Thu, 18 Jul 2024 11:15:36 +0200 Subject: [PATCH 007/252] Update scijava-ui-swing version to newest release 1.0.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b9dd017..13d5a9e 100644 --- a/pom.xml +++ b/pom.xml @@ -394,7 +394,7 @@ ${scijava-ui-awt.version} - 1.0.1 + 1.0.2 ${scijava-ui-swing.version} From 4a1e598460318d6a383d54d53f528bf523fc7b78 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jul 2024 13:04:46 -0500 Subject: [PATCH 008/252] Update bigdataviewer-core: 10.4.14 -> 10.4.16 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 13d5a9e..93be8c2 100644 --- a/pom.xml +++ b/pom.xml @@ -1012,7 +1012,7 @@ - 10.4.14 + 10.4.16 ${bigdataviewer-core.version} From ca00bed46f66e1e1e864f581c7a1ffefa8603bd9 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jul 2024 14:21:30 -0500 Subject: [PATCH 009/252] Revert "Update bigdataviewer-core: 10.4.14 -> 10.4.16" This reverts commit 4a1e598460318d6a383d54d53f528bf523fc7b78. This bigdataviewer-core version requires ImgLib2 v7, but the pom-scijava 34.x series is bound to ImgLib2 v6. The update to ImgLib2 v7 will need to happen as part of pom-scijava 39 (or later). --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 93be8c2..13d5a9e 100644 --- a/pom.xml +++ b/pom.xml @@ -1012,7 +1012,7 @@ - 10.4.16 + 10.4.14 ${bigdataviewer-core.version} From 2c697c8d13333286ea8af12a9e6cabf3ea4b5f50 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 27 Aug 2024 12:45:37 -0500 Subject: [PATCH 010/252] Update Colocalisation_Analysis: 3.0.6 -> 3.1.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 13d5a9e..228cbc1 100644 --- a/pom.xml +++ b/pom.xml @@ -712,7 +712,7 @@ 3.0.0 ${Cell_Counter.version} - 3.0.6 + 3.1.0 ${Colocalisation_Analysis.version} 2.0.7 From a1d57bea66d150103cc31a43a9f75dcdad9d49ed Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 2 Sep 2024 15:27:53 -0500 Subject: [PATCH 011/252] Update scripting-beanshell: 0.4.1 -> 1.0.0 This updates the bsh library from 2.1.0 to 2.1.1, hoping to avoid CVE-2016-2510; see fiji/fiji#353. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 228cbc1..12a3838 100644 --- a/pom.xml +++ b/pom.xml @@ -410,7 +410,7 @@ ${script-editor-scala.version} - 0.4.1 + 1.0.0 ${scripting-beanshell.version} From 124306cbe345d8f514a61eca70e31d763c54a637 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 27 Sep 2024 21:26:37 -0500 Subject: [PATCH 012/252] Update Java-3D-dependent components to use v1.7.2 * _3D_Blob_Segmentation: 3.0.2 -> 4.0.0 * _3D_Viewer: 4.0.5 -> 5.0.0 * Correct_3D_Drift: 1.0.6 -> 1.0.7 * Trainable_Segmentation: 3.3.4 -> 4.0.0 * VIB: 3.0.4 -> 4.0.0 * Volume_Calculator: 2.0.3 -> 3.0.0 * legacy-imglib1: 1.1.10 -> 1.1.11 * TrakEM2: 1.3.10 -> 2.0.0 * VectorString: 2.0.3 -> 3.0.0 And remove the now-obsolete Java 3D 1.6 SciJava fork components. --- pom.xml | 46 ++++++++++------------------------------------ 1 file changed, 10 insertions(+), 36 deletions(-) diff --git a/pom.xml b/pom.xml index 12a3838..33419ec 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 38.0.2-SNAPSHOT + 39.0.0-SNAPSHOT pom SciJava Parent POM @@ -665,13 +665,13 @@ - <_3D_Blob_Segmentation.version>3.0.2 + <_3D_Blob_Segmentation.version>4.0.0 ${_3D_Blob_Segmentation.version} <_3D_Objects_Counter.version>2.0.1 ${_3D_Objects_Counter.version} - <_3D_Viewer.version>4.0.5 + <_3D_Viewer.version>5.0.0 ${_3D_Viewer.version} 3.4.2 @@ -728,7 +728,7 @@ ${CorrectBleach.version} ${CorrectBleach_.version} - 1.0.6 + 1.0.7 ${Correct_3D_Drift.version} 2.1.8 @@ -915,7 +915,7 @@ ${TopoJ.version} ${TopoJ_.version} - 3.3.4 + 4.0.0 ${Trainable_Segmentation.version} 2.0.4 @@ -924,7 +924,7 @@ 2.2.0 ${VIB-lib.version} - 3.0.4 + 4.0.0 ${VIB.version} ${VIB_.version} @@ -937,7 +937,7 @@ 2.0.1 ${Video_Editing.version} - 2.0.3 + 3.0.0 ${Volume_Calculator.version} 2.01.4 @@ -957,7 +957,7 @@ 2.1.3 ${fiji-lib.version} - 1.1.10 + 1.1.11 ${legacy-imglib1.version} 1.0.2 @@ -1090,12 +1090,12 @@ ${T2-TreelineGraph.version} - 1.3.10 + 2.0.0 ${TrakEM2.version} ${TrakEM2_.version} - 2.0.3 + 3.0.0 ${VectorString.version} @@ -1838,15 +1838,6 @@ 1.0.3 ${jama.version} - - 1.6.0-scijava-2 - ${java3d.version} - ${java3d.version} - ${java3d.version} - ${j3dcore.version} - ${j3dutils.version} - ${vecmath.version} - 1.5.10 @@ -5398,23 +5389,6 @@ ${gov.nist.math.jama.version} - - - org.scijava - j3dcore - ${org.scijava.j3dcore.version} - - - org.scijava - j3dutils - ${org.scijava.j3dutils.version} - - - org.scijava - vecmath - ${org.scijava.vecmath.version} - - From 43c2307bd22e001150166e914ca5c1470d6570cd Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 28 Aug 2024 10:11:38 -0500 Subject: [PATCH 013/252] mega-melt: split the process into more sections Specifically: the "Adjusting the melting pot" section was rather long, performing a series of different sorts of adjustments. This patch splits that step into multiple more fine-grained sections, in an attempt to ease navigation of the shell script code. --- tests/run.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index 0b64a7d..d50cf81 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -114,7 +114,7 @@ chmod +x "$meltingPotScript" && test "$(grep -F "[ERROR]" "$meltingPotLog" | grep -v "using default branch")" && die 'Melting pot generation failed!' -sectionStart 'Adjusting the melting pot' +sectionStart 'Adjusting the melting pot: build.sh script' buildScript="$meltingPotDir/build.sh" buildScriptTemp="$buildScript.tmp" @@ -177,6 +177,10 @@ chmod +x "$buildScript" && rm "$buildScriptTemp" || die 'Error adjusting melting pot build script!' +sectionEnd # Adjusting the melting pot: build.sh script + +sectionStart 'Adjusting the melting pot: component POMs' + # HACK: Adjust component POMs to satisfy Maven HTTPS strictness. find "$meltingPotDir" -name pom.xml | while read pom @@ -195,6 +199,10 @@ do perl -0777 -i -pe 's/(\s*org.scijava<\/groupId>\s*pom-scijava<\/artifactId>\s*)[^\n]*/${1}999-mega-melt<\/version>/igs' "$pom" done +sectionEnd # Adjusting the melting pot: component POMs + +sectionStart 'Adjusting the melting pot: melt.sh script' + # HACK: Skip tests for projects with known problems. mv "$meltScript" "$meltScript.original" && @@ -207,6 +215,10 @@ grep -qxF "$f" $dir/skipTests.txt \&\& buildFlags=-DskipTests\ chmod +x "$meltScript" || die "Failed to adjust $meltScript" +sectionEnd # Adjusting the melting pot: melt.sh script + +sectionStart 'Adjusting the melting pot: unit test hacks' + # HACK: Remove flaky tests from imagej-ops builds. # CachedOpEnvironmentTest fails intermittently. Of course, it should be # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. @@ -219,7 +231,7 @@ echo "org.janelia.saalfeldlab/n5-aws-s3" >> "$skipTestsFile" && echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || die "Failed to generate $skipTestsFile" -sectionEnd # Adjusting the melting pot +sectionEnd # Adjusting the melting pot: unit test hacks # Run the melting pot now, unless -s flag was given. doMelt=t From 01ce48348b8b9dda2938dac2cd8f2d548ec20966 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 28 Aug 2024 12:49:40 -0500 Subject: [PATCH 014/252] mega-melt: eliminate buildScriptTemp variable It doesn't actually save any characters. --- tests/run.sh | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index d50cf81..260fe74 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -117,31 +117,30 @@ test "$(grep -F "[ERROR]" "$meltingPotLog" | grep -v "using default branch")" && sectionStart 'Adjusting the melting pot: build.sh script' buildScript="$meltingPotDir/build.sh" -buildScriptTemp="$buildScript.tmp" cp "$buildScript" "$buildScript.original" && # HACK: Remove known-duplicate short version properties, keeping # the short version declaration only for the more common groupId. # E.g.: org.antlr:antlr is preferred over antlr:antlr, so we set # antlr.version to match org.antlr:antlr, not antlr:antlr. -mv -f "$buildScript" "$buildScriptTemp" && -sed -E 's;(-D('"$shortVersionClashes"').version=[^ ]*) -D[^ ]*;\1;' "$buildScriptTemp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E 's;(-D('"$shortVersionClashes"').version=[^ ]*) -D[^ ]*;\1;' "$buildScript.tmp" > "$buildScript" && # HACK: Add leading underscore to version properties that start with a digit. -mv -f "$buildScript" "$buildScriptTemp" && -sed -E 's; -D([0-9][^ ]*);& -D_\1;' "$buildScriptTemp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E 's; -D([0-9][^ ]*);& -D_\1;' "$buildScript.tmp" > "$buildScript" && # HACK: Add non-standard version properties used prior to # pom-scijava 32.0.0-beta-1; see d0bf752070d96a2613c42e4e1ab86ebdd07c29ee. -mv -f "$buildScript" "$buildScriptTemp" && -sed -E 's; -Dsc.fiji.3D_Blob_Segmentation\.version=([^ ]*);& -DFiji_3D_Blob_Segmentation.version=\1;' "$buildScriptTemp" > "$buildScript" && -mv -f "$buildScript" "$buildScriptTemp" && -sed -E 's; -Dsc.fiji.(3D_Objects_Counter|3D_Viewer)\.version=([^ ]*);& -DImageJ_\1.version=\2;' "$buildScriptTemp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E 's; -Dsc.fiji.3D_Blob_Segmentation\.version=([^ ]*);& -DFiji_3D_Blob_Segmentation.version=\1;' "$buildScript.tmp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E 's; -Dsc.fiji.(3D_Objects_Counter|3D_Viewer)\.version=([^ ]*);& -DImageJ_\1.version=\2;' "$buildScript.tmp" > "$buildScript" && # HACK: Add non-standard net.imagej:ij version property used prior to # pom-scijava 28.0.0; see 7d2cc442b107b3ac2dcb799d282f2c0b5822649d. -mv -f "$buildScript" "$buildScriptTemp" && -sed -E 's; -Dij\.version=([^ ]*);& -Dimagej1.version=\1;' "$buildScriptTemp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E 's; -Dij\.version=([^ ]*);& -Dimagej1.version=\1;' "$buildScript.tmp" > "$buildScript" && # HACK: Add explicit kotlin.version to match our pom-scijava-base. # Otherwise, components built on older pom-scijava-base will have @@ -170,11 +169,11 @@ enforcerVersion=$( mvn -B -U -q -Denforcer.skip=true -Dexec.executable=echo \ -Dexec.args='${maven-enforcer-plugin.version}' --non-recursive validate exec:exec 2>&1 | head -n1 | sed 's;\(.\[[0-9]m\)*;;') && -mv -f "$buildScript" "$buildScriptTemp" && -sed -E "s;mvn -Denforcer.skip;& -Dmaven-enforcer-plugin.version=$enforcerVersion -Dkotlin.version=$kotlinVersion;" "$buildScriptTemp" > "$buildScript" && +mv -f "$buildScript" "$buildScript.tmp" && +sed -E "s;mvn -Denforcer.skip;& -Dmaven-enforcer-plugin.version=$enforcerVersion -Dkotlin.version=$kotlinVersion;" "$buildScript.tmp" > "$buildScript" && chmod +x "$buildScript" && -rm "$buildScriptTemp" || +rm "$buildScript.tmp" || die 'Error adjusting melting pot build script!' sectionEnd # Adjusting the melting pot: build.sh script From 35c53186af1ae2e759a1f49e4a6eba76760c4b59 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 28 Aug 2024 15:06:31 -0500 Subject: [PATCH 015/252] mega-melt: use absolute path for base directories So that while in a different directory, the various path strings are all still correct and functional. --- tests/run.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index 260fe74..2a5c0b1 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -19,14 +19,14 @@ sectionEnd() { sectionStart 'Generating mega-melt project' -dir=$(dirname "$0") +dir=$(cd "$(dirname "$0")" && pwd) pom="$dir/../pom.xml" test -f "$pom" || die 'Where is pom.xml?!' generateMegaMeltScript="$dir/generate-mega-melt.py" filterBuildLogScript="$dir/filter-build-log.py" -megaMeltDir="$dir/../target/mega-melt" +megaMeltDir=$(cd "$dir/../target/mega-melt" && pwd) pomParent="$megaMeltDir/../pom.xml" versionSwapLog="$megaMeltDir/version-swap.log" dependencyTreeLog="$megaMeltDir/dependency-tree.log" From 2f1b70a51e6789e20df8e7376f625604456c7b22 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 28 Aug 2024 12:50:12 -0500 Subject: [PATCH 016/252] mega-melt: add in a section for changed components Empty by default, but configurable to mix in PRs and such. --- tests/run.sh | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 123 insertions(+), 1 deletion(-) diff --git a/tests/run.sh b/tests/run.sh index 2a5c0b1..01304ad 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -114,9 +114,131 @@ chmod +x "$meltingPotScript" && test "$(grep -F "[ERROR]" "$meltingPotLog" | grep -v "using default branch")" && die 'Melting pot generation failed!' +buildScript="$meltingPotDir/build.sh" + +echo +echo 'Hacking in any changed components...' + +# Mix in changed components. Syntax is: +# +# groupId|artifactId|path-to-remote|remote-ref +# +# Example: +# +# components=' +# org.janelia.saalfeldlab|n5-imglib2|git@github.com:saalfeldlab/n5-imglib2|pull/54/head +# sc.fiji|SPIM_Registration|git@github.com:fiji/SPIM_Registration|pull/142/head +# sc.fiji|labkit-ui|git@github.com:juglab/labkit-ui|pull/115/head +# sc.fiji|labkit-pixel-classification|git@github.com:juglab/labkit-pixel-classification|pull/12/head +# sc.fiji|z_spacing|git@github.com:saalfeldlab/z-spacing|pull/28/head +# net.imagej|imagej-common|git@github.com:imagej/imagej-common|pull/112/head +# sc.fiji|TrackMate|git@github.com:trackmate-sc/TrackMate|pull/289/head +# sc.fiji|TrackMate-Skeleton|git@github.com:trackmate-sc/TrackMate-Skeleton|pull/2/head +# sc.fiji|bigwarp_fiji|git@github.com:saalfeldlab/bigwarp|pull/170/head +# net.imagej|imagej-ops|git@github.com:imagej/imagej-ops|pull/654/head +# ' +# +# One entry per line inside the components variable declaration. +# No leading or trailing whitespace anywhere. +# +# Each component will: +# 1. Be updated to that ref (cloning as needed); +# 2. Have its version adjusted to 999 in its pom.xml and gav marker; +# 3. Be `mvn install`ed to the local repo cache at that version; +# 4. Have its version adjusted to 999 in melting pot's build.sh; +# 5. Be added to the list of components to build in melt.sh (if not already present). +components=' +' +failFile="$meltingPotDir/fail" +rm -f "$failFile" +echo "$components" | while read component +do + test "$component" || continue + + g=${component%%|*}; r=${component#*|} + a=${r%%|*}; r=${r#*|} + remote=${r%%|*}; ref=${r#*|} + test "$g" -a "$a" -a "$remote" -a "$ref" || { + touch "$failFile" + die "Invalid component line: $component" + } + d="$meltingPotDir/$g/$a" + printf "[$g:$a] " + + # Update component working copy to desired ref (cloning as needed). + mkdir -p "$d" && + echo "Log of actions for custom version of $g:$a" > "$d/surgery.log" && + echo >> "$d/surgery.log" && + test -f "$d/.git" || git init "$d" >> "$d/surgery.log" || { + touch "$failFile" + die "Failed to access or initialize repository in directory $d" + } + printf . + cd "$d" && + git remote add mega-melt "$remote" >> surgery.log && + printf . && + git fetch mega-melt --depth 1 "$ref":mega-melt >> surgery.log 2>&1 && + printf . && + git switch mega-melt >> surgery.log 2>&1 || { + touch "$failFile" + die "$g:$a: failed to fetch ref '$ref' from remote $remote" + } + printf . + + # Adjust component version to 999. + mvn versions:set -DnewVersion=999 >> surgery.log || { + touch "$failFile" + die "$g:$a: failed to adjust pom.xml version" + } + printf . + if [ -f gav ] + then + mv gav gav.prehacks + sed -E "s;:[^:]*$;:999;" gav.prehacks > gav || { + touch "$failFile" + die "$g:$a: failed to adjust gav version" + } + fi + printf . + + # Install changed component into the local repo cache. + mvn -Denforcer.skip -Dmaven.test.skip install >> surgery.log || { + touch "$failFile" + die "$g:$a: failed to build and install component" + } + printf . + + # Adjust component version to 999 in melting pot's build.sh. + cd "$meltingPotDir" + test -f "$buildScript.prehacks" || cp "$buildScript" "$buildScript.prehacks" || { + touch "$failFile" + die "$g:$a: failed to back up $buildScript" + } + printf . + mv -f "$buildScript" "$buildScript.tmp" && + sed -E "s;(-D($g\\.)?$a\\.version)=[^ ]*;\1=999;g" "$buildScript.tmp" > "$buildScript" || { + touch "$failFile" + die "$g:$a: failed to adjust component version in $buildScript" + } + printf . + + # Add component to the build list in melt.sh (if not already present). + grep -q "\b$g/$a\b" "$meltScript" || { + test -f "$meltScript.prehacks" || cp "$meltScript" "$meltScript.prehacks" + mv -f "$meltScript" "$meltScript.tmp" && + perl -0777 -pe 's;\n+do\n;\n '"$g/$a"' \\$&;igs' "$meltScript.tmp" > "$meltScript" + } || { + touch "$failFile" + die "$g:$a: failed to add component to the build list in $meltScript" + } + printf ".\n" +done +rm -f "$buildScript.tmp" "$meltScript.tmp" +test ! -f "$failFile" || + die "Failed to hack in changed components!" + sectionStart 'Adjusting the melting pot: build.sh script' -buildScript="$meltingPotDir/build.sh" cp "$buildScript" "$buildScript.original" && # HACK: Remove known-duplicate short version properties, keeping From 0c28935201ca8b2e1f8e9c92d2c6e0ed4b32929c Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Sun, 29 Sep 2024 15:14:00 -0500 Subject: [PATCH 017/252] Update component versions for ImgLib v7 upgrade * imagej-common: 2.1.0 -> 2.1.1 * imagej-mesh: 0.8.1 -> 0.8.2 * imagej-ops: 2.1.0 -> 2.2.0 * imglib2: 6.3.0 -> 7.1.1 * imglib2-algorithm: 0.14.0 -> 0.16.0 * imglib2-cache: 1.0.0-beta-17 -> 1.0.0-beta-19 * imglib2-ij: 2.0.1 -> 2.0.3 * imglib2-imglyb: 2.0.0 -> 2.0.1 * imglib2-mesh: 1.0.0 -> 1.1.0 * imglib2-realtransform: 4.0.2 -> 4.0.3 * imglib2-roi: 0.14.1 -> 0.15.1 * imglib2-unsafe: 1.0.0 -> 1.1.0 * SPIM_Registration: 5.0.25 -> 5.0.26 * bigwarp: 9.1.2 -> 9.1.4 * z_spacing: 1.1.2 -> 1.1.3 * bigdataviewer-core: 10.4.14 -> 10.6.1 * bigdataviewer-vistools: 1.0.0-beta-34 -> 1.0.0-beta-36 * bigdataviewer_fiji: 6.3.0 -> 6.4.1 * spim_data: 2.2.7 -> 2.3.3 * TrackMate: 7.12.1 -> 7.14.0 * TrackMate-Skeleton: 2.0.1 -> 2.0.3 * imglib2-label-multisets: 0.14.0 -> 0.15.0 * n5: 3.2.0 -> 3.3.0 * n5-aws-s3: 4.2.0 -> 4.2.1 * n5-google-cloud: 4.1.0 -> 4.1.1 * n5-ij: 4.2.1 -> 4.2.2 * n5-imglib2: 7.0.0 -> 7.0.2 * n5-zarr: 1.3.4 -> 1.3.5 * BigStitcher: 1.2.10 -> 2.0.0 * multiview-reconstruction: 3.2.7 -> 4.0.0 * labkit-pixel-classification: 0.1.17 -> 0.1.18 * labkit-ui: 0.3.11 -> 0.4.0 This accounts for backwards-incompatible changes in the ImgLib2 API. Co-authored-by: Curtis Rueden --- pom.xml | 64 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/pom.xml b/pom.xml index 33419ec..2e9948b 100644 --- a/pom.xml +++ b/pom.xml @@ -482,7 +482,7 @@ ${ij1-patcher.version} - 2.1.0 + 2.1.1 ${imagej-common.version} @@ -502,7 +502,7 @@ ${imagej-matlab.version} - 0.8.1 + 0.8.2 ${imagej-mesh.version} @@ -526,7 +526,7 @@ ${imagej-opencv.version} - 2.1.0 + 2.2.0 ${imagej-ops.version} @@ -580,11 +580,11 @@ - 6.3.0 + 7.1.2 ${imglib2.version} - 0.14.0 + 0.16.0 ${imglib2-algorithm.version} @@ -596,31 +596,31 @@ ${imglib2-algorithm-gpl.version} - 1.0.0-beta-17 + 1.0.0-beta-19 ${imglib2-cache.version} - 2.0.1 + 2.0.3 ${imglib2-ij.version} - 2.0.0 + 2.0.1 ${imglib2-imglyb.version} - 1.0.0 + 1.1.0 ${imglib2-mesh.version} - 4.0.2 + 4.0.3 ${imglib2-realtransform.version} - 0.14.1 + 0.15.1 ${imglib2-roi.version} - 1.0.0 + 1.1.0 ${imglib2-unsafe.version} @@ -861,7 +861,7 @@ 2.0.2 ${SPIM_Opener.version} - 5.0.25 + 5.0.26 ${SPIM_Registration.version} 2.0.3 @@ -991,7 +991,7 @@ ${jitk-tps.version} - 9.1.2 + 9.1.4 ${bigwarp.version} ${bigwarp_fiji.version} @@ -1006,13 +1006,13 @@ ${trakem2_tps.version} - 1.1.2 + 1.1.3 ${z_spacing.version} - 10.4.14 + 10.6.1 ${bigdataviewer-core.version} @@ -1020,21 +1020,21 @@ ${bigdataviewer-server.version} - 1.0.0-beta-34 + 1.0.0-beta-36 ${bigdataviewer-vistools.version} - 6.3.0 + 6.4.1 ${bigdataviewer_fiji.version} - 2.2.7 + 2.3.3 ${spim_data.version} - 7.12.1 + 7.14.0 ${TrackMate.version} @@ -1068,7 +1068,7 @@ ${TrackMate-Oneat.version} - 2.0.1 + 2.0.3 ${TrackMate-Skeleton.version} @@ -1105,15 +1105,15 @@ - 0.14.0 + 0.15.0 ${imglib2-label-multisets.version} - 3.2.0 + 3.3.0 ${n5.version} - 4.2.0 + 4.2.1 ${n5-aws-s3.version} @@ -1121,7 +1121,7 @@ ${n5-blosc.version} - 4.1.0 + 4.1.1 ${n5-google-cloud.version} @@ -1129,11 +1129,11 @@ ${n5-hdf5.version} - 4.2.1 + 4.2.2 ${n5-ij.version} - 7.0.0 + 7.0.2 ${n5-imglib2.version} @@ -1145,7 +1145,7 @@ ${n5-viewer_fiji.version} - 1.3.4 + 1.3.5 ${n5-zarr.version} @@ -1178,8 +1178,8 @@ ${clijx-weka_.version} - 1.2.10 - 3.2.7 + 2.0.0 + 4.0.0 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} @@ -1207,8 +1207,8 @@ ${MaMuT.version} - 0.1.17 - 0.3.11 + 0.1.18 + 0.4.0 ${labkit-pixel-classification.version} ${labkit-ui.version} From 5c466e32931fafebad48087dea6d3aaf6cdead0a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 29 Sep 2024 15:15:00 -0500 Subject: [PATCH 018/252] Update component versions * scijava-ui-swing: 1.0.2 -> 1.0.3 * imagej-plugins-commands: 0.8.1 -> 0.8.2 * MorphoLibJ: 1.6.2 -> 1.6.3 * ome-codecs: 1.0.1 -> 1.0.3 * ome-common: 6.0.21 -> 6.0.23 * metakit: 5.3.6 -> 5.3.7 * ome-poi: 5.3.8 -> 5.3.9 * omero-blitz: 5.7.2 -> 5.7.4 * omero-common: 5.6.4 -> 5.6.7 * omero-gateway: 5.9.0 -> 5.9.3 * omero-model: 5.6.13 -> 5.6.15 * omero-renderer: 5.5.15 -> 5.5.17 * omero-romio: 5.7.5 -> 5.7.7 * omero-server: 5.6.10 -> 5.6.12 * algart-tiff: 1.2.7 -> 1.3.6 * aws: 1.12.667 -> 1.12.772 * ant: 1.10.14 -> 1.10.15 * groovy: 4.0.18 -> 4.0.23 * maven-common-artifact-filters: 3.3.2 -> 3.4.0 * maven-core: 3.9.6 -> 3.9.9 * maven-plugin-tools-api: 3.11.0 -> 4.0.0-beta-1 * plexus-utils: 4.0.0 -> 4.0.2 * poi: 5.2.5 -> 5.3.0 * asm: 9.6 -> 9.7 * checker-qual: 3.42.0 -> 3.47.0 * commons-cli: 1.6.0 -> 1.9.0 * commons-codec: 1.16.1 -> 1.17.1 * commons-collections4: 4.4 -> 4.5.0-M2 * commons-compress: 1.26.0 -> 1.27.1 * commons-csv: 1.10.0 -> 1.12.0 * commons-io: 2.15.1 -> 2.17.0 * commons-lang3: 3.14.0 -> 3.17.0 * commons-logging: 1.3.0 -> 1.3.4 * commons-text: 1.11.0 -> 1.12.0 * error_prone: 2.25.0 -> 2.32.0 * flatlaf: 3.4 -> 3.5.1 * google-api-client: 2.3.0 -> 2.7.0 * api-common: 2.26.0 -> 2.37.1 * gax: 2.43.0 -> 2.54.1 * proto-google-common-protos: 2.34.0 -> 2.45.1 * proto-google-iam-v1: 1.29.0 -> 1.40.1 * google-auth-library: 1.23.0 -> 1.27.0 * auto-value: 1.10.4 -> 1.11.0 * google-http-client: 1.44.1 -> 1.45.0 * grpc: 1.62.2 -> 1.68.0 * guava: 33.0.0-jre -> 33.3.1-jre * icu4j: 74.2 -> 75.1 * itextpdf: 5.5.13.3 -> 5.5.13.4 * j2objc-annotations: 2.8 -> 3.0.0 * jackson: 2.16.1 -> 2.18.0 * jetty: 9.4.54.v20240208 -> 9.4.56.v20240826 * jfreechart: 1.5.4 -> 1.5.5 * jline3: 3.25.1 -> 3.27.0 * jna: 5.14.0 -> 5.15.0 * joda-time: 2.12.7 -> 2.13.0 * joml: 1.10.5 -> 1.10.8 * json: 20240205 -> 20240303 * junit-jupiter: 5.10.2 -> 5.11.1 * jython: 2.7.3 -> 2.7.4 * lz4-java: 1.8.0 -> 1.9-inv * objenesis: 3.3 -> 3.4 * okio: 3.8.0 -> 3.9.1 * picocli: 4.7.5 -> 4.7.6 * postgresql: 42.7.2 -> 42.7.4 * protobuf: 3.23.0 -> 4.28.2 * rsyntaxtextarea: 3.4.0 -> 3.5.1 * snakeyaml: 2.2 -> 2.3 * snakeyaml-engine: 2.7 -> 2.8 * threetenbp: 1.6.8 -> 1.7.0 * xz: 1.9 -> 1.10 * zstd-jni: 1.5.5-11 -> 1.5.6-6 --- pom.xml | 145 +++++++++++++++++++++++++++++--------------------------- 1 file changed, 74 insertions(+), 71 deletions(-) diff --git a/pom.xml b/pom.xml index 2e9948b..2c7a5f4 100644 --- a/pom.xml +++ b/pom.xml @@ -394,7 +394,7 @@ ${scijava-ui-awt.version} - 1.0.2 + 1.0.3 ${scijava-ui-swing.version} @@ -534,7 +534,7 @@ ${imagej-plugins-batch.version} - 0.8.1 + 0.8.2 ${imagej-plugins-commands.version} @@ -1155,7 +1155,7 @@ - 1.6.2 + 1.6.3 ${MorphoLibJ.version} ${MorphoLibJ_.version} @@ -1221,19 +1221,19 @@ ${ice.version} - 1.0.1 + 1.0.3 ${ome-codecs.version} - 6.0.21 + 6.0.23 ${ome-common.version} - 5.3.6 + 5.3.7 ${metakit.version} - 5.3.8 + 5.3.9 ${ome-poi.version} @@ -1262,11 +1262,11 @@ ${formats-gpl.version} - 5.7.2 + 5.7.4 ${omero-blitz.version} - 5.6.4 + 5.6.7 ${omero-common.version} @@ -1274,23 +1274,23 @@ ${omero-dsl-plugin.version} - 5.9.0 + 5.9.3 ${omero-gateway.version} - 5.6.13 + 5.6.15 ${omero-model.version} - 5.5.15 + 5.5.17 ${omero-renderer.version} - 5.7.5 + 5.7.7 ${omero-romio.version} - 5.6.10 + 5.6.12 ${omero-server.version} @@ -1310,11 +1310,11 @@ ${org.abego.treelayout.core.version} - 1.2.7 + 1.3.6 ${algart-tiff.version} - 1.12.667 + 1.12.772 ${aws.version} ${aws.version} ${aws-java-sdk-core.version} @@ -1336,13 +1336,13 @@ ${antlr4-runtime.version} - 1.10.14 + 1.10.15 ${ant.version} ${ant.version} ${ant-launcher.version} - 4.0.18 + 4.0.23 ${groovy.version} ${groovy.version} ${groovy.version} @@ -1416,11 +1416,11 @@ 0.13.1 - 3.3.2 - 3.9.6 - 3.11.0 + 3.4.0 + 3.9.9 + 4.0.0-beta-1 2.2.0 - 4.0.0 + 4.0.2 2.6.0 2.6.0 ${maven-artifact-transfer.version} @@ -1433,7 +1433,7 @@ ${sisu-inject-plexus.version} - 5.2.5 + 5.3.0 ${poi.version} ${poi.version} ${poi.version} @@ -1460,11 +1460,12 @@ ${httpmime.version} + 2.33 ${args4j.version} - 9.6 + 9.7 ${asm.version} ${asm.version} ${asm.version} @@ -1547,7 +1548,7 @@ ${cdi-api.version} - 3.42.0 + 3.47.0 ${checker-qual.version} @@ -1555,39 +1556,39 @@ ${commons-beanutils.version} - 1.6.0 + 1.9.0 ${commons-cli.version} - 1.16.1 + 1.17.1 ${commons-codec.version} 3.2.2 - 4.4 + 4.5.0-M2 ${commons-collections.version} ${commons-collections4.version} - 1.26.0 + 1.27.1 ${commons-compress.version} - 1.10.0 + 1.12.0 ${commons-csv.version} - 2.15.1 + 2.17.0 ${commons-io.version} 2.6 - 3.14.0 + 3.17.0 ${commons-lang.version} ${commons-lang3.version} - 1.3.0 + 1.3.4 ${commons-logging.version} @@ -1599,7 +1600,7 @@ ${commons-pool2.version} - 1.11.0 + 1.12.0 ${commons-text.version} @@ -1654,11 +1655,12 @@ ${org.eclipse.swt.win32.win32.x86_64.version} + 0.41 ${ejml.version} - 2.25.0 + 2.32.0 - 3.4 + 3.5.1 ${flatlaf.version} 2.304 ${flatlaf-fonts-jetbrains-mono.version} - 2.3.0 + 2.7.0 ${google-api-client.version} ${google-api-client.version} ${google-api-client.version} @@ -1691,12 +1693,12 @@ ${google-api-client-xml.version} - 2.26.0 - 2.43.0 + 2.37.1 + 2.54.1 ${gax.version} ${gax.version} - 2.34.0 - 1.29.0 + 2.45.1 + 1.40.1 ${api-common.version} ${gax.version} ${gax-grpc.version} @@ -1707,7 +1709,7 @@ ${proto-google-iam-v1.version} - 1.23.0 + 1.27.0 ${google-auth-library.version} ${google-auth-library.version} ${google-auth-library.version} @@ -1716,7 +1718,7 @@ ${google-auth-library-oauth2-http.version} - 1.10.4 + 1.11.0 ${auto-value.version} ${auto-value.version} ${auto-value-annotations.version} @@ -1734,7 +1736,7 @@ ${google-cloud-storage.version} - 1.44.1 + 1.45.0 ${google-http-client.version} ${google-http-client.version} ${google-http-client.version} @@ -1748,7 +1750,7 @@ ${google-http-client-xml.version} - 1.62.2 + 1.68.0 ${grpc.version} ${grpc.version} ${grpc.version} @@ -1779,7 +1781,7 @@ ${gson.version} - 33.0.0-jre + 33.3.1-jre 1.0.2 ${guava.version} ${failureaccess.version} @@ -1798,15 +1800,15 @@ ${hsqldb.version} - 74.2 + 75.1 ${icu4j.version} - 5.5.13.3 + 5.5.13.4 ${itextpdf.version} - 2.8 + 3.0.0 ${j2objc-annotations.version} @@ -1815,7 +1817,7 @@ ${jackrabbit-webdav.version} - 2.16.1 + 2.18.0 ${jackson.version} ${jackson.version} ${jackson.version} @@ -1882,7 +1884,7 @@ ${jep.version} - 9.4.54.v20240208 + 9.4.56.v20240826 ${jetty.version} - 1.5.4 + 1.5.5 ${jfreechart.version} @@ -1992,7 +1994,7 @@ ${jline2.version} ${jline.version} - 3.25.1 + 3.27.0 ${jline3.version} ${jline3.version} @@ -2030,7 +2032,7 @@ ${jmockit.version} - 5.14.0 + 5.15.0 ${jna.version} ${jna.version} ${jna-platform.version} @@ -2048,7 +2050,7 @@ ${jnr-posix.version} - 2.12.7 + 2.13.0 ${joda-time.version} @@ -2089,7 +2091,7 @@ ${jogamp-java3d.version} - 1.10.5 + 1.10.8 ${joml.version} @@ -2110,7 +2112,7 @@ ${jsch.version} - 20240205 + 20240303 ${json.version} @@ -2118,7 +2120,7 @@ ${junit.version} - 5.10.2 + 5.11.1 ${junit-jupiter.version} ${junit-jupiter.version} ${junit-jupiter.version} @@ -2132,7 +2134,7 @@ ${junit-vintage-engine.version} - 2.7.3 + 2.7.4 ${jython.version} ${jython-slim.version} @@ -2213,7 +2215,7 @@ ${logback-core.version} - 1.8.0 + 1.9-inv ${lz4-java.version} @@ -2239,10 +2241,11 @@ ${mockito-core.version} - 3.3 + 3.4 ${objenesis.version} + 45.1.1 ${ojalgo.version} @@ -2251,7 +2254,7 @@ ${okhttp.version} - 3.8.0 + 3.9.1 ${okio.version} ${okio.version} ${okio-jvm.version} @@ -2266,15 +2269,15 @@ ${perfmark-api.version} - 4.7.5 + 4.7.6 ${picocli.version} - 42.7.2 + 42.7.4 ${postgresql.version} - 3.23.0 + 4.28.2 - 3.4.0 + 3.5.1 3.3.1 3.3.0 ${rsyntaxtextarea.version} @@ -2320,11 +2323,11 @@ ${jcl-over-slf4j.version} - 2.2 + 2.3 ${snakeyaml.version} - 2.7 + 2.8 ${snakeyaml-engine.version} @@ -2355,7 +2358,7 @@ ${proto.version} - 1.6.8 + 1.7.0 ${threetenbp.version} @@ -2368,11 +2371,11 @@ ${weka-dev.version} - 1.9 + 1.10 ${xz.version} - 1.5.5-11 + 1.5.6-6 ${zstd-jni.version} From e769a9169b61b31bca5bfb633415b0712e6a3d9c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 29 Sep 2024 19:09:48 -0500 Subject: [PATCH 019/252] CI: exclude imglib2-mesh from mega-melt It requires Java 11 to build now, but the mega-melt still uses Java 8. --- tests/run.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/run.sh b/tests/run.sh index 01304ad..bf7873e 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -101,6 +101,7 @@ chmod +x "$meltingPotScript" && -i 'org.scijava:*' \ -i 'sc.fiji:*' \ -e 'net.imagej:ij' \ + -e 'net.imglib2:imglib2-mesh' \ -e 'org.scijava:j3dcore' \ -e 'org.scijava:j3dutils' \ -e 'org.scijava:jep' \ From 036d78b16db708550836982ab13a2e05f7b23d6c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 29 Sep 2024 22:10:47 -0500 Subject: [PATCH 020/252] CI: fix mega-melt absolute directory logic --- tests/run.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/run.sh b/tests/run.sh index bf7873e..351e239 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -26,7 +26,8 @@ test -f "$pom" || die 'Where is pom.xml?!' generateMegaMeltScript="$dir/generate-mega-melt.py" filterBuildLogScript="$dir/filter-build-log.py" -megaMeltDir=$(cd "$dir/../target/mega-melt" && pwd) +megaMeltDir="$dir/../target/mega-melt" +megaMeltDir=$(mkdir -p "$megaMeltDir" && cd "$megaMeltDir" && pwd) pomParent="$megaMeltDir/../pom.xml" versionSwapLog="$megaMeltDir/version-swap.log" dependencyTreeLog="$megaMeltDir/dependency-tree.log" From 4f8848ec75b85021c1c3a0ada74e09fdca88f6c2 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 30 Sep 2024 12:56:11 -0500 Subject: [PATCH 021/252] Downgrade JNA from 5.15.0 to 5.14.0 To avoid antivirus false positives. --- pom.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2c7a5f4..8a02e85 100644 --- a/pom.xml +++ b/pom.xml @@ -2032,7 +2032,11 @@ ${jmockit.version} - 5.15.0 + + 5.14.0 ${jna.version} ${jna.version} ${jna-platform.version} From b5ac60ec6c1ebbb38fd122ce039b096451ecf304 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 30 Sep 2024 13:02:54 -0500 Subject: [PATCH 022/252] Simplify SNAPSHOTS.md instructions We could just delete the file, but leaving a hint is nice. --- SNAPSHOTS.md | 52 ++-------------------------------------------------- 1 file changed, 2 insertions(+), 50 deletions(-) diff --git a/SNAPSHOTS.md b/SNAPSHOTS.md index ccbdeb5..2c35161 100644 --- a/SNAPSHOTS.md +++ b/SNAPSHOTS.md @@ -1,52 +1,4 @@ So, you want to run the mega-melt, but with some SNAPSHOTs built from branches? -Here is an example script that does so for the labkit-pixel-classification and -labkit-ui components. Copy this script into a file called `go`, change the -`adjust`... lines below to match the branches of your SNAPSHOT component(s), - and then give it a try with `sh go`! - -```shell -#!/bin/sh - -# Fail on error. -set -e - -# Generate the mega melt structure. -tests/run.sh -s - -# Pull appropriate branches, build artifacts, and install them locally. -adjust() { - dir=$1 - remote=$2 - branch=$3 - cd "target/mega-melt/melting-pot/$dir" - - # fetch the needed branch - git remote add upstream "$remote" - git fetch upstream - - # discard pom.xml hacks - git checkout pom.xml - - # switch to the needed branch - git checkout "upstream/$branch" - - # reapply pom.xml hacks - mv pom.xml pom.xml.original && - sed -E -e 's_(https?://maven.imagej.net|http://maven.scijava.org)_https://maven.scijava.org_g' \ - -e 's_http://maven.apache.org/xsd_https://maven.apache.org/xsd_g' pom.xml.original > pom.xml || - die "Failed to adjust pom.xml" - perl -0777 -i -pe 's/(\s*org.scijava<\/groupId>\s*pom-scijava<\/artifactId>\s*)[^\n]*/${1}999-mega-melt<\/version>/igs' pom.xml - - # build and install the component - mvn -Denforcer.skip -DskipTests -Dmaven.test.skip -Dinvoker.skip clean install - - cd - >/dev/null -} -adjust sc.fiji/labkit-pixel-classification https://github.com/ctrueden/labkit-pixel-classification bump-to-imglib2-6.1.0 -adjust sc.fiji/labkit-ui https://github.com/ctrueden/labkit-ui bump-to-imglib2-6.1.0 - -# Run the mega melt! -cd target/mega-melt/melting-pot -./melt.sh 2>&1 | tee melt.log -``` +Change the `components=` section of `tests/run.sh script` to include +your changed components, as documented in the comment block there! From d6eb58ee6d4323d3bc0b84bbac4bc2acb135930e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 30 Sep 2024 13:04:55 -0500 Subject: [PATCH 023/252] Manage io.grpc:grpc-inprocess --- pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pom.xml b/pom.xml index 8a02e85..b17bd4e 100644 --- a/pom.xml +++ b/pom.xml @@ -1758,6 +1758,7 @@ ${grpc.version} ${grpc.version} ${grpc.version} + ${grpc.version} ${grpc.version} ${grpc.version} ${grpc.version} @@ -1770,6 +1771,7 @@ ${grpc-core.version} ${grpc-googleapis.version} ${grpc-grpclb.version} + ${grpc-inprocess.version} ${grpc-netty-shaded.version} ${grpc-protobuf.version} ${grpc-services.version} @@ -5244,6 +5246,11 @@ grpc-grpclb ${io.grpc.grpc-grpclb.version} + + io.grpc + grpc-inprocess + ${io.grpc.grpc-inprocess.version} + io.grpc grpc-netty-shaded From cb47f6c6da0fce1895b1f98c01a2d7da68e8b047 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 30 Sep 2024 13:15:02 -0500 Subject: [PATCH 024/252] Manage com.google.oauth-client:google-oauth-client --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index b17bd4e..50cffa3 100644 --- a/pom.xml +++ b/pom.xml @@ -1749,6 +1749,10 @@ ${google-http-client-jackson2.version} ${google-http-client-xml.version} + + 1.36.0 + ${google-oauth-client.version} + 1.68.0 ${grpc.version} @@ -5210,6 +5214,13 @@ ${com.google.http-client.google-http-client-xml.version} + + + com.google.oauth-client + google-oauth-client + ${com.google.oauth-client.google-oauth-client.version} + + io.grpc From 97bd4abfd2fef820db6eca820299849787bccc05 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 3 Oct 2024 12:31:24 -0500 Subject: [PATCH 025/252] Update component versions * imglib2-label-multisets: 0.15.0 -> 0.15.1 * n5-ij: 4.2.2 -> 4.2.3 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 50cffa3..f0f2a59 100644 --- a/pom.xml +++ b/pom.xml @@ -1105,7 +1105,7 @@ - 0.15.0 + 0.15.1 ${imglib2-label-multisets.version} @@ -1129,7 +1129,7 @@ ${n5-hdf5.version} - 4.2.2 + 4.2.3 ${n5-ij.version} From 867bd4c9f2420fc8dd70260a67e24a682237cef0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 4 Oct 2024 13:33:52 -0500 Subject: [PATCH 026/252] Update component versions * bigwarp: 9.1.4 -> 9.2.0 * BigStitcher: 2.0.0 -> 2.0.1 * multiview-reconstruction: 4.0.0 -> 4.1.1 * algart-tiff: 1.3.6 -> 1.3.7 * checker-qual: 3.47.0 -> 3.48.0 * junit-jupiter: 5.11.1 -> 5.11.2 --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index f0f2a59..f00a268 100644 --- a/pom.xml +++ b/pom.xml @@ -991,7 +991,7 @@ ${jitk-tps.version} - 9.1.4 + 9.2.0 ${bigwarp.version} ${bigwarp_fiji.version} @@ -1178,8 +1178,8 @@ ${clijx-weka_.version} - 2.0.0 - 4.0.0 + 2.0.1 + 4.1.1 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} @@ -1310,7 +1310,7 @@ ${org.abego.treelayout.core.version} - 1.3.6 + 1.3.7 ${algart-tiff.version} @@ -1548,7 +1548,7 @@ ${cdi-api.version} - 3.47.0 + 3.48.0 ${checker-qual.version} @@ -2130,7 +2130,7 @@ ${junit.version} - 5.11.1 + 5.11.2 ${junit-jupiter.version} ${junit-jupiter.version} ${junit-jupiter.version} From 5f817d80465d36bfc7d3e12c033116697ed3bf7d Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Fri, 4 Oct 2024 16:42:40 -0400 Subject: [PATCH 027/252] bump n5-ij, n5-viewer, bigwarp * should address mega-melt issues --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index f0f2a59..3574684 100644 --- a/pom.xml +++ b/pom.xml @@ -991,7 +991,7 @@ ${jitk-tps.version} - 9.1.4 + 9.2.1 ${bigwarp.version} ${bigwarp_fiji.version} @@ -1129,7 +1129,7 @@ ${n5-hdf5.version} - 4.2.3 + 4.2.5 ${n5-ij.version} @@ -1141,7 +1141,7 @@ ${n5-universe.version} - 6.1.1 + 6.1.2 ${n5-viewer_fiji.version} From a82c1921fb463262c11a9c67c2815e9bda8a48ca Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 6 Oct 2024 07:10:41 -0500 Subject: [PATCH 028/252] mega-melt: remove n5-aws-s3 tests skip The needed fix is part of n5-aws-s3 v4.0.0, released in July 2023. --- tests/run.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index 351e239..8ed2987 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -347,9 +347,6 @@ sectionStart 'Adjusting the melting pot: unit test hacks' # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" -# TEMP: Until saalfeldlab/n5-aws-s3#13 is released. -echo "org.janelia.saalfeldlab/n5-aws-s3" >> "$skipTestsFile" && - # Error while checking the CLIJ2 installation: null echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || die "Failed to generate $skipTestsFile" From 587ac0cf7fd87cd17fa9f32d8342b3bbeb4d2a7b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 6 Oct 2024 07:12:21 -0500 Subject: [PATCH 029/252] mega-melt: skip n5-ij unit tests We do this to avoid CI-specific failures. All seems well locally. --- tests/run.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/run.sh b/tests/run.sh index 8ed2987..d365467 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -347,6 +347,10 @@ sectionStart 'Adjusting the melting pot: unit test hacks' # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" +# In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: +# java.util.NoSuchElementException: No value present +echo "org.janelia.saalfeldlab/n5-ij" >> "$skipTestsFile" && + # Error while checking the CLIJ2 installation: null echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || die "Failed to generate $skipTestsFile" From 8382585e67d869b742aa50f1077172346a120f4f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 6 Oct 2024 11:24:02 -0500 Subject: [PATCH 030/252] mega-melt: update to realign with melting-pot.sh The melting-pot.sh script in scijava-scripts now places version property pins into a dedicated version-pins.xml file in Maven settings.xml style, rather than passing the versions directly to mvn via -D arguments. So we need to adjust the post-generation hacks here accordingly. And ensure that sed commands really do something. Whether or not sed changes any lines, it returns success. But we want to be sure that the command actually made a change. --- tests/run.sh | 65 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 42 insertions(+), 23 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index d365467..ccc184b 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -6,6 +6,8 @@ die () { echo "$*" >&2; exit 1; } +changed () { ! diff $@ >/dev/null; } + sectionStart() { startTime=$(date +%s) echo @@ -117,6 +119,7 @@ test "$(grep -F "[ERROR]" "$meltingPotLog" | grep -v "using default branch")" && die 'Melting pot generation failed!' buildScript="$meltingPotDir/build.sh" +versionPins="$meltingPotDir/version-pins.xml" echo echo 'Hacking in any changed components...' @@ -196,7 +199,7 @@ do if [ -f gav ] then mv gav gav.prehacks - sed -E "s;:[^:]*$;:999;" gav.prehacks > gav || { + sed -E "s;:[^:]*$;:999;" gav.prehacks > gav && changed gav.prehacks gav || { touch "$failFile" die "$g:$a: failed to adjust gav version" } @@ -210,17 +213,20 @@ do } printf . - # Adjust component version to 999 in melting pot's build.sh. + # Adjust component version to 999 in melting pot's version-pins.xml. cd "$meltingPotDir" - test -f "$buildScript.prehacks" || cp "$buildScript" "$buildScript.prehacks" || { + test -f "$versionPins.prehacks" || cp "$versionPins" "$versionPins.prehacks" || { touch "$failFile" - die "$g:$a: failed to back up $buildScript" + die "$g:$a: failed to back up $versionPins" } printf . - mv -f "$buildScript" "$buildScript.tmp" && - sed -E "s;(-D($g\\.)?$a\\.version)=[^ ]*;\1=999;g" "$buildScript.tmp" > "$buildScript" || { + echo "$a" | grep -q '^[0-9]' && aa="_$a" || aa="$a" + mv -f "$versionPins" "$versionPins.tmp" && + sed -E "s;<\($g\\.$a\|$aa\)\\.version>[^<]*;<\1.version>999;g" "$versionPins.tmp" > "$versionPins" && + changed "$versionPins.tmp" "$versionPins" || + { touch "$failFile" - die "$g:$a: failed to adjust component version in $buildScript" + die "$g:$a: failed to adjust component version in $versionPins" } printf . @@ -235,36 +241,48 @@ do } printf ".\n" done -rm -f "$buildScript.tmp" "$meltScript.tmp" +rm -f "$versionPins.tmp" "$meltScript.tmp" test ! -f "$failFile" || die "Failed to hack in changed components!" -sectionStart 'Adjusting the melting pot: build.sh script' +sectionStart 'Adjusting the melting pot: version-pins.xml configuration' -cp "$buildScript" "$buildScript.original" && +cp "$versionPins" "$versionPins.original" && # HACK: Remove known-duplicate short version properties, keeping # the short version declaration only for the more common groupId. # E.g.: org.antlr:antlr is preferred over antlr:antlr, so we set # antlr.version to match org.antlr:antlr, not antlr:antlr. -mv -f "$buildScript" "$buildScript.tmp" && -sed -E 's;(-D('"$shortVersionClashes"').version=[^ ]*) -D[^ ]*;\1;' "$buildScript.tmp" > "$buildScript" && - -# HACK: Add leading underscore to version properties that start with a digit. -mv -f "$buildScript" "$buildScript.tmp" && -sed -E 's; -D([0-9][^ ]*);& -D_\1;' "$buildScript.tmp" > "$buildScript" && +mv -f "$versionPins" "$versionPins.tmp" && +sed -E 's;(<('"$shortVersionClashes"')\.version>[^ ]*) <[^ ]*;\1;' "$versionPins.tmp" > "$versionPins" && + changed "$versionPins.tmp" "$versionPins" || + die 'Error adjusting melting pot version pins! [1]' # HACK: Add non-standard version properties used prior to # pom-scijava 32.0.0-beta-1; see d0bf752070d96a2613c42e4e1ab86ebdd07c29ee. -mv -f "$buildScript" "$buildScript.tmp" && -sed -E 's; -Dsc.fiji.3D_Blob_Segmentation\.version=([^ ]*);& -DFiji_3D_Blob_Segmentation.version=\1;' "$buildScript.tmp" > "$buildScript" && -mv -f "$buildScript" "$buildScript.tmp" && -sed -E 's; -Dsc.fiji.(3D_Objects_Counter|3D_Viewer)\.version=([^ ]*);& -DImageJ_\1.version=\2;' "$buildScript.tmp" > "$buildScript" && +mv -f "$versionPins" "$versionPins.tmp" && +sed -E 's; ([^<]*);& \1;' "$versionPins.tmp" > "$versionPins" && + changed "$versionPins.tmp" "$versionPins" && +mv -f "$versionPins" "$versionPins.tmp" && +sed -E 's; ([^<]*);& \2;' "$versionPins.tmp" > "$versionPins" && + changed "$versionPins.tmp" "$versionPins" || + die 'Error adjusting melting pot version pins! [2]' # HACK: Add non-standard net.imagej:ij version property used prior to # pom-scijava 28.0.0; see 7d2cc442b107b3ac2dcb799d282f2c0b5822649d. -mv -f "$buildScript" "$buildScript.tmp" && -sed -E 's; -Dij\.version=([^ ]*);& -Dimagej1.version=\1;' "$buildScript.tmp" > "$buildScript" && +mv -f "$versionPins" "$versionPins.tmp" && +sed -E 's; ([^<]*);& \1;' "$versionPins.tmp" > "$versionPins" && + changed "$versionPins.tmp" "$versionPins" || + die 'Error adjusting melting pot version pins! [3]' + +rm "$versionPins.tmp" || + die 'Error adjusting melting pot version pins! [4]' + +sectionEnd # Adjusting the melting pot: version-pins.xml configuration + +sectionStart 'Adjusting the melting pot: build.sh script' + +cp "$buildScript" "$buildScript.original" && # HACK: Add explicit kotlin.version to match our pom-scijava-base. # Otherwise, components built on older pom-scijava-base will have @@ -294,7 +312,8 @@ enforcerVersion=$( -Dexec.args='${maven-enforcer-plugin.version}' --non-recursive validate exec:exec 2>&1 | head -n1 | sed 's;\(.\[[0-9]m\)*;;') && mv -f "$buildScript" "$buildScript.tmp" && -sed -E "s;mvn -Denforcer.skip;& -Dmaven-enforcer-plugin.version=$enforcerVersion -Dkotlin.version=$kotlinVersion;" "$buildScript.tmp" > "$buildScript" && +sed -E "s;mvn .*-Denforcer.skip;& -Dmaven-enforcer-plugin.version=$enforcerVersion -Dkotlin.version=$kotlinVersion;" "$buildScript.tmp" > "$buildScript" && + changed "$buildScript.tmp" "$buildScript" && chmod +x "$buildScript" && rm "$buildScript.tmp" || From 3871f7481c167c8c0787ba79c11ff1472644e3fe Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 14 Oct 2024 13:43:26 -0500 Subject: [PATCH 031/252] Update scijava-search: 2.0.4 -> 2.0.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3aedf31..1003136 100644 --- a/pom.xml +++ b/pom.xml @@ -382,7 +382,7 @@ ${scijava-plugins-text-plain.version} - 2.0.4 + 2.0.5 ${scijava-search.version} From 3d01afbd3871470493b94e1080fed412b8b47655 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 10 Oct 2024 11:29:18 -0500 Subject: [PATCH 032/252] Update component versions * spim_data: 2.3.3 -> 2.3.4 * imagej2: 2.15.0 -> 2.16.0 (preemptive) * fiji: 2.15.1 -> 2.16.0 (preemptive) This commit prepares for the release of pom-scijava 39.0.0. --- .github/build.sh | 4 ++++ pom.xml | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/build.sh b/.github/build.sh index 3820a24..bae79cb 100755 --- a/.github/build.sh +++ b/.github/build.sh @@ -10,6 +10,10 @@ fi curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/master/ci-build.sh && sh ci-build.sh || { echo "Maven build failed. Skipping melting pot tests."; exit 1; } +# TEMP: Disable melting pot until net.imagej:imagej and sc.fiji:fiji are released. +echo "Skipping melting pot tests due to preemptive version bumps." +exit 0 + # Skip melting pot if cutting a release. if [ "$releasing" ]; then exit 0 diff --git a/pom.xml b/pom.xml index 1003136..3b06a00 100644 --- a/pom.xml +++ b/pom.xml @@ -468,7 +468,7 @@ - 2.15.0 + 2.16.0 ${imagej2.version} ${imagej.version} @@ -660,7 +660,7 @@ - 2.15.1 + 2.16.0 ${fiji.version} @@ -1028,7 +1028,7 @@ ${bigdataviewer_fiji.version} - 2.3.3 + 2.3.4 ${spim_data.version} From 074ac1a51d138206ee6792489ee3b0af64a41953 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 15 Oct 2024 12:21:42 -0500 Subject: [PATCH 033/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3b06a00..f04953d 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 39.0.0-SNAPSHOT + 39.0.1-SNAPSHOT pom SciJava Parent POM From e5fc25acbca9e237906a6477a7e1430b199c70c6 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 15 Oct 2024 09:32:12 -0500 Subject: [PATCH 034/252] Manage sc.fiji:bigvolumeviewer --- pom.xml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f04953d..b787010 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 39.0.1-SNAPSHOT + 39.1.0-SNAPSHOT pom SciJava Parent POM @@ -1027,6 +1027,10 @@ 6.4.1 ${bigdataviewer_fiji.version} + + 0.3.4 + ${bigvolumeviewer.version} + 2.3.4 ${spim_data.version} @@ -3558,6 +3562,11 @@ bigdataviewer_fiji ${sc.fiji.bigdataviewer_fiji.version} + + sc.fiji + bigvolumeviewer + ${sc.fiji.bigvolumeviewer.version} + sc.fiji spim_data From d4105f380b2dd42b7b426c98b85d7eb502bb83cc Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 15 Oct 2024 16:26:34 -0500 Subject: [PATCH 035/252] Update parent to pom-scijava-base 20.0.0 The breaking changes are removal of the therapi configuration, javafx-maven-plugin configuration, and corresponding dist profile. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index b787010..3f8db23 100644 --- a/pom.xml +++ b/pom.xml @@ -6,12 +6,12 @@ org.scijava pom-scijava-base - 19.0.0 + 20.0.0 pom-scijava - 39.1.0-SNAPSHOT + 40.0.0-SNAPSHOT pom SciJava Parent POM From 75c1c1d8175a52967623af5865d596172a42a0d1 Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Thu, 17 Oct 2024 21:29:45 +0200 Subject: [PATCH 036/252] Manage org.bigdataviewer:bigdataviewer-n5 --- pom.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pom.xml b/pom.xml index 3f8db23..f308a63 100644 --- a/pom.xml +++ b/pom.xml @@ -1027,6 +1027,10 @@ 6.4.1 ${bigdataviewer_fiji.version} + + 1.0.1 + ${bigdataviewer-n5.version} + 0.3.4 ${bigvolumeviewer.version} @@ -3562,6 +3566,11 @@ bigdataviewer_fiji ${sc.fiji.bigdataviewer_fiji.version} + + org.bigdataviewer + bigdataviewer-n5 + ${org.bigdataviewer.bigdataviewer-n5.version} + sc.fiji bigvolumeviewer From 469bd8f7c27964de348d83fe1921ebf45970b12c Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Thu, 17 Oct 2024 21:37:50 +0200 Subject: [PATCH 037/252] Update spim_data: 2.3.4 -> 2.3.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f308a63..3c5058f 100644 --- a/pom.xml +++ b/pom.xml @@ -1036,7 +1036,7 @@ ${bigvolumeviewer.version} - 2.3.4 + 2.3.5 ${spim_data.version} From fd57ac1e17afd30353e3711cb5fd2673e1529e65 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Fri, 18 Oct 2024 14:05:32 -0400 Subject: [PATCH 038/252] bump bigwarp-9.3.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3c5058f..0d0a86e 100644 --- a/pom.xml +++ b/pom.xml @@ -991,7 +991,7 @@ ${jitk-tps.version} - 9.2.1 + 9.3.0 ${bigwarp.version} ${bigwarp_fiji.version} From 2c4202b4915e6144c5f01a8ec5a1a1aeb854c2aa Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Thu, 24 Oct 2024 11:49:47 -0500 Subject: [PATCH 039/252] Bump Bio-Formats version to 8.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0d0a86e..10fa504 100644 --- a/pom.xml +++ b/pom.xml @@ -1257,7 +1257,7 @@ ${jxrlib-all.version} - 7.3.1 + 8.0.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 4552c9734cfc936d315b3fd348d2f0c65633a155 Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Thu, 24 Oct 2024 11:50:29 -0500 Subject: [PATCH 040/252] Bump ome-common version to 6.0.24 ...to match Bio-Formats 8.0.0. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 10fa504..ef4c7be 100644 --- a/pom.xml +++ b/pom.xml @@ -1233,7 +1233,7 @@ ${ome-codecs.version} - 6.0.23 + 6.0.24 ${ome-common.version} From 9ba1d48d19a24700f4b4ad4b44f1c9488c7e3286 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 5 Nov 2024 12:18:51 -0600 Subject: [PATCH 041/252] Update imagej-legacy: 1.2.2 -> 2.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ef4c7be..d7518a4 100644 --- a/pom.xml +++ b/pom.xml @@ -494,7 +494,7 @@ ${imagej-launcher.version} - 1.2.2 + 2.0.0 ${imagej-legacy.version} From 7c09f1ee38a52aab753757be0fa8cb94d67d1527 Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Mon, 18 Nov 2024 09:43:36 -0600 Subject: [PATCH 042/252] Bump Bio-Formats version to 8.0.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d7518a4..dc11289 100644 --- a/pom.xml +++ b/pom.xml @@ -1257,7 +1257,7 @@ ${jxrlib-all.version} - 8.0.0 + 8.0.1 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From bacb3c891490b9f0d393fc205fa68978ff2b4a20 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 Nov 2024 16:10:09 -0600 Subject: [PATCH 043/252] Manage org.scijava:app-launcher at version 2.0.0 --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index dc11289..be69ce3 100644 --- a/pom.xml +++ b/pom.xml @@ -305,6 +305,10 @@ + + 2.0.0 + ${app-launcher.version} + 0.4.2 ${batch-processor.version} @@ -2401,6 +2405,13 @@ + + + org.scijava + app-launcher + ${org.scijava.app-launcher.version} + + org.scijava From c6b001e1987a2671fd9de3a425ad7b5007baa909 Mon Sep 17 00:00:00 2001 From: hinerm Date: Mon, 9 Dec 2024 11:00:04 -0600 Subject: [PATCH 044/252] Update ij1-patcher 1.2.6 -> 1.2.8 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index be69ce3..83c9081 100644 --- a/pom.xml +++ b/pom.xml @@ -482,7 +482,7 @@ ${ij.version} - 1.2.6 + 1.2.8 ${ij1-patcher.version} From fc6d94647ca5078fcda4c32ccb3c6f75fae0af8c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 11 Dec 2024 10:52:15 -0600 Subject: [PATCH 045/252] Reenable melting pot -_- I meant to reenable it immediately after releasing net.imagej:imagej:2.16.0 and sc.fiji:fiji:2.16.0, but failed to do so. SHAME AND DISGRACE --- .github/build.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/build.sh b/.github/build.sh index bae79cb..3820a24 100755 --- a/.github/build.sh +++ b/.github/build.sh @@ -10,10 +10,6 @@ fi curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/master/ci-build.sh && sh ci-build.sh || { echo "Maven build failed. Skipping melting pot tests."; exit 1; } -# TEMP: Disable melting pot until net.imagej:imagej and sc.fiji:fiji are released. -echo "Skipping melting pot tests due to preemptive version bumps." -exit 0 - # Skip melting pot if cutting a release. if [ "$releasing" ]; then exit 0 From 8d52f8be32807079626ec78240d26d71ecf4367c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 11 Dec 2024 10:53:16 -0600 Subject: [PATCH 046/252] Gradle: fix pom-scijava version extraction Thanks @petebankhead for noticing, and for the diagnosis! Closes #281. --- gradle-scijava/build.gradle.kts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gradle-scijava/build.gradle.kts b/gradle-scijava/build.gradle.kts index d54315c..76e1adc 100644 --- a/gradle-scijava/build.gradle.kts +++ b/gradle-scijava/build.gradle.kts @@ -14,7 +14,11 @@ plugins { layout.buildDirectory = layout.projectDirectory.asFile.parentFile.resolve("target/gradle") group = "org.scijava" -version = File("../pom.xml").readText().substringAfter("").substringBefore('<') +version = File("../pom.xml") + .readText() + .substringAfter("pom-scijava<") + .substringAfter("") + .substringBefore('<') javaPlatform { allowDependencies() From 41a50d9a1e632e4ab087bc9bf330533c68df64e9 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 11 Dec 2024 12:36:47 -0600 Subject: [PATCH 047/252] Avoid commons-math 1.x versus 2.x version clash --- pom.xml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pom.xml b/pom.xml index 83c9081..8c2d249 100644 --- a/pom.xml +++ b/pom.xml @@ -2662,6 +2662,25 @@ org.scijava scripting-renjin ${org.scijava.scripting-renjin.version} + + + + org.apache.commons + commons-math + + From 4eea78f66f353e937420d2441808cd4fa9895d6b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 11 Dec 2024 14:51:54 -0600 Subject: [PATCH 048/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8c2d249..dd2b187 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 40.0.0-SNAPSHOT + 40.0.1-SNAPSHOT pom SciJava Parent POM From a21b09fa164eb0e33c69b20c926a177c82aa7935 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 14 Jan 2025 14:27:05 -0600 Subject: [PATCH 049/252] Update app-launcher: 2.0.0 -> 2.1.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dd2b187..69ef69c 100644 --- a/pom.xml +++ b/pom.xml @@ -306,7 +306,7 @@ - 2.0.0 + 2.1.0 ${app-launcher.version} From b66157511673a7e86a50811155837546d25d5144 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 28 Jan 2025 11:49:45 -0600 Subject: [PATCH 050/252] mega-melt: skip n5-universe MetadataTests One of the tests is failing a not-null assertion check. Let's not let it hold up the rest of the melting pot. --- tests/run.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index ccc184b..bfd3799 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -361,14 +361,20 @@ sectionEnd # Adjusting the melting pot: melt.sh script sectionStart 'Adjusting the melting pot: unit test hacks' -# HACK: Remove flaky tests from imagej-ops builds. +# Remove flaky tests. + # CachedOpEnvironmentTest fails intermittently. Of course, it should be # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" +# Avoid notNull assertion error at +# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) +rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/janelia/saalfeldlab/n5/universe/metadata/MetadataTests.java" # In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: # java.util.NoSuchElementException: No value present -echo "org.janelia.saalfeldlab/n5-ij" >> "$skipTestsFile" && +rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/saalfeldlab/n5/metadata/ome/ngff/v04/WriteAxesTests.java" + +# Skip testing of components with non-working tests. # Error while checking the CLIJ2 installation: null echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || From d5f5e52ca2c2964eda3e799c4020adcb1d9d7f39 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Tue, 28 Jan 2025 14:46:15 +0100 Subject: [PATCH 051/252] BoneJ v7.0.20 Version bump for BoneJ, bringin it up to date with scijava 40.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 69ef69c..bf394cc 100644 --- a/pom.xml +++ b/pom.xml @@ -1198,7 +1198,7 @@ ${multiview-simulation.version} - 7.0.19 + 7.0.20 ${bonej.version} ${bonej.version} ${bonej.version} From dd6916e9ecb7e8ee9acb425960117aa6b76c0da0 Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Thu, 6 Feb 2025 16:45:07 -0600 Subject: [PATCH 052/252] Update to Bio-Formats 8.1.0 Dependencies that were upgraded in 8.1.0 have also been updated to match here, see https://bio-formats.readthedocs.io/en/stable/about/whats-new.html#february --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index bf394cc..d3dd44f 100644 --- a/pom.xml +++ b/pom.xml @@ -1233,15 +1233,15 @@ ${ice.version} - 1.0.3 + 1.1.0 ${ome-codecs.version} - 6.0.24 + 6.0.25 ${ome-common.version} - 5.3.7 + 5.3.8 ${metakit.version} @@ -1249,7 +1249,7 @@ ${ome-poi.version} - 6.3.6 + 6.4.0 ${ome-model.version} ${ome-model.version} ${ome-xml.version} @@ -1261,7 +1261,7 @@ ${jxrlib-all.version} - 8.0.1 + 8.1.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 5640242b97af38d7b90c202f2b2492c66b303af3 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 13 Feb 2025 10:00:20 -0600 Subject: [PATCH 053/252] Add missing n5-zstandard dependency stanza @bogovicj Note that the property doesn't do anything unless you also add it to the dependencyManagement. --- pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pom.xml b/pom.xml index d3dd44f..c37f4c4 100644 --- a/pom.xml +++ b/pom.xml @@ -3757,6 +3757,11 @@ n5-zarr ${org.janelia.saalfeldlab.n5-zarr.version} + + org.janelia.saalfeldlab + n5-zstandard + ${org.janelia.saalfeldlab.n5-zstandard.version} + From 2856b8268fccd3305eec1dc81d511296b9effc9a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 13 Feb 2025 11:04:33 -0600 Subject: [PATCH 054/252] Fix n5-zstandard version property name The groupId portion was wrong. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c37f4c4..61df100 100644 --- a/pom.xml +++ b/pom.xml @@ -1162,7 +1162,7 @@ 1.0.2 - ${n5-zstandard.version} + ${n5-zstandard.version} From f6ffd2c38df1ea8b63d082073325952eb7ab814a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 13 Feb 2025 16:15:49 -0600 Subject: [PATCH 055/252] Fix groupId for n5-zstandard Unlike the other n5 artifacts, the groupId is org.janelia, not org.janelia.saalfeldlab. --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 61df100..d682648 100644 --- a/pom.xml +++ b/pom.xml @@ -1162,7 +1162,7 @@ 1.0.2 - ${n5-zstandard.version} + ${n5-zstandard.version} @@ -3758,9 +3758,9 @@ ${org.janelia.saalfeldlab.n5-zarr.version} - org.janelia.saalfeldlab + org.janelia n5-zstandard - ${org.janelia.saalfeldlab.n5-zstandard.version} + ${org.janelia.n5-zstandard.version} From 2ac9e9556f81a19278ce868de2351fde9bca8024 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 17 Feb 2025 12:19:03 -0600 Subject: [PATCH 056/252] Update net.imagej:ij: 1.54g -> 1.54m --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d682648..7f779e6 100644 --- a/pom.xml +++ b/pom.xml @@ -477,7 +477,7 @@ ${imagej.version} - 1.54g + 1.54m ${imagej1.version} ${ij.version} From 2714457eda8672df164a3a4867da3297c3e4a28b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 17 Feb 2025 17:47:15 -0600 Subject: [PATCH 057/252] Update cleargl: 2.2.10 -> 2.2.11 The 2.2.11 release updates JOGL from 2.3.2 to 2.5.0, and has properly declared platform-specific dependencies. --- pom.xml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/pom.xml b/pom.xml index 7f779e6..0a57ec8 100644 --- a/pom.xml +++ b/pom.xml @@ -1311,8 +1311,8 @@ 0.4.8 ${coremem.version} - - 2.2.10 + + 2.2.11 ${cleargl.version} @@ -4240,23 +4240,11 @@ - + net.clearvolume cleargl ${net.clearvolume.cleargl.version} - - - - org.jogamp.gluegen - gluegen-rt-main - - - - org.jogamp.jogl - jogl-all-main - - From 1da8abc139ecf436b955d4aa878871d2353a78b2 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 17 Feb 2025 18:40:28 -0600 Subject: [PATCH 058/252] Update net.imagej:ij: 1.54m -> 1.54n --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0a57ec8..77e6277 100644 --- a/pom.xml +++ b/pom.xml @@ -477,7 +477,7 @@ ${imagej.version} - 1.54m + 1.54n ${imagej1.version} ${ij.version} From c940a0a9339295c4375d089aef324dbfd2c8713c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 19 Feb 2025 11:10:16 -0600 Subject: [PATCH 059/252] Bump minor version digit The app-launcher version advanced from 2.0.0 to 2.1.0, so by transitive SemVer (which this BOM follows), we need a minor digit increment, too. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 77e6277..29fb930 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 40.0.1-SNAPSHOT + 40.1.0-SNAPSHOT pom SciJava Parent POM From 333a14d4e3f22f95170f1ea0b8a49d23fd933825 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 19 Feb 2025 11:12:16 -0600 Subject: [PATCH 060/252] Update net.imagej:ij: 1.54n -> 1.54p --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 29fb930..3b182f2 100644 --- a/pom.xml +++ b/pom.xml @@ -477,7 +477,7 @@ ${imagej.version} - 1.54n + 1.54p ${imagej1.version} ${ij.version} From 997136cccdd6338cd26cffa60387878de29dd580 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 3 Mar 2025 13:57:26 -0600 Subject: [PATCH 061/252] mega-melt: disable ij1-patcher/imagej-legacy tests Until the new failures can be investigated in detail. --- tests/generate-mega-melt.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index 1b548da..69c9298 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -31,6 +31,10 @@ def child(node, tag): # because it has a module-info.java, so skip it until the # component collection is updated from Java 8 to Java 11. 'ij', + # TEMP: The original ImageJ introduced changes in + # 1.54m/1.54n/1.54p that breaks some downstream tests. + # Disable them till we have time to address the issue. + 'ij1-patcher', 'imagej-legacy', # NB: Skip artifacts requiring minimum Java version >8. 'algart-tiff', # NB: The following artifacts have messy dependency trees. From 0751d6f0af59efe5178a7017639022e21054982e Mon Sep 17 00:00:00 2001 From: Karl Duderstadt Date: Mon, 3 Mar 2025 14:24:35 +0100 Subject: [PATCH 062/252] Add jackson-dataformat-smile to pom Co-authored-by: Curtis Rueden --- pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pom.xml b/pom.xml index 3b182f2..c75a40e 100644 --- a/pom.xml +++ b/pom.xml @@ -1840,11 +1840,13 @@ ${jackson.version} ${jackson.version} ${jackson.version} + ${jackson.version} ${jackson.version} ${jackson-annotations.version} ${jackson-core.version} ${jackson-databind.version} ${jackson-dataformat-cbor.version} + ${jackson-dataformat-smile.version} ${jackson-dataformat-yaml.version} @@ -5430,6 +5432,11 @@ jackson-dataformat-cbor ${com.fasterxml.jackson.dataformat.jackson-dataformat-cbor.version} + + com.fasterxml.jackson.dataformat + jackson-dataformat-smile + ${com.fasterxml.jackson.dataformat.jackson-dataformat-smile.version} + com.fasterxml.jackson.dataformat jackson-dataformat-yaml From 7732316cd4cbf6887794c93741ae7ae6123396f3 Mon Sep 17 00:00:00 2001 From: pwalczysko Date: Wed, 5 Mar 2025 18:01:52 +0000 Subject: [PATCH 063/252] Update to Bio-Formats 8.1.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3b182f2..3ef1f74 100644 --- a/pom.xml +++ b/pom.xml @@ -1261,7 +1261,7 @@ ${jxrlib-all.version} - 8.1.0 + 8.1.1 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 02bda7a16fba233766bed81f41fff6f8c04e32cd Mon Sep 17 00:00:00 2001 From: hinerm Date: Thu, 20 Mar 2025 08:31:08 -0500 Subject: [PATCH 064/252] Update scijava-search to 3.0.0 Scijava-search bumped from 2.0.5 -> 3.0.0 This added set-icon-size API. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 01bb37e..37ed0b3 100644 --- a/pom.xml +++ b/pom.xml @@ -386,7 +386,7 @@ ${scijava-plugins-text-plain.version} - 2.0.5 + 3.0.0 ${scijava-search.version} From c1fd808aa91aa3f7085c5a9350f757a786654246 Mon Sep 17 00:00:00 2001 From: hinerm Date: Thu, 20 Mar 2025 08:36:05 -0500 Subject: [PATCH 065/252] Bump imagej-legacy to 2.0.1 2.0.1 uses the setIconSize API of scijava-search 3.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 37ed0b3..b4f1490 100644 --- a/pom.xml +++ b/pom.xml @@ -498,7 +498,7 @@ ${imagej-launcher.version} - 2.0.0 + 2.0.1 ${imagej-legacy.version} From 203b6ff04a9eda45ac03ba385d375858d258f7bb Mon Sep 17 00:00:00 2001 From: Tiago Ferreira Date: Tue, 25 Mar 2025 13:06:20 -0400 Subject: [PATCH 066/252] Update FlatLaf, RSyntaxTextArea, AutoComplete --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index b4f1490..62edec2 100644 --- a/pom.xml +++ b/pom.xml @@ -1681,7 +1681,7 @@ ${error_prone_annotations.version} - 3.5.1 + 3.5.4 ${flatlaf.version} 2.304 ${flatlaf-fonts-jetbrains-mono.version} @@ -2322,8 +2322,8 @@ ${reload4j.version} - 3.5.1 - 3.3.1 + 3.6.0 + 3.3.2 3.3.0 ${rsyntaxtextarea.version} ${autocomplete.version} From 122a951925f389a359bc5d24a8d98166ca5fcea3 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Apr 2025 19:35:06 -0500 Subject: [PATCH 067/252] Update imglib2-algorithm: 0.16.0 -> 0.18.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 62edec2..109fbee 100644 --- a/pom.xml +++ b/pom.xml @@ -588,7 +588,7 @@ ${imglib2.version} - 0.16.0 + 0.18.0 ${imglib2-algorithm.version} From 12d02040b7fce393655b10291fa9f3d67f6a8e41 Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Sat, 19 Apr 2025 11:15:45 +0200 Subject: [PATCH 068/252] Update imglib2-algorithm: 0.18.0 -> 0.18.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 109fbee..ff4a7f1 100644 --- a/pom.xml +++ b/pom.xml @@ -588,7 +588,7 @@ ${imglib2.version} - 0.18.0 + 0.18.1 ${imglib2-algorithm.version} From 980d52559e5392371c64dc27801294c225fe8dcb Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Mon, 21 Apr 2025 11:57:35 +0200 Subject: [PATCH 069/252] Update imglib2: 7.1.2 -> 7.1.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ff4a7f1..fb1dc65 100644 --- a/pom.xml +++ b/pom.xml @@ -584,7 +584,7 @@ - 7.1.2 + 7.1.5 ${imglib2.version} From c78aff051f191f5565b6f70e3e156da983e3cfeb Mon Sep 17 00:00:00 2001 From: tpietzsch Date: Mon, 21 Apr 2025 11:58:18 +0200 Subject: [PATCH 070/252] Update bigdataviewer-core: 10.6.1 -> 10.6.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index fb1dc65..09e985b 100644 --- a/pom.xml +++ b/pom.xml @@ -1016,7 +1016,7 @@ - 10.6.1 + 10.6.4 ${bigdataviewer-core.version} From 1917850b12296832aa652a99d95acb09cd254ddc Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 26 Mar 2025 16:01:06 -0500 Subject: [PATCH 071/252] Update scripting-clojure: 0.1.6 -> 1.0.0 Which implicitly updates clojure: 1.8.0 -> 1.12.0, which addresses CVE-2017-20189. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 09e985b..5e8f4cd 100644 --- a/pom.xml +++ b/pom.xml @@ -418,7 +418,7 @@ ${scripting-beanshell.version} - 0.1.6 + 1.0.0 ${scripting-clojure.version} From fda7549fc5120972332104b2bbd1504a4abdff87 Mon Sep 17 00:00:00 2001 From: Caleb Hulbert Date: Tue, 15 Apr 2025 14:56:07 -0400 Subject: [PATCH 072/252] n5 library version bumps --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 5e8f4cd..5325961 100644 --- a/pom.xml +++ b/pom.xml @@ -1121,11 +1121,11 @@ ${imglib2-label-multisets.version} - 3.3.0 + 3.5.0 ${n5.version} - 4.2.1 + 4.3.0 ${n5-aws-s3.version} @@ -1133,7 +1133,7 @@ ${n5-blosc.version} - 4.1.1 + 5.1.0 ${n5-google-cloud.version} @@ -1141,7 +1141,7 @@ ${n5-hdf5.version} - 4.2.5 + 4.3.0 ${n5-ij.version} @@ -1149,7 +1149,7 @@ ${n5-imglib2.version} - 1.6.0 + 2.3.0 ${n5-universe.version} @@ -1157,7 +1157,7 @@ ${n5-viewer_fiji.version} - 1.3.5 + 1.5.1 ${n5-zarr.version} From 88524031d3515d2d8e241c6174d6bfe3da634f72 Mon Sep 17 00:00:00 2001 From: Caleb Hulbert Date: Tue, 15 Apr 2025 15:08:42 -0400 Subject: [PATCH 073/252] bump n5-ij --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 5325961..888fe5f 100644 --- a/pom.xml +++ b/pom.xml @@ -1141,7 +1141,7 @@ ${n5-hdf5.version} - 4.3.0 + 4.4.0 ${n5-ij.version} From 11c98b25c42f34d2e5f947f77bd2cb0e36b465c6 Mon Sep 17 00:00:00 2001 From: Caleb Hulbert Date: Tue, 15 Apr 2025 15:55:12 -0400 Subject: [PATCH 074/252] bump n5-hdf5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 888fe5f..65bbe74 100644 --- a/pom.xml +++ b/pom.xml @@ -1137,7 +1137,7 @@ ${n5-google-cloud.version} - 2.2.0 + 2.2.1 ${n5-hdf5.version} From 3f9d1c907373ef0d075e36427bff40d6d272516b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Apr 2025 14:58:06 -0500 Subject: [PATCH 075/252] Update BigStitcher and multiview-reconstruction * BigStitcher: 2.0.1 -> 2.5.0 * multiview-reconstruction: 4.1.1 -> 5.4.1 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 65bbe74..4596738 100644 --- a/pom.xml +++ b/pom.xml @@ -1190,8 +1190,8 @@ ${clijx-weka_.version} - 2.0.1 - 4.1.1 + 2.5.0 + 5.4.1 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} From 820f4c67d70d03a823206b00f910e40148e68042 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 24 Apr 2025 12:44:23 -0500 Subject: [PATCH 076/252] Update script-editor: 1.1.0 -> 1.1.1 This accommodates RSyntaxTextArea 3.6.0; see #288. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4596738..18179cc 100644 --- a/pom.xml +++ b/pom.xml @@ -402,7 +402,7 @@ ${scijava-ui-swing.version} - 1.1.0 + 1.1.1 ${script-editor.version} From 9ccb7966fc84896fd0285e317b6119adc44d9fcf Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 6 May 2025 14:14:10 -0500 Subject: [PATCH 077/252] Update imagej-ui-swing 1.0.1 -> 1.1.1 This has the latest Fiji upgrade logic that works on Mac --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 18179cc..ab296de 100644 --- a/pom.xml +++ b/pom.xml @@ -570,7 +570,7 @@ ${imagej-ui-awt.version} - 1.0.1 + 1.1.1 ${imagej-ui-swing.version} From f498ff047e7679709ba8d9945fcdda3bc3def05b Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 6 May 2025 15:10:43 -0500 Subject: [PATCH 078/252] ImageJ-ui-swing 1.1.1 -> 1.1.2 Now also fixed on Windows (again) --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ab296de..1f2da6e 100644 --- a/pom.xml +++ b/pom.xml @@ -570,7 +570,7 @@ ${imagej-ui-awt.version} - 1.1.1 + 1.1.2 ${imagej-ui-swing.version} From 9ffbe05c4f13e03695337dd207bd8eab37a86578 Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 6 May 2025 15:21:50 -0500 Subject: [PATCH 079/252] Update app-launcher 2.1.0 -> 2.1.2 Improves the Java upgrade process --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1f2da6e..3a329d6 100644 --- a/pom.xml +++ b/pom.xml @@ -306,7 +306,7 @@ - 2.1.0 + 2.1.2 ${app-launcher.version} From 4b3b4ee4a45ef9a0cfdcbcebb956c9d2193f9240 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Fri, 9 May 2025 13:10:49 +0200 Subject: [PATCH 080/252] BoneJ v7.1.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3a329d6..46d10c6 100644 --- a/pom.xml +++ b/pom.xml @@ -1198,7 +1198,7 @@ ${multiview-simulation.version} - 7.0.20 + 7.1.1 ${bonej.version} ${bonej.version} ${bonej.version} From b07e32606ae154778ecd1eb812bf97009ffefb04 Mon Sep 17 00:00:00 2001 From: hinerm Date: Mon, 12 May 2025 14:23:34 -0500 Subject: [PATCH 081/252] imagej-updater 1.0.1 -> 1.1.2 Includes logic for properly archiving Fiji.app compatible with code signing on mac. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3a329d6..f025a08 100644 --- a/pom.xml +++ b/pom.xml @@ -574,7 +574,7 @@ ${imagej-ui-swing.version} - 1.0.1 + 1.1.2 ${imagej-updater.version} From ede75bd77a1fb8a92c09cefb5a91133894f0cf2e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 12 May 2025 21:42:28 -0500 Subject: [PATCH 082/252] Manage the version of JavaFX artifacts Initial version at 23.0.2, which requires a minimum of OpenJDK 21. --- pom.xml | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 62 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f025a08..638064d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.scijava pom-scijava-base - 20.0.0 + 20.1.0 @@ -2047,6 +2047,23 @@ ${jmh-core.version} ${jmh-generator-annprocess.version} + + 23.0.2 + ${javafx.version} + ${javafx.version} + ${javafx.version} + ${javafx.version} + ${javafx.version} + ${javafx.version} + ${javafx.version} + ${javafx-base.version} + ${javafx-controls.version} + ${javafx-fxml.version} + ${javafx-graphics.version} + ${javafx-media.version} + ${javafx-swing.version} + ${javafx-web.version} + 1.49 ${jmockit.version} @@ -6916,6 +6933,50 @@ ${org.openjdk.jmh.jmh-generator-annprocess.version} test + + + + org.openjfx + javafx-base + ${org.openjfx.javafx-base.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-controls + ${org.openjfx.javafx-controls.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-fxml + ${org.openjfx.javafx-fxml.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-graphics + ${org.openjfx.javafx-graphics.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-media + ${org.openjfx.javafx-media.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-swing + ${org.openjfx.javafx-swing.version} + ${scijava.natives.javafx.classifier} + + + org.openjfx + javafx-web + ${org.openjfx.javafx-web.version} + ${scijava.natives.javafx.classifier} + From 9e56ca048d075cad92a97dd227bbdba1e076cf5f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 12 May 2025 23:21:32 -0500 Subject: [PATCH 083/252] Update component versions * scijava-common: 2.99.0 -> 2.99.1 * imagej-ui-swing: 1.1.2 -> 1.1.3 * imagej-updater: 1.1.2 -> 2.0.0 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 638064d..38f153b 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 40.1.0-SNAPSHOT + 41.0.0-SNAPSHOT pom SciJava Parent POM @@ -334,7 +334,7 @@ ${scijava-cache.version} - 2.99.0 + 2.99.1 ${scijava-common.version} @@ -570,11 +570,11 @@ ${imagej-ui-awt.version} - 1.1.2 + 1.1.3 ${imagej-ui-swing.version} - 1.1.2 + 2.0.0 ${imagej-updater.version} From e735433c8ab17c5b0595c3450d1571e5c1ccdf00 Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 20 May 2025 10:39:23 -0500 Subject: [PATCH 084/252] imagej-updater 2.0.0 -> 2.0.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 38f153b..5e24c3b 100644 --- a/pom.xml +++ b/pom.xml @@ -574,7 +574,7 @@ ${imagej-ui-swing.version} - 2.0.0 + 2.0.1 ${imagej-updater.version} From 8b5962d65de5dc108bc7245be3521105da36e5fb Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 20 May 2025 10:41:42 -0500 Subject: [PATCH 085/252] app-launcher 2.1.2 -> 2.2.0 Facilitate Java upgrade without shutdown --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 5e24c3b..989011a 100644 --- a/pom.xml +++ b/pom.xml @@ -306,7 +306,7 @@ - 2.1.2 + 2.2.0 ${app-launcher.version} From e18c8e009cadfe2b1589585ab65de120f4a2c537 Mon Sep 17 00:00:00 2001 From: hinerm Date: Tue, 20 May 2025 11:01:09 -0500 Subject: [PATCH 086/252] Update imagej-ui-swing 1.1.3 -> 1.2.0 Expands upgrade functionality to work with Jaunch launcher and to upgrade Java as part of the upgrade --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 989011a..da8f89b 100644 --- a/pom.xml +++ b/pom.xml @@ -570,7 +570,7 @@ ${imagej-ui-awt.version} - 1.1.3 + 1.2.0 ${imagej-ui-swing.version} From 9cf73223e9e0584b94cfd13c495c31ce2a9f897e Mon Sep 17 00:00:00 2001 From: hinerm Date: Wed, 21 May 2025 08:52:17 -0500 Subject: [PATCH 087/252] imagej-ui-swing 1.2.0 -> 1.2.1 Fixes an upgrade bug on some systems --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index da8f89b..887fe7d 100644 --- a/pom.xml +++ b/pom.xml @@ -570,7 +570,7 @@ ${imagej-ui-awt.version} - 1.2.0 + 1.2.1 ${imagej-ui-swing.version} From 4ff1fdc2743d0f42e43058bc178701eee2c5d38f Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Wed, 28 May 2025 11:10:12 -0500 Subject: [PATCH 088/252] Update to Bio-Formats 8.2.0 See https://bio-formats.readthedocs.io/en/stable/about/whats-new.html#may --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 887fe7d..7effe94 100644 --- a/pom.xml +++ b/pom.xml @@ -1261,7 +1261,7 @@ ${jxrlib-all.version} - 8.1.1 + 8.2.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 12d2389fac1ac8ee7fee22b9e2b4cb3d25fa435b Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Fri, 6 Jun 2025 16:08:44 +0200 Subject: [PATCH 089/252] BoneJ v7.1.3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2954ff8..195122c 100644 --- a/pom.xml +++ b/pom.xml @@ -1198,7 +1198,7 @@ ${multiview-simulation.version} - 7.1.1 + 7.1.3 ${bonej.version} ${bonej.version} ${bonej.version} From 5aec70f3cb547edc06001d80aea9b6a5d41616f3 Mon Sep 17 00:00:00 2001 From: hinerm Date: Fri, 13 Jun 2025 09:00:51 -0500 Subject: [PATCH 090/252] Update component versions * scijava/app-launcher -> 2.3.1 * imagej/imagej-ui-swing -> 1.2.2 Required for the latest state of the Java 21 upgrade process. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 195122c..8d2308e 100644 --- a/pom.xml +++ b/pom.xml @@ -306,7 +306,7 @@ - 2.2.0 + 2.3.1 ${app-launcher.version} @@ -570,7 +570,7 @@ ${imagej-ui-awt.version} - 1.2.1 + 1.2.2 ${imagej-ui-swing.version} From e5a97bb8c3e533f457a4a3d6b3d1092f03f5d16b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 3 Jun 2025 14:42:09 -0500 Subject: [PATCH 091/252] Fix JavaFX native classifier property references --- pom.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 8d2308e..26ed7b6 100644 --- a/pom.xml +++ b/pom.xml @@ -6939,43 +6939,43 @@ org.openjfx javafx-base ${org.openjfx.javafx-base.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-controls ${org.openjfx.javafx-controls.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-fxml ${org.openjfx.javafx-fxml.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-graphics ${org.openjfx.javafx-graphics.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-media ${org.openjfx.javafx-media.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-swing ${org.openjfx.javafx-swing.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} org.openjfx javafx-web ${org.openjfx.javafx-web.version} - ${scijava.natives.javafx.classifier} + ${scijava.natives.classifier.javafx} From d6af2f15952a83078da2f91407bde4d26fdf47f9 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 15 Jul 2025 16:47:07 -0500 Subject: [PATCH 092/252] CI: update scijava-scripts main branch references --- .github/build.sh | 2 +- .github/setup.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/build.sh b/.github/build.sh index 3820a24..ba5e7a2 100755 --- a/.github/build.sh +++ b/.github/build.sh @@ -7,7 +7,7 @@ if [ -f release.properties ]; then fi # Run the SciJava CI build script. -curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/master/ci-build.sh && +curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-build.sh && sh ci-build.sh || { echo "Maven build failed. Skipping melting pot tests."; exit 1; } # Skip melting pot if cutting a release. diff --git a/.github/setup.sh b/.github/setup.sh index 4ca4704..6f254a7 100755 --- a/.github/setup.sh +++ b/.github/setup.sh @@ -1,5 +1,5 @@ #!/bin/sh -curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/master/ci-setup-github-actions.sh +curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-setup-github-actions.sh sh ci-setup-github-actions.sh # Install needed packages. From 9d79d90fd552c6dc3fbca1f2ded0b770b6ae6a12 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 15 Jul 2025 16:51:38 -0500 Subject: [PATCH 093/252] Update parent to pom-scijava-base 21.0.0 A vital change here is the update of Maven Central publishing mechanism from the obsolete nexus-staging-maven-plugin (OSSRH) to central-publishing-maven-plugin (Central Portal). --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 26ed7b6..b03023c 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.scijava pom-scijava-base - 20.1.0 + 21.0.0 From 36633d66a33500479c588e6ecdee9345841eea0e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 12:25:46 -0500 Subject: [PATCH 094/252] Downgrade coremem: 0.4.8 -> 0.4.5 The binary build for 0.4.8 was lost during the maven.scijava.org downtime last month. Looking at the source code at https://github.com/ClearVolume/coremem, I do not know where this version came from, as the version string there is only 0.4.5. The URL https://github.com/ClearControl/CoreMem is defunct. --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index b03023c..67fa6d9 100644 --- a/pom.xml +++ b/pom.xml @@ -1307,8 +1307,8 @@ - - 0.4.8 + + 0.4.5 ${coremem.version} @@ -4245,7 +4245,7 @@ - + net.clearcontrol coremem From 0de33018ce20b8102f387cf47a7901babe0bb607 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 12:28:53 -0500 Subject: [PATCH 095/252] Exclude javafx artifacts from mega-melt They require Java 21+, but the mega-melt currently runs with Java 8. --- tests/generate-mega-melt.py | 7 +++++++ tests/run.sh | 1 + 2 files changed, 8 insertions(+) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index 69c9298..d88a07e 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -37,6 +37,13 @@ def child(node, tag): 'ij1-patcher', 'imagej-legacy', # NB: Skip artifacts requiring minimum Java version >8. 'algart-tiff', + 'javafx-base', + 'javafx-controls', + 'javafx-fxml', + 'javafx-graphics', + 'javafx-media', + 'javafx-swing', + 'javafx-web', # NB: The following artifacts have messy dependency trees. # Too many problems to test as part of the mega-melt. # See WARNING block in pom-scijava's pom.xml for details. diff --git a/tests/run.sh b/tests/run.sh index bfd3799..d76c3ef 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -105,6 +105,7 @@ chmod +x "$meltingPotScript" && -i 'sc.fiji:*' \ -e 'net.imagej:ij' \ -e 'net.imglib2:imglib2-mesh' \ + -e 'org.openjfx:*' \ -e 'org.scijava:j3dcore' \ -e 'org.scijava:j3dutils' \ -e 'org.scijava:jep' \ From 96ecf71c78854d5d374ac80a582be7722a0de551 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 12:45:49 -0500 Subject: [PATCH 096/252] Exclude bonej-plus from mega-melt It is an optional closed-source extension to BoneJ, outside the scope of the pom-scijava Bill of Materials. --- tests/generate-mega-melt.py | 2 ++ tests/run.sh | 1 + 2 files changed, 3 insertions(+) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index d88a07e..7eacc9c 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -44,6 +44,8 @@ def child(node, tag): 'javafx-media', 'javafx-swing', 'javafx-web', + # NB: Skip closed-source artifacts. + 'bonej-plus', # NB: The following artifacts have messy dependency trees. # Too many problems to test as part of the mega-melt. # See WARNING block in pom-scijava's pom.xml for details. diff --git a/tests/run.sh b/tests/run.sh index d76c3ef..4165996 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -105,6 +105,7 @@ chmod +x "$meltingPotScript" && -i 'sc.fiji:*' \ -e 'net.imagej:ij' \ -e 'net.imglib2:imglib2-mesh' \ + -e 'org.bonej:bonej-plus' \ -e 'org.openjfx:*' \ -e 'org.scijava:j3dcore' \ -e 'org.scijava:j3dutils' \ From 37acbdd1ceb423dc4c07f085a7ac3323a3a40438 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 13:28:18 -0500 Subject: [PATCH 097/252] mega-melt: check proactively for working python --- tests/run.sh | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index 4165996..07c80ce 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -19,6 +19,17 @@ sectionEnd() { echo "Done! [$((endTime-startTime))s]" } +# Check prerequisites. + +# HACK: Work around macOS Python naming inconsistency. +if command -v python3 >/dev/null 2>&1; then + PYTHON=python3 +elif command -v python >/dev/null 2>&1; then + PYTHON=python +else + die "This script requires Python." +fi + sectionStart 'Generating mega-melt project' dir=$(cd "$(dirname "$0")" && pwd) @@ -57,7 +68,7 @@ cp "$pom" "$pomParent" && mvn -B -f "$pomParent" versions:set -DnewVersion=999-mega-melt > "$versionSwapLog" && mvn -B -f "$pomParent" install:install >> "$versionSwapLog" || die "pom-scijava version update failed:\n$(cat "$versionSwapLog")" -python "$generateMegaMeltScript" "$megaMeltDir" || die 'Generation failed!' +$PYTHON "$generateMegaMeltScript" "$megaMeltDir" || die 'Generation failed!' sectionEnd # Generating mega-melt project # Ensure the mega-melt dependency structure validates. @@ -68,7 +79,7 @@ sectionStart 'Validating mega-melt project' mvn -B -f "$megaMeltPOM" dependency:tree > "$dependencyTreeLog" || die "Invalid dependency tree:\n$(cat "$dependencyTreeLog")" mvn -B -f "$megaMeltPOM" -U clean package > "$validationLog" || { - python "$filterBuildLogScript" "$validationLog" > "$validationErrorsLog" + $PYTHON "$filterBuildLogScript" "$validationLog" > "$validationErrorsLog" die "Validation build failed!\n\nDependency tree:\n$(cat "$dependencyTreeLog")\n\nBuild log:\n$(cat "$validationErrorsLog")" } sectionEnd # Validating mega-melt project From 2bc59741ae57cf79b7603d774e926ddd862a5043 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 13:59:58 -0500 Subject: [PATCH 098/252] Ignore prereleases for n5 and junit components --- rules.xml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/rules.xml b/rules.xml index 3451542..d759bee 100644 --- a/rules.xml +++ b/rules.xml @@ -159,6 +159,16 @@ .*\.RC[0-9]+ + + + .*-(alpha|beta|rc)-?[0-9]+ + + + + + .*-(alpha|beta|rc)-?[0-9]+ + + .*-(Beta|RC)[0-9]* @@ -173,6 +183,16 @@ ^(?!1\.4\.).* + + + .*-(alpha|beta|rc|M)-?[0-9]+ + + + + + .*-(alpha|beta|rc|M)-?[0-9]+ + + - 2.99.1 + 2.99.2 ${scijava-common.version} @@ -450,7 +450,7 @@ ${scripting-matlab.version} - 0.3.0 + 0.4.0 ${scripting-python.version} @@ -526,7 +526,7 @@ ${imagej-omero-legacy.version} - 0.1.3 + 0.1.4 ${imagej-opencv.version} @@ -538,7 +538,7 @@ ${imagej-plugins-batch.version} - 0.8.2 + 1.0.0 ${imagej-plugins-commands.version} @@ -554,7 +554,7 @@ ${imagej-plugins-uploader-webdav.version} - 0.8.4 + 1.0.0 ${imagej-scripting.version} @@ -562,7 +562,7 @@ ${imagej-server.version} - 1.1.7 + 1.1.8 ${imagej-tensorflow.version} @@ -616,11 +616,11 @@ ${imglib2-mesh.version} - 4.0.3 + 4.0.4 ${imglib2-realtransform.version} - 0.15.1 + 0.15.2 ${imglib2-roi.version} @@ -789,7 +789,7 @@ 2.0.1 ${IJ_Robot.version} - 4.2.2 + 4.3.0 ${IO.version} ${IO_.version} @@ -995,7 +995,7 @@ ${jitk-tps.version} - 9.3.0 + 9.3.1 ${bigwarp.version} ${bigwarp_fiji.version} @@ -1036,7 +1036,7 @@ ${bigdataviewer-n5.version} - 0.3.4 + 0.4.1 ${bigvolumeviewer.version} @@ -1190,8 +1190,8 @@ ${clijx-weka_.version} - 2.5.0 - 5.4.1 + 2.5.1 + 6.1.0 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} @@ -1322,7 +1322,7 @@ ${org.abego.treelayout.core.version} - 1.3.7 + 1.4.0 ${algart-tiff.version} @@ -1577,7 +1577,7 @@ 3.2.2 - 4.5.0-M2 + 4.5.0 ${commons-collections.version} ${commons-collections4.version} From 27cd9679b14b9e8387b8a7401a434711fc0ac1ee Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 14:29:41 -0500 Subject: [PATCH 100/252] Remove obsolete imagej-launcher component from BOM --- pom.xml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/pom.xml b/pom.xml index bd463e2..ab78968 100644 --- a/pom.xml +++ b/pom.xml @@ -493,10 +493,6 @@ 0.2.0 ${imagej-deprecated.version} - - 6.0.2 - ${imagej-launcher.version} - 2.0.1 ${imagej-legacy.version} @@ -2766,13 +2762,6 @@ ${net.imagej.imagej-deprecated.version} - - - net.imagej - imagej-launcher - ${net.imagej.imagej-launcher.version} - - net.imagej From ae85e802bdc7750e0a6b1ff230c6735cedf6d296 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 14:58:41 -0500 Subject: [PATCH 101/252] Update component versions preemptively * ij1-patcher: 1.2.8 -> 1.2.9 * imagej-legacy: 2.0.1 -> 2.0.2 These components need new releases to fix the mega-melt. But they cannot be released until a new pom-scijava is released that incorporates the new Maven Central publication mechanism. So for the moment, we bump the versions preemptively, skip the mega-melt, and get a new pom-scijava released. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index ab78968..9c6b43f 100644 --- a/pom.xml +++ b/pom.xml @@ -482,7 +482,7 @@ ${ij.version} - 1.2.8 + 1.2.9 ${ij1-patcher.version} @@ -494,7 +494,7 @@ ${imagej-deprecated.version} - 2.0.1 + 2.0.2 ${imagej-legacy.version} From 487070bcc7dcd9528206e4522d719edd8243289f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 15:02:00 -0500 Subject: [PATCH 102/252] CI: rename env vars for Central credentials This switches from OSSRH to Central Portal Publishing. See: * https://central.sonatype.org/pages/ossrh-eol/ * https://central.sonatype.org/publish/publish-portal-maven/ --- .github/workflows/build.yml | 4 ++-- .github/workflows/release.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9d71626..91dc957 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,8 +42,8 @@ jobs: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} MAVEN_USER: ${{ secrets.MAVEN_USER }} MAVEN_PASS: ${{ secrets.MAVEN_PASS }} - OSSRH_USER: ${{ secrets.OSSRH_USER }} - OSSRH_PASS: ${{ secrets.OSSRH_PASS }} + CENTRAL_USER: ${{ secrets.CENTRAL_USER }} + CENTRAL_PASS: ${{ secrets.CENTRAL_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} - name: Delete the melting-pot cache diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 74c1018..8d2b682 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,6 +30,6 @@ jobs: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} MAVEN_USER: ${{ secrets.MAVEN_USER }} MAVEN_PASS: ${{ secrets.MAVEN_PASS }} - OSSRH_USER: ${{ secrets.OSSRH_USER }} - OSSRH_PASS: ${{ secrets.OSSRH_PASS }} + CENTRAL_USER: ${{ secrets.CENTRAL_USER }} + CENTRAL_PASS: ${{ secrets.CENTRAL_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} From d7bea8e2ab4cdf691d4fde31a10d8dec2a8ecdc5 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 16 Jul 2025 15:04:53 -0500 Subject: [PATCH 103/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9c6b43f..5864679 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 41.0.0-SNAPSHOT + 41.0.1-SNAPSHOT pom SciJava Parent POM From d35006d9c017daa810c22cbf8996d8a4efab66fc Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 23 Jul 2025 09:58:58 -0500 Subject: [PATCH 104/252] Disable the persistent Gradle daemon Extra processes should not be left lying around after the build ends! --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 5864679..a64d311 100644 --- a/pom.xml +++ b/pom.xml @@ -7016,6 +7016,7 @@ ${gradle.wrapper} ${basedir}/gradle-scijava + --no-daemon --project-cache-dir ../target/gradle/build generateCatalogAndPlatform From 404dd7274222cd849edbce868523b84b64d87e2b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 23 Jul 2025 10:39:02 -0500 Subject: [PATCH 105/252] Update parent to pom-scijava-base 21.1.0 This adds support for new scijava properties that allow to configure extra VM arguments as well as JPMS-specific (i.e. Java 9+) arguments. And the VM argument --add-opens=java.base/java.lang=ALL-UNNAMED is included by default when Java 9+ is used, so that the ReflectionUnlocker class of org.scijava:app-launcher can be used more easily to avoid burdensome reflection restrictions on modularized Java code. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a64d311..e0513b2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,12 +6,12 @@ org.scijava pom-scijava-base - 21.0.0 + 21.1.0 pom-scijava - 41.0.1-SNAPSHOT + 41.1.0-SNAPSHOT pom SciJava Parent POM From 6eddab4472b34c17f0c3759d90b9c3b02ae56a06 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 23 Jul 2025 11:55:37 -0500 Subject: [PATCH 106/252] Update component versions * ij1-patcher: 1.2.9 -> 2.0.0 * bigwarp: 9.3.1 -> 9.3.2 --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index e0513b2..726875e 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 41.1.0-SNAPSHOT + 42.0.0-SNAPSHOT pom SciJava Parent POM @@ -482,7 +482,7 @@ ${ij.version} - 1.2.9 + 2.0.0 ${ij1-patcher.version} @@ -991,7 +991,7 @@ ${jitk-tps.version} - 9.3.1 + 9.3.2 ${bigwarp.version} ${bigwarp_fiji.version} From dd666e924f834f17b5c2496d1add607c8c122e57 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Mon, 28 Jul 2025 13:34:16 +0300 Subject: [PATCH 107/252] BoneJ v7.1.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 726875e..654c9bd 100644 --- a/pom.xml +++ b/pom.xml @@ -1194,7 +1194,7 @@ ${multiview-simulation.version} - 7.1.3 + 7.1.4 ${bonej.version} ${bonej.version} ${bonej.version} From f78d1ba84ca40bb2b5e7a3f4f83b6b3137e16f68 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 Aug 2025 17:18:27 -0500 Subject: [PATCH 108/252] mega-melt: Ignore broken labkit-ui IJ macro test --- tests/run.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/run.sh b/tests/run.sh index 07c80ce..5468977 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -387,6 +387,20 @@ rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/jane # java.util.NoSuchElementException: No value present rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/saalfeldlab/n5/metadata/ome/ngff/v04/WriteAxesTests.java" +# In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: +# Macro Error: "probability map for blobs.tif" not found in line 4 +# selectImage ( <"probability map for blobs.tif"> ) ; +# java.lang.RuntimeException: Macro canceled +# at ij.macro.Interpreter.error(Interpreter.java:1403) +# at ij.macro.Functions.selectImage(Functions.java:3225) +# at ij.macro.Functions.doFunction(Functions.java:136) +# at ij.macro.Interpreter.doStatement(Interpreter.java:280) +# at ij.macro.Interpreter.doStatements(Interpreter.java:266) +# at ij.macro.Interpreter.run(Interpreter.java:162) +# at ij.macro.Interpreter.run(Interpreter.java:92) +# at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) +rm -f "$meltingPotDir/sc.fiji/labkit-ui-/src/test/java/sc/fiji/labkit/ui/plugin/CalculateProbabilityMapWithLabkitIJ1PluginTest.java" + # Skip testing of components with non-working tests. # Error while checking the CLIJ2 installation: null From ac6bd468e6b6109a0493941d1f20df214934d250 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 Aug 2025 17:20:14 -0500 Subject: [PATCH 109/252] Update component versions preemptively * net.imagej:imagej: 2.16.0 -> 2.17.0 * sc.fiji:fiji: 2.16.0 -> 2.17.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 654c9bd..cb05d6e 100644 --- a/pom.xml +++ b/pom.xml @@ -472,7 +472,7 @@ - 2.16.0 + 2.17.0 ${imagej2.version} ${imagej.version} @@ -660,7 +660,7 @@ - 2.16.0 + 2.17.0 ${fiji.version} From cac1aa2e704fe75776852a252241696c30acea71 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 Aug 2025 17:22:15 -0500 Subject: [PATCH 110/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index cb05d6e..1ee9e52 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 42.0.0-SNAPSHOT + 42.0.1-SNAPSHOT pom SciJava Parent POM From eec56e6ef3bc5e631add834b33ceddc031902caf Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 13 Aug 2025 12:27:38 -0500 Subject: [PATCH 111/252] mega-melt: fix typo in labkit-ui test path --- tests/run.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/run.sh b/tests/run.sh index 5468977..0dfad60 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -399,7 +399,7 @@ rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/sa # at ij.macro.Interpreter.run(Interpreter.java:162) # at ij.macro.Interpreter.run(Interpreter.java:92) # at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) -rm -f "$meltingPotDir/sc.fiji/labkit-ui-/src/test/java/sc/fiji/labkit/ui/plugin/CalculateProbabilityMapWithLabkitIJ1PluginTest.java" +rm -f "$meltingPotDir/sc.fiji/labkit-ui/src/test/java/sc/fiji/labkit/ui/plugin/CalculateProbabilityMapWithLabkitIJ1PluginTest.java" # Skip testing of components with non-working tests. From 5d09053b5d21e22cc77290f1ddacf0e9d9e6559d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 13 Aug 2025 12:26:34 -0500 Subject: [PATCH 112/252] Update n5: 3.5.0 -> 3.5.1 Hopefully this fixes the mega-melt's failing tests in n5 components: Error: org.janelia.saalfeldlab.n5.N5CachedFSTest.cacheBehaviorTest -- Time elapsed: 0.037 s <<< FAILURE! arrays first differed at element [0]; expected:<[b]> but was:<[c]> at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:78) ... at org.janelia.saalfeldlab.n5.N5CachedFSTest.cacheBehaviorHelper(N5CachedFSTest.java:435) at org.janelia.saalfeldlab.n5.N5CachedFSTest.cacheBehaviorTest(N5CachedFSTest.java:151) Error: org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest -- Time elapsed: 0.050 s <<< FAILURE! arrays first differed at element [0]; expected:<[a]> but was:<[c]> at org.junit.internal.ComparisonCriteria.arrayEquals(ComparisonCriteria.java:78) ... at org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.zarrCacheBehaviorHelper(ZarrCachedFSTest.java:383) at org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest(ZarrCachedFSTest.java:156) --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1ee9e52..13093c5 100644 --- a/pom.xml +++ b/pom.xml @@ -1117,7 +1117,7 @@ ${imglib2-label-multisets.version} - 3.5.0 + 3.5.1 ${n5.version} From 3a226ac1cab6b19133d2fd092ba498bff2b12589 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 13 Aug 2025 12:37:22 -0500 Subject: [PATCH 113/252] mega-melt: sort unit test hacks consistently --- tests/run.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/run.sh b/tests/run.sh index 0dfad60..13c3af7 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -379,14 +379,15 @@ sectionStart 'Adjusting the melting pot: unit test hacks' # CachedOpEnvironmentTest fails intermittently. Of course, it should be # somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" -# Avoid notNull assertion error at -# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) -rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/janelia/saalfeldlab/n5/universe/metadata/MetadataTests.java" # In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: # java.util.NoSuchElementException: No value present rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/saalfeldlab/n5/metadata/ome/ngff/v04/WriteAxesTests.java" +# Avoid notNull assertion error at +# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) +rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/janelia/saalfeldlab/n5/universe/metadata/MetadataTests.java" + # In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: # Macro Error: "probability map for blobs.tif" not found in line 4 # selectImage ( <"probability map for blobs.tif"> ) ; From 6a565be70e46078ecff6d305864d5876af00ba78 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 13 Aug 2025 13:20:55 -0500 Subject: [PATCH 114/252] mega-melt: skip n5-zarr ZarrCachedFSTest for now The test incorrectly fails in the released n5-zarr 1.5.1, It is fixed as of n5-zarr 2.0.0-alpha-1, but that release presumably comes with other breaking changes, and is not yet ready to be included in the SciJava Bill of Materials. --- tests/run.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/run.sh b/tests/run.sh index 13c3af7..6d5d9a5 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -388,6 +388,13 @@ rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/sa # org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/janelia/saalfeldlab/n5/universe/metadata/MetadataTests.java" +# In org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest: +# arrays first differed at element [0]; expected:<[a]> but was:<[c]> +rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-zarr/src/test/java/org/janelia/saalfeldlab/n5/zarr/ZarrCachedFSTest.java" +# Note: The above test is fixed with saalfeldlab/n5-zarr@e7edcec3, +# but the fix is only available in n5-zarr 2.0.0-alpha-1, and we +# do not want to update the SciJava BOM to the alpha version. + # In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: # Macro Error: "probability map for blobs.tif" not found in line 4 # selectImage ( <"probability map for blobs.tif"> ) ; From 6282854af97a79538c8a9c2d5c72e3f4967cd27d Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Wed, 13 Aug 2025 09:40:59 -0500 Subject: [PATCH 115/252] Update to Bio-Formats 8.3.0 Includes updates to other OME dependencies as indicated in https://www.openmicroscopy.org/2025/08/05/bio-formats-8-3-0.html --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 13093c5..ebc4be8 100644 --- a/pom.xml +++ b/pom.xml @@ -1229,23 +1229,23 @@ ${ice.version} - 1.1.0 + 1.1.1 ${ome-codecs.version} - 6.0.25 + 6.1.0 ${ome-common.version} - 5.3.8 + 5.3.9 ${metakit.version} - 5.3.9 + 5.3.10 ${ome-poi.version} - 6.4.0 + 6.5.0 ${ome-model.version} ${ome-model.version} ${ome-xml.version} @@ -1257,7 +1257,7 @@ ${jxrlib-all.version} - 8.2.0 + 8.3.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From e7a54e31e5021966a44624b8bcbe936e5308b78a Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Wed, 13 Aug 2025 09:43:06 -0500 Subject: [PATCH 116/252] Update to commons-lang3 3.18.0 This matches the version used in Bio-Formats 8.3.0, see https://www.openmicroscopy.org/2025/08/05/bio-formats-8-3-0.html --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ebc4be8..b4b4d49 100644 --- a/pom.xml +++ b/pom.xml @@ -1591,7 +1591,7 @@ 2.6 - 3.17.0 + 3.18.0 ${commons-lang.version} ${commons-lang3.version} From 9a378c587c109f28e5ab4d9b5ebc987777b29962 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 14 Aug 2025 14:26:34 -0500 Subject: [PATCH 117/252] Update scripting-java: 0.4.1 -> 1.0.0 Yes, it's technically a major version bump, but I happen to know that this update is only a bug-fix update for newer versions of Java. But I promoted it to 1.0.0 because it's been stable for a long time, and I finally released it to Maven Central instead of SciJava Maven. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b4b4d49..c09d5e1 100644 --- a/pom.xml +++ b/pom.xml @@ -426,7 +426,7 @@ ${scripting-groovy.version} - 0.4.1 + 1.0.0 ${scripting-java.version} From cd2c48d33ca1639587e1dd140f151bb3ccc15897 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 15 Aug 2025 22:28:32 -0500 Subject: [PATCH 118/252] Update settings.xml for Nexus 3 upgrade --- settings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.xml b/settings.xml index 9a57871..9d5aa37 100644 --- a/settings.xml +++ b/settings.xml @@ -3,7 +3,7 @@ scijava-mirror SciJava public repositories - https://maven.scijava.org/service/local/repo_groups/public/content + https://maven.scijava.org/content/groups/public * From 33fe1455c0e92d46eb2944d6f34bb8448349f6a1 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 Aug 2025 22:05:03 -0500 Subject: [PATCH 119/252] Update imagej-legacy: 2.0.2 -> 2.0.3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c09d5e1..1002b02 100644 --- a/pom.xml +++ b/pom.xml @@ -494,7 +494,7 @@ ${imagej-deprecated.version} - 2.0.2 + 2.0.3 ${imagej-legacy.version} From de177152f92d67656bbc6b341261004917883602 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Tue, 2 Sep 2025 10:26:44 +0200 Subject: [PATCH 120/252] BoneJ v7.1.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1002b02..c805afd 100644 --- a/pom.xml +++ b/pom.xml @@ -1194,7 +1194,7 @@ ${multiview-simulation.version} - 7.1.4 + 7.1.5 ${bonej.version} ${bonej.version} ${bonej.version} From 19504e8bd5b8e4fe1f360b14c80a6d6ac4a3b70f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 4 Sep 2025 15:28:36 -0500 Subject: [PATCH 121/252] Update SLF4J: 1.7.36 -> 2.0.17 And correspondingly, logback 1.2.12 -> 1.3.15. Because from 1.2 to 1.3, logback moved from SLF4J v1 to v2. With SLF4J v2, the logger factory no longer works by a static binding approach, but rather via Java's standard ServiceLoader mechanism: https://www.slf4j.org/faq.html#changesInVersion200 This commit also updates the exclusions around logback-classic to match the currently managed versions of components. --- pom.xml | 100 ++++++++++++-------------------------------------------- 1 file changed, 21 insertions(+), 79 deletions(-) diff --git a/pom.xml b/pom.xml index c805afd..8092abf 100644 --- a/pom.xml +++ b/pom.xml @@ -2241,11 +2241,8 @@ ${reflectasm.version} - - 1.2.12 + + 1.3.15 ${logback.version} ${logback.version} ${logback-classic.version} @@ -2343,7 +2340,7 @@ ${languagesupport.version} - 1.7.36 + 2.0.17 ${slf4j.version} ${slf4j.version} ${slf4j.version} @@ -3927,23 +3924,6 @@ org.openmicroscopy metakit ${org.openmicroscopy.metakit.version} - - - - ch.qos.logback - logback-classic - - @@ -3959,28 +3939,6 @@ ome-common ${org.openmicroscopy.ome-common.version} - - - ch.qos.logback - logback-classic - xalan serializer @@ -4038,31 +3996,6 @@ ome bio-formats_plugins ${ome.bio-formats_plugins.version} - - - - ch.qos.logback - logback-classic - - ome @@ -4106,6 +4039,18 @@ omero-blitz ${org.openmicroscopy.omero-blitz.version} + + + ch.qos.logback + logback-classic + ch.qos.logback logback-classic From 87dceb71a04a7d5de55fb2b3cbd29ac758ecddef Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 4 Sep 2025 16:12:56 -0500 Subject: [PATCH 122/252] Bump major version digit The managed slf4j version changed from 1.x to 2.x. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8092abf..92c3954 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 42.0.1-SNAPSHOT + 43.0.0-SNAPSHOT pom SciJava Parent POM From f345a57532584a2fa4d2793787865d416c965354 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 12:49:58 -0500 Subject: [PATCH 123/252] Update component versions * multiview-reconstruction: 6.1.0 -> 7.0.6 * mpicbg: 1.6.0 -> 1.6.5 The multiview-reconstruction update is necessary to address dependency issues relating to the SLF4J v1 -> v2 upgrade. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 92c3954..8eafa8b 100644 --- a/pom.xml +++ b/pom.xml @@ -996,7 +996,7 @@ ${bigwarp_fiji.version} - 1.6.0 + 1.6.5 ${mpicbg.version} ${mpicbg.version} ${mpicbg_.version} @@ -1187,7 +1187,7 @@ 2.5.1 - 6.1.0 + 7.0.6 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} From 6eca6c347ad501cdcb8a511de810600ac852ac5b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 12:51:23 -0500 Subject: [PATCH 124/252] Fix whatsnew.sh to work with SciJava Nexus v3 Unfortunately, maven.scijava.org can no longer proxy Maven Central. So we need to instruct Maven to scan for artifact versions differently. --- settings.xml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/settings.xml b/settings.xml index 9d5aa37..930113f 100644 --- a/settings.xml +++ b/settings.xml @@ -4,7 +4,21 @@ scijava-mirror SciJava public repositories https://maven.scijava.org/content/groups/public - * + *,!central + + + scijava + + true + + + + scijava.public + https://maven.scijava.org/content/groups/public + + + + From 6ed41431ea99ddccceca26cb4da16a0993239a36 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 13:35:01 -0500 Subject: [PATCH 125/252] Fix rules.xml alphabetic ordering violation --- rules.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rules.xml b/rules.xml index d759bee..d4ab1a9 100644 --- a/rules.xml +++ b/rules.xml @@ -133,12 +133,12 @@ .*-m[0-9]+-.* - + .*-(alpha|beta|rc)-?[0-9]+ - + .*-(alpha|beta|rc)-?[0-9]+ From 822fc2a60f7d865506f5ecff069c1393705047f6 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 13:35:25 -0500 Subject: [PATCH 126/252] Update rules.xml for log4j and junit prereleases --- rules.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/rules.xml b/rules.xml index d4ab1a9..5e134d7 100644 --- a/rules.xml +++ b/rules.xml @@ -138,6 +138,11 @@ .*-(alpha|beta|rc)-?[0-9]+ + + + .*-(alpha|beta|rc)-?[0-9]+ + + .*-(alpha|beta|rc)-?[0-9]+ @@ -185,7 +190,7 @@ - .*-(alpha|beta|rc|M)-?[0-9]+ + .*-(alpha|beta|rc|RC|M)-?[0-9]+ From ac28f5e7ab6697a8ca04a3539970a97eb731813d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 22:11:15 -0500 Subject: [PATCH 127/252] Manage io.github.classgraph:classgraph version --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index 8eafa8b..99f8faa 100644 --- a/pom.xml +++ b/pom.xml @@ -1559,6 +1559,10 @@ 3.48.0 ${checker-qual.version} + + 4.8.181 + ${classgraph.version} + 1.9.4 ${commons-beanutils.version} @@ -4800,6 +4804,13 @@ ${org.checkerframework.checker-qual.version} + + + io.github.classgraph + classgraph + ${io.github.classgraph.classgraph.version} + + commons-beanutils From 73e33dcfa2c0fdff81151f2a7196cbe3c30d856c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Sep 2025 13:35:59 -0500 Subject: [PATCH 128/252] Update third party component versions * algart-tiff: 1.4.0 -> 1.5.0 * aws: 1.12.772 -> 1.12.791 * groovy: 4.0.23 -> 4.0.28 * log4j: 2.20.0 -> 2.25.1 * maven-core: 3.9.9 -> 3.9.11 * poi: 5.3.0 -> 5.4.1 * asm: 9.7 -> 9.8 * batik: 1.17 -> 1.19 * xmlgraphics-commons: 2.9 -> 2.11 * checker-qual: 3.48.0 -> 3.50.0 * commons-beanutils: 1.9.4 -> 1.11.0 * commons-cli: 1.9.0 -> 1.10.0 * commons-codec: 1.17.1 -> 1.19.0 * commons-compress: 1.27.1 -> 1.28.0 * commons-csv: 1.12.0 -> 1.14.1 * commons-io: 2.17.0 -> 2.20.0 * commons-logging: 1.3.4 -> 1.3.5 * commons-pool2: 2.12.0 -> 2.12.1 * commons-text: 1.12.0 -> 1.14.0 * error_prone: 2.32.0 -> 2.41.0 * flatlaf: 3.5.4 -> 3.6.1 * google-api-client: 2.7.0 -> 2.8.1 * api-common: 2.37.1 -> 2.53.1 * gax: 2.54.1 -> 2.70.1 * proto-google-common-protos: 2.45.1 -> 2.61.1 * proto-google-iam-v1: 1.40.1 -> 1.56.1 * google-auth-library: 1.27.0 -> 1.39.0 * google-http-client: 1.45.0 -> 1.47.1 * google-oauth-client: 1.36.0 -> 1.39.0 * grpc: 1.68.0 -> 1.75.0 * guava: 33.3.1-jre -> 33.4.8-jre * failureaccess: 1.0.2 -> 1.0.3 * icu4j: 75.1 -> 77.1 * j2objc-annotations: 3.0.0 -> 3.1 * jackson: 2.18.0 -> 2.19.2 * jcodings: 1.0.58 -> 1.0.63 * jetty: 9.4.56.v20240826 -> 9.4.58.v20250814 * jfreechart: 1.5.5 -> 1.5.6 * jfreesvg: 3.4.3 -> 3.4.4 * jline3: 3.27.0 -> 3.30.5 * jnr-ffi: 2.2.16 -> 2.2.17 * jnr-posix: 3.1.19 -> 3.1.20 * joda-time: 2.13.0 -> 2.14.0 * jogamp: 2.5.0 -> 2.6.0 * joni: 2.2.1 -> 2.2.6 * json: 20240303 -> 20250517 * junit-jupiter: 5.11.2 -> 5.13.4 * kryo: 5.6.0 -> 5.6.2 * okio: 3.9.1 -> 3.16.0 * opencsv: 5.9 -> 5.12.0 * picocli: 4.7.6 -> 4.7.7 * postgresql: 42.7.4 -> 42.7.7 * protobuf: 4.28.2 -> 4.32.0 * re2j: 1.7 -> 1.8 * reload4j: 1.2.25 -> 1.2.26 * snakeyaml: 2.3 -> 2.5 * snakeyaml-engine: 2.8 -> 2.10 * threetenbp: 1.7.0 -> 1.7.2 * zstd-jni: 1.5.6-6 -> 1.5.7-4 --- pom.xml | 142 ++++++++++++++++++++++++++++++-------------------------- 1 file changed, 76 insertions(+), 66 deletions(-) diff --git a/pom.xml b/pom.xml index 99f8faa..4180229 100644 --- a/pom.xml +++ b/pom.xml @@ -1318,11 +1318,11 @@ ${org.abego.treelayout.core.version} - 1.4.0 + 1.5.0 ${algart-tiff.version} - 1.12.772 + 1.12.791 ${aws.version} ${aws.version} ${aws-java-sdk-core.version} @@ -1350,7 +1350,7 @@ ${ant-launcher.version} - 4.0.23 + 4.0.28 ${groovy.version} ${groovy.version} ${groovy.version} @@ -1416,7 +1416,7 @@ ${ivy.version} - 2.20.0 + 2.25.1 ${log4j.version} ${log4j.version} ${log4j-api.version} @@ -1425,7 +1425,7 @@ 0.13.1 3.4.0 - 3.9.9 + 3.9.11 4.0.0-beta-1 2.2.0 4.0.2 @@ -1441,7 +1441,7 @@ ${sisu-inject-plexus.version} - 5.3.0 + 5.4.1 ${poi.version} ${poi.version} ${poi.version} @@ -1473,7 +1473,7 @@ ${args4j.version} - 9.7 + 9.8 ${asm.version} ${asm.version} ${asm.version} @@ -1485,7 +1485,7 @@ ${asm-util.version} - 1.17 + 1.19 ${batik.version} ${batik.version} ${batik.version} @@ -1502,7 +1502,6 @@ ${batik.version} ${batik.version} ${batik.version} - ${batik.version} ${batik.version} ${batik.version} ${batik.version} @@ -1513,7 +1512,7 @@ ${batik.version} ${batik.version} ${batik.version} - 2.9 + 2.11 ${batik-anim.version} ${batik-awt-util.version} ${batik-bridge.version} @@ -1530,7 +1529,6 @@ ${batik-rasterizer.version} ${batik-rasterizer-ext.version} ${batik-script.version} - ${batik-slideshow.version} ${batik-squiggle.version} ${batik-squiggle-ext.version} ${batik-svg-dom.version} @@ -1556,7 +1554,7 @@ ${cdi-api.version} - 3.48.0 + 3.50.0 ${checker-qual.version} @@ -1564,15 +1562,15 @@ ${classgraph.version} - 1.9.4 + 1.11.0 ${commons-beanutils.version} - 1.9.0 + 1.10.0 ${commons-cli.version} - 1.17.1 + 1.19.0 ${commons-codec.version} @@ -1582,15 +1580,15 @@ ${commons-collections4.version} - 1.27.1 + 1.28.0 ${commons-compress.version} - 1.12.0 + 1.14.1 ${commons-csv.version} - 2.17.0 + 2.20.0 ${commons-io.version} @@ -1600,7 +1598,7 @@ ${commons-lang3.version} - 1.3.4 + 1.3.5 ${commons-logging.version} @@ -1608,11 +1606,11 @@ ${commons-math3.version} - 2.12.0 + 2.12.1 ${commons-pool2.version} - 1.12.0 + 1.14.0 ${commons-text.version} @@ -1624,6 +1622,7 @@ ${directories.version} + 11.1.0 ${eclipse-collections.version} ${eclipse-collections.version} @@ -1672,7 +1671,7 @@ ${ejml.version} - 2.32.0 + 2.41.0 - 3.5.4 + 3.6.1 ${flatlaf.version} 2.304 ${flatlaf-fonts-jetbrains-mono.version} - 2.7.0 + 2.8.1 ${google-api-client.version} ${google-api-client.version} ${google-api-client.version} @@ -1705,12 +1704,12 @@ ${google-api-client-xml.version} - 2.37.1 - 2.54.1 + 2.53.1 + 2.70.1 ${gax.version} ${gax.version} - 2.45.1 - 1.40.1 + 2.61.1 + 1.56.1 ${api-common.version} ${gax.version} ${gax-grpc.version} @@ -1721,7 +1720,7 @@ ${proto-google-iam-v1.version} - 1.27.0 + 1.39.0 ${google-auth-library.version} ${google-auth-library.version} ${google-auth-library.version} @@ -1748,7 +1747,7 @@ ${google-cloud-storage.version} - 1.45.0 + 1.47.1 ${google-http-client.version} ${google-http-client.version} ${google-http-client.version} @@ -1762,11 +1761,11 @@ ${google-http-client-xml.version} - 1.36.0 + 1.39.0 ${google-oauth-client.version} - 1.68.0 + 1.75.0 ${grpc.version} ${grpc.version} ${grpc.version} @@ -1799,8 +1798,8 @@ ${gson.version} - 33.3.1-jre - 1.0.2 + 33.4.8-jre + 1.0.3 ${guava.version} ${failureaccess.version} @@ -1818,7 +1817,7 @@ ${hsqldb.version} - 75.1 + 77.1 ${icu4j.version} @@ -1826,7 +1825,7 @@ ${itextpdf.version} - 3.0.0 + 3.1 ${j2objc-annotations.version} @@ -1835,7 +1834,7 @@ ${jackrabbit-webdav.version} - 2.18.0 + 2.19.2 ${jackson.version} ${jackson.version} ${jackson.version} @@ -1892,7 +1891,7 @@ ${javassist.version} - 1.0.58 + 1.0.63 ${jcodings.version} @@ -1904,7 +1903,7 @@ ${jep.version} - 9.4.56.v20240826 + 9.4.58.v20250814 ${jetty.version} - 1.5.5 + 1.5.6 ${jfreechart.version} - 3.4.3 + 3.4.4 ${jfreesvg.version} @@ -2014,7 +2013,7 @@ ${jline2.version} ${jline.version} - 3.27.0 + 3.30.5 ${jline3.version} ${jline3.version} @@ -2065,6 +2064,7 @@ ${javafx-web.version} + 1.49 ${jmockit.version} @@ -2081,9 +2081,9 @@ 1.3.13 0.10.4 - 2.2.16 + 2.2.17 1.2.0 - 3.1.19 + 3.1.20 ${jffi.version} ${jnr-constants.version} ${jnr-ffi.version} @@ -2091,7 +2091,7 @@ ${jnr-posix.version} - 2.13.0 + 2.14.0 ${joda-time.version} @@ -2100,7 +2100,7 @@ - 2.5.0 + 2.6.0 ${jogamp.version} ${jogamp.version} @@ -2136,7 +2136,7 @@ ${joml.version} - 2.2.1 + 2.2.6 ${joni.version} @@ -2153,7 +2153,7 @@ ${jsch.version} - 20240303 + 20250517 ${json.version} @@ -2161,7 +2161,7 @@ ${junit.version} - 5.11.2 + 5.13.4 ${junit-jupiter.version} ${junit-jupiter.version} ${junit-jupiter.version} @@ -2237,7 +2237,7 @@ ${kotlinx-coroutines-core-jvm.version} - 5.6.0 + 5.6.2 1.3.1 1.11.9 ${kryo.version} @@ -2292,13 +2292,13 @@ ${okhttp.version} - 3.9.1 + 3.16.0 ${okio.version} ${okio.version} ${okio-jvm.version} - 5.9 + 5.12.0 ${opencsv.version} @@ -2307,15 +2307,15 @@ ${perfmark-api.version} - 4.7.6 + 4.7.7 ${picocli.version} - 42.7.4 + 42.7.7 ${postgresql.version} - 4.28.2 + 4.32.0 - 1.7 + 1.8 ${re2j.version} - 1.2.25 + 1.2.26 ${reload4j.version} 3.6.0 3.3.2 + 3.3.0 ${rsyntaxtextarea.version} ${autocomplete.version} @@ -2361,11 +2362,11 @@ ${jcl-over-slf4j.version} - 2.3 + 2.5 ${snakeyaml.version} - 2.8 + 2.10 ${snakeyaml-engine.version} @@ -2396,7 +2397,7 @@ ${proto.version} - 1.7.0 + 1.7.2 ${threetenbp.version} @@ -2413,7 +2414,7 @@ ${xz.version} - 1.5.6-6 + 1.5.7-4 ${zstd-jni.version} @@ -4702,11 +4703,6 @@ batik-script ${org.apache.xmlgraphics.batik-script.version} - - org.apache.xmlgraphics - batik-slideshow - ${org.apache.xmlgraphics.batik-slideshow.version} - org.apache.xmlgraphics batik-squiggle @@ -6852,6 +6848,20 @@ jmockit ${org.jmockit.jmockit.version} test + + + + com.github.spotbugs + spotbugs-annotations + + From 4837f642a88d5c6a7a4ed19f31d23a9cdfc9bdb9 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 9 Sep 2025 14:52:30 -0500 Subject: [PATCH 129/252] Update component versions * scifio: 0.46.0 -> 0.47.0 * scifio-labeling: 0.3.1 -> 0.3.2 * Fiji_Plugins: 3.1.3 -> 3.2.0 * bigdataviewer-n5: 1.0.1 -> 1.0.2 * n5-ij: 4.4.0 -> 4.4.1 * MorphoLibJ: 1.6.3 -> 1.6.4 * BigStitcher: 2.5.1 -> 2.5.2 --- pom.xml | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 4180229..887b6c6 100644 --- a/pom.xml +++ b/pom.xml @@ -626,7 +626,7 @@ - 0.46.0 + 0.47.0 ${scifio.version} @@ -646,7 +646,7 @@ ${scifio-jai-imageio.version} - 0.3.1 + 0.3.2 ${scifio-labeling.version} @@ -757,7 +757,7 @@ 2.1.1 ${Fiji_Package_Maker.version} - 3.1.3 + 3.2.0 ${Fiji_Plugins.version} 2.0.1 @@ -1028,7 +1028,7 @@ ${bigdataviewer_fiji.version} - 1.0.1 + 1.0.2 ${bigdataviewer-n5.version} @@ -1137,7 +1137,7 @@ ${n5-hdf5.version} - 4.4.0 + 4.4.1 ${n5-ij.version} @@ -1163,7 +1163,7 @@ - 1.6.3 + 1.6.4 ${MorphoLibJ.version} ${MorphoLibJ_.version} @@ -1186,7 +1186,7 @@ ${clijx-weka_.version} - 2.5.1 + 2.5.2 7.0.6 0.2.0 ${BigStitcher.version} @@ -3936,6 +3936,16 @@ org.openmicroscopy ome-codecs ${org.openmicroscopy.ome-codecs.version} + + + + org.openmicroscopy + ome-jai + + From 4a53967438e04071e26bba6b61dfee560bd5befd Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 9 Sep 2025 15:11:38 -0500 Subject: [PATCH 130/252] Update OMERO component versions * omero-blitz: 5.7.4 -> 5.8.3 * omero-common: 5.6.7 -> 5.7.3 * omero-dsl-plugin: 5.5.2 -> 5.5.4 * omero-model: 5.6.15 -> 5.7.3 * omero-renderer: 5.5.17 -> 5.6.3 * omero-romio: 5.7.7 -> 5.8.3 * omero-server: 5.6.12 -> 5.7.3 --- pom.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 887b6c6..e126454 100644 --- a/pom.xml +++ b/pom.xml @@ -1270,15 +1270,15 @@ ${formats-gpl.version} - 5.7.4 + 5.8.3 ${omero-blitz.version} - 5.6.7 + 5.7.3 ${omero-common.version} - 5.5.2 + 5.5.4 ${omero-dsl-plugin.version} @@ -1286,19 +1286,19 @@ ${omero-gateway.version} - 5.6.15 + 5.7.3 ${omero-model.version} - 5.5.17 + 5.6.3 ${omero-renderer.version} - 5.7.7 + 5.8.3 ${omero-romio.version} - 5.6.12 + 5.7.3 ${omero-server.version} From 80493b039a56519edd2e0e7fd7a01f5ad178dae8 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 9 Sep 2025 15:22:08 -0500 Subject: [PATCH 131/252] Update version rules for whatsnew script --- rules.xml | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 98 insertions(+), 4 deletions(-) diff --git a/rules.xml b/rules.xml index 5e134d7..35c783d 100644 --- a/rules.xml +++ b/rules.xml @@ -9,11 +9,26 @@ 3.0ea8 + + + + ^(?!2\.33).* + + .*-(alpha|beta|rc)-?[0-9]+ - - 1\.[34].* + + ^(?!1\.3\.).* @@ -36,6 +51,15 @@ .*-kohsuke-?[0-9]+ + + + + ^(?!3\.3\.).* + + + ^(?!4\.).* + + + + + + ^(?!2\.21\.22).* @@ -148,9 +186,14 @@ .*-(alpha|beta|rc)-?[0-9]+ - + .*\.M[0-9]+ + + ^(?!11\.).* @@ -164,6 +207,15 @@ .*\.RC[0-9]+ + + + + ^(?!1\.41).* + + .*-(alpha|beta|rc)-?[0-9]+ @@ -188,6 +240,38 @@ ^(?!1\.4\.).* + + + + ^(?!1\.49).* + + + + + .*-pre.* + + + + + + ^(?!51\.).* + + + + + + ^(?!5\.9\.).* + + .*-(alpha|beta|rc|RC|M)-?[0-9]+ @@ -195,7 +279,7 @@ - .*-(alpha|beta|rc|M)-?[0-9]+ + .*-(alpha|beta|rc|RC|M)-?[0-9]+ @@ -207,6 +291,16 @@ ^(?!4\.).* + + + .*-ea.* + + ^(?!23\.).* + + .*-m[0-9]+ From aa393a140e7bc3fd9f8b6828e14412ca0bfa7557 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 25 Sep 2025 16:52:50 -0500 Subject: [PATCH 132/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e126454..128f4ee 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 43.0.0-SNAPSHOT + 43.0.1-SNAPSHOT pom SciJava Parent POM From 5a8d3ffdaa876ca6a9f1e6d4bd086cde1b5b6bf4 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 13 Oct 2025 12:25:52 -0500 Subject: [PATCH 133/252] Reenable vecmath short version We aren't managing the SciJava Java 3D fork versions anymore. --- pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 128f4ee..6120a8e 100644 --- a/pom.xml +++ b/pom.xml @@ -2125,8 +2125,7 @@ 1.7.2 ${jogamp-java3d.version} ${jogamp-java3d.version} - - + ${jogamp-java3d.version} ${java3d-core.version} ${java3d-utils.version} ${jogamp-java3d.version} From c6205486d83a440bcc86e0b2a345339fb1f94bbf Mon Sep 17 00:00:00 2001 From: Gabriel Selzer Date: Thu, 16 Jan 2025 16:39:29 -0600 Subject: [PATCH 134/252] Add SciJava monorepo components --- pom.xml | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 155 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6120a8e..d451b4d 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 43.0.1-SNAPSHOT + 43.1.0-SNAPSHOT pom SciJava Parent POM @@ -305,6 +305,48 @@ + + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + 1.0.0 + ${scijava-collections.version} + ${scijava-common3.version} + ${scijava-concurrent.version} + ${scijava-discovery.version} + ${scijava-function.version} + ${scijava-legacy.version} + ${scijava-meta.version} + ${scijava-ops-api.version} + ${scijava-ops-engine.version} + ${scijava-ops-flim.version} + ${scijava-ops-image.version} + ${scijava-ops-indexer.version} + ${scijava-ops-opencv.version} + ${scijava-ops-spi.version} + ${scijava-priority.version} + ${scijava-progress.version} + ${scijava-struct.version} + ${scijava-taglets.version} + ${scijava-testutil.version} + ${scijava-types.version} + 2.3.1 ${app-launcher.version} @@ -2421,6 +2463,118 @@ + + + org.scijava + scijava-collections + ${org.scijava.scijava-collections.version} + + + org.scijava + scijava-common3 + ${org.scijava.scijava-common3.version} + + + org.scijava + scijava-concurrent + ${org.scijava.scijava-concurrent.version} + + + org.scijava + scijava-discovery + ${org.scijava.scijava-discovery.version} + + + org.scijava + scijava-function + ${org.scijava.scijava-function.version} + + + org.scijava + scijava-legacy + ${org.scijava.scijava-legacy.version} + + + org.scijava + scijava-meta + ${org.scijava.scijava-meta.version} + + + org.scijava + scijava-ops-api + ${org.scijava.scijava-ops-api.version} + + + org.scijava + scijava-ops-engine + ${org.scijava.scijava-ops-engine.version} + + + org.scijava + scijava-ops-flim + ${org.scijava.scijava-ops-flim.version} + + + org.scijava + scijava-ops-image + ${org.scijava.scijava-ops-image.version} + + + org.scijava + scijava-ops-indexer + ${org.scijava.scijava-ops-indexer.version} + + + org.scijava + scijava-ops-opencv + ${org.scijava.scijava-ops-opencv.version} + + + org.scijava + scijava-ops-spi + ${org.scijava.scijava-ops-spi.version} + + + org.scijava + scijava-priority + ${org.scijava.scijava-priority.version} + + + org.scijava + scijava-progress + ${org.scijava.scijava-progress.version} + + + org.scijava + scijava-struct + ${org.scijava.scijava-struct.version} + + + org.scijava + scijava-taglets + ${org.scijava.scijava-taglets.version} + + + org.scijava + scijava-testutil + ${org.scijava.scijava-testutil.version} + + + org.scijava + scijava-taglets + ${org.scijava.scijava-taglets.version} + + + org.scijava + scijava-testutil + ${org.scijava.scijava-testutil.version} + + + org.scijava + scijava-types + ${org.scijava.scijava-types.version} + + org.scijava From 35e8ece1a0ca4ef65119a5be813d5eb335a23d0d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 13 Oct 2025 12:43:07 -0500 Subject: [PATCH 135/252] mega-melt: skip components in multi-module builds The SciJava infrastructure is not yet smart enough to handle them. --- tests/generate-mega-melt.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index 7eacc9c..5227394 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -35,6 +35,38 @@ def child(node, tag): # 1.54m/1.54n/1.54p that breaks some downstream tests. # Disable them till we have time to address the issue. 'ij1-patcher', 'imagej-legacy', + # TEMP: Skip components within multi-module reactors. + # Neither melting-pot.sh nor release-version.sh understand + # multi-module repositories; release-version.sh needs to learn + # how to tag and release individual components from multi-module + # repos, so that when melting-pot.sh shallow clones the repo at + # that tag and invokes a build, it will be building only the + # released component as it does with single-component repos. + 'scijava-collections', + 'scijava-common3', + 'scijava-concurrent', + 'scijava-discovery-test', + 'scijava-discovery', + 'scijava-function', + 'scijava-legacy', + 'scijava-meta', + 'scijava-ops-api', + 'scijava-ops-benchmarks', + 'scijava-ops-engine', + 'scijava-ops-ext-parser', + 'scijava-ops-flim', + 'scijava-ops-image', + 'scijava-ops-indexer', + 'scijava-ops-opencv', + 'scijava-ops-spi', + 'scijava-ops-tutorial', + 'scijava-priority', + 'scijava-progress', + 'scijava-struct', + 'scijava-taglets', + 'scijava-testutil', + 'scijava-types', + 'mpicbg', 'mpicbg_', # NB: Skip artifacts requiring minimum Java version >8. 'algart-tiff', 'javafx-base', From b7f93d170e037e7bfecb883a274254a523cbb4a3 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 13 Oct 2025 12:44:36 -0500 Subject: [PATCH 136/252] mega-melt: move SNT into "Java 9+" section for now --- tests/generate-mega-melt.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index 5227394..46d5686 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -21,10 +21,6 @@ def child(node, tag): # Artifacts to exclude from the mega melt. ignoredArtifacts = [ - # TEMP: The SNT project needs a new release without the - # obsolete scijava-plugins-io-table dependency. - 'SNT', - # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. 'hdf5', # TEMP: The original ImageJ requires Java 9+ to compile, @@ -76,6 +72,7 @@ def child(node, tag): 'javafx-media', 'javafx-swing', 'javafx-web', + 'SNT', # NB: Skip closed-source artifacts. 'bonej-plus', # NB: The following artifacts have messy dependency trees. From ad61b4cc8066c443b389afc47762df13b266ce85 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 13 Oct 2025 12:44:53 -0500 Subject: [PATCH 137/252] mega-melt: reenable ij1-patcher & imagej-legacy The latest releases of these components should work with ImageJ 1.54p. --- tests/generate-mega-melt.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py index 46d5686..fef2758 100644 --- a/tests/generate-mega-melt.py +++ b/tests/generate-mega-melt.py @@ -27,10 +27,6 @@ def child(node, tag): # because it has a module-info.java, so skip it until the # component collection is updated from Java 8 to Java 11. 'ij', - # TEMP: The original ImageJ introduced changes in - # 1.54m/1.54n/1.54p that breaks some downstream tests. - # Disable them till we have time to address the issue. - 'ij1-patcher', 'imagej-legacy', # TEMP: Skip components within multi-module reactors. # Neither melting-pot.sh nor release-version.sh understand # multi-module repositories; release-version.sh needs to learn From 5a0611f78b014035da458b9a660f3c518da9813d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 13 Oct 2025 17:34:49 -0500 Subject: [PATCH 138/252] Remove duplicate dependency declarations --- pom.xml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/pom.xml b/pom.xml index d451b4d..e6240ab 100644 --- a/pom.xml +++ b/pom.xml @@ -2559,16 +2559,6 @@ scijava-testutil ${org.scijava.scijava-testutil.version} - - org.scijava - scijava-taglets - ${org.scijava.scijava-taglets.version} - - - org.scijava - scijava-testutil - ${org.scijava.scijava-testutil.version} - org.scijava scijava-types From 04d37da350c67948b0bed5935db7fff4ce2d0117 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Tue, 21 Oct 2025 09:14:46 +0200 Subject: [PATCH 139/252] BoneJ v7.1.8 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e6240ab..d6c9ae4 100644 --- a/pom.xml +++ b/pom.xml @@ -1236,7 +1236,7 @@ ${multiview-simulation.version} - 7.1.5 + 7.1.8 ${bonej.version} ${bonej.version} ${bonej.version} From 961f0fd5d66cde33f49a56ea683f72e519fed023 Mon Sep 17 00:00:00 2001 From: Mark Hiner Date: Tue, 28 Oct 2025 13:29:45 -0500 Subject: [PATCH 140/252] Bump scripting-python to 0.4.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d6c9ae4..46ba4fe 100644 --- a/pom.xml +++ b/pom.xml @@ -492,7 +492,7 @@ ${scripting-matlab.version} - 0.4.0 + 0.4.1 ${scripting-python.version} From 2fdfcdfa2549431c75d63d158e0789bd447bb096 Mon Sep 17 00:00:00 2001 From: Mark Hiner Date: Thu, 13 Nov 2025 14:12:30 -0600 Subject: [PATCH 141/252] script-editor -> 1.2.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 46ba4fe..69a81ef 100644 --- a/pom.xml +++ b/pom.xml @@ -444,7 +444,7 @@ ${scijava-ui-swing.version} - 1.1.1 + 1.2.0 ${script-editor.version} From a2de95f44a9441f2051ab04e66528fbc90dfd2ef Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Tue, 25 Nov 2025 11:07:57 +0100 Subject: [PATCH 142/252] Mockito 5.20.0 Mockito 4.11 was refusing to run on Java 21, with an error like: java.lang.IllegalArgumentException: Java 21 (65) is not supported by the current version of Byte Buddy which officially supports Java 20 (64) - update Byte Buddy or set net.bytebuddy.experimental as a VM property at net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:96) --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 69a81ef..d7e3776 100644 --- a/pom.xml +++ b/pom.xml @@ -2315,7 +2315,7 @@ ${mines-jtk.version} - 4.11.0 + 5.20.0 ${mockito.version} ${mockito-core.version} From 8264d132eb1a9a50de6dd8e7a834f4a2bd3d6939 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Wed, 26 Nov 2025 17:26:52 +0100 Subject: [PATCH 143/252] BoneJ v7.1.9 This removes dependencies on bonej-plus and beancounter --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d7e3776..dc5f14c 100644 --- a/pom.xml +++ b/pom.xml @@ -1236,7 +1236,7 @@ ${multiview-simulation.version} - 7.1.8 + 7.1.9 ${bonej.version} ${bonej.version} ${bonej.version} From e70e3278be9f7d59b57941bcd44a48672164938a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 5 Nov 2025 13:09:33 -0600 Subject: [PATCH 144/252] Manage version of org.scijava:scijava-links --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index 69a81ef..0f0e22b 100644 --- a/pom.xml +++ b/pom.xml @@ -395,6 +395,10 @@ 0.1.0 ${scijava-java3d.version} + + 1.0.0 + ${scijava-links.version} + 1.0.0-beta-3 ${scijava-listeners.version} @@ -2642,6 +2646,13 @@ ${org.scijava.scijava-java3d.version} + + + org.scijava + scijava-links + ${org.scijava.scijava-links.version} + + org.scijava From 3dc091a07730321cc7f867540231f6908b490f0c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Dec 2025 10:36:35 -0600 Subject: [PATCH 145/252] mega-melt: skip minimaven tests for now --- tests/run.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/run.sh b/tests/run.sh index 6d5d9a5..6ddc871 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -411,6 +411,11 @@ rm -f "$meltingPotDir/sc.fiji/labkit-ui/src/test/java/sc/fiji/labkit/ui/plugin/C # Skip testing of components with non-working tests. +# java.lang.AssertionError +# at org.scijava.minimaven.BasicTest.testClassifiers(BasicTest.java:216) +echo "org.scijava/minimaven" >> "$skipTestsFile" || + die "Failed to generate $skipTestsFile" + # Error while checking the CLIJ2 installation: null echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || die "Failed to generate $skipTestsFile" From 3f67f21e90723355e3f914161e437b91348c2274 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Dec 2025 13:14:55 -0600 Subject: [PATCH 146/252] Update parent to pom-scijava 22.0.0 This updates the default minimum Java version from 8 to 11, which is necessary as we begin managing component versions targeting Java 11+, such as scijava-links. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0f0e22b..1ae343d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.scijava pom-scijava-base - 21.1.0 + 22.0.0 From 6f81b3aee3637b06422b265f188b769eaabf694c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Dec 2025 10:32:52 -0600 Subject: [PATCH 147/252] Update component versions * imglib2: 7.1.5 -> 8.0.0 * bigdataviewer-core: 10.6.4 -> 10.6.7 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1ae343d..c2c15e9 100644 --- a/pom.xml +++ b/pom.xml @@ -626,7 +626,7 @@ - 7.1.5 + 8.0.0 ${imglib2.version} @@ -1058,7 +1058,7 @@ - 10.6.4 + 10.6.7 ${bigdataviewer-core.version} From de6cf610804ff90a15cee000c5a51531171ba35b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Dec 2025 17:19:15 -0600 Subject: [PATCH 148/252] Update minimum Java version: 8 -> 11 --- .github/workflows/build.yml | 6 +++--- .github/workflows/release.yml | 6 +++--- pom.xml | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 91dc957..c2298d4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,11 +15,11 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Java - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - java-version: '8' + java-version: '11' java-package: 'jdk+fx' distribution: 'zulu' cache: 'maven' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8d2b682..1848a19 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,11 +10,11 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Java - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - java-version: '8' + java-version: '11' java-package: 'jdk+fx' distribution: 'zulu' cache: 'maven' diff --git a/pom.xml b/pom.xml index c2c15e9..666f9ec 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 43.1.0-SNAPSHOT + 44.0.0-SNAPSHOT pom SciJava Parent POM From 0230f444c4d0c69505aba25f324720a4cc55b38f Mon Sep 17 00:00:00 2001 From: Gabriel Selzer Date: Tue, 2 Dec 2025 14:43:30 -0600 Subject: [PATCH 149/252] Introduce imglib2-imagej --- pom.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pom.xml b/pom.xml index 666f9ec..b339b80 100644 --- a/pom.xml +++ b/pom.xml @@ -649,6 +649,10 @@ 2.0.3 ${imglib2-ij.version} + + 0.1.0 + ${imglib2-imagej.version} + 2.0.1 ${imglib2-imglyb.version} From 81a9d6cf52bf39b28b453ace14cf049985c424e6 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 2 Dec 2025 19:14:11 -0600 Subject: [PATCH 150/252] Add needed dependency block for imglib2-imagej --- pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pom.xml b/pom.xml index b339b80..33641e8 100644 --- a/pom.xml +++ b/pom.xml @@ -3113,6 +3113,13 @@ ${net.imglib2.imglib2-ij.version} + + + net.imglib2 + imglib2-imagej + ${net.imglib2.imglib2-imagej.version} + + net.imglib2 From 977af6c082eb84f59f4ba5d67d0402ecfa3a9388 Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Thu, 15 Jan 2026 10:10:04 -0600 Subject: [PATCH 151/252] Update to Bio-Formats 8.3.0 Includes updates to other OME dependencies as indicated in https://www.openmicroscopy.org/2026/01/15/bio-formats-8-4-0.html --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 1953c5a..55d5e22 100644 --- a/pom.xml +++ b/pom.xml @@ -1279,23 +1279,23 @@ ${ice.version} - 1.1.1 + 1.1.2 ${ome-codecs.version} - 6.1.0 + 6.1.2 ${ome-common.version} - 5.3.9 + 5.3.10 ${metakit.version} - 5.3.10 + 5.3.11 ${ome-poi.version} - 6.5.0 + 6.5.1 ${ome-model.version} ${ome-model.version} ${ome-xml.version} @@ -1307,7 +1307,7 @@ ${jxrlib-all.version} - 8.3.0 + 8.4.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 4969ad91c6f7e5e0c2b2a63a45574cb369cacdfb Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Thu, 15 Jan 2026 10:14:21 -0600 Subject: [PATCH 152/252] Update logback to 1.3.16 Bio-Formats 8.4.0 uses logback 1.3.16, motivated by https://github.com/qos-ch/logback/issues/974 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 55d5e22..a5e3c48 100644 --- a/pom.xml +++ b/pom.xml @@ -2295,7 +2295,7 @@ - 1.3.15 + 1.3.16 ${logback.version} ${logback.version} ${logback-classic.version} From d2ce1322f40d95341e249a6eb5a66a7707e37a32 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 16 Jan 2026 13:28:51 -0600 Subject: [PATCH 153/252] Update component versions * 3D_Viewer: 5.0.0 -> 5.0.1 * scifio: 0.47.0 -> 0.48.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a5e3c48..1053ef6 100644 --- a/pom.xml +++ b/pom.xml @@ -676,7 +676,7 @@ - 0.47.0 + 0.48.0 ${scifio.version} @@ -721,7 +721,7 @@ <_3D_Objects_Counter.version>2.0.1 ${_3D_Objects_Counter.version} - <_3D_Viewer.version>5.0.0 + <_3D_Viewer.version>5.0.1 ${_3D_Viewer.version} 3.4.2 From 4f9919e9e966b63a910d180f4cf2bbc2b918511d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 2 Mar 2026 07:16:52 -0600 Subject: [PATCH 154/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1053ef6..aa637f3 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 44.0.0-SNAPSHOT + 44.0.1-SNAPSHOT pom SciJava Parent POM From 7a2c1b3f93d4558b481da360b275ca337219f10c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 7 Mar 2026 19:43:30 +0100 Subject: [PATCH 155/252] Purge opencensus libraries from the BOM These analytics libraries are used to collect metrics for applications. Users of SciJava-based applications do not want or need that, nor do we want dependent libraries doing it secretly. --- pom.xml | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/pom.xml b/pom.xml index aa637f3..537a3b9 100644 --- a/pom.xml +++ b/pom.xml @@ -5277,6 +5277,15 @@ com.google.api gax ${com.google.api.gax.version} + + + + io.opencensus + * + + com.google.api @@ -5338,6 +5347,15 @@ com.google.cloud google-cloud-core-http ${com.google.cloud.google-cloud-core-http.version} + + + + io.opencensus + * + + com.google.cloud @@ -5348,11 +5366,29 @@ com.google.cloud google-cloud-resourcemanager ${com.google.cloud.google-cloud-resourcemanager.version} + + + + io.opencensus + * + + com.google.cloud google-cloud-storage ${com.google.cloud.google-cloud-storage.version} + + + + io.opencensus + * + + @@ -5360,6 +5396,15 @@ com.google.http-client google-http-client ${com.google.http-client.google-http-client.version} + + + + io.opencensus + * + + com.google.http-client From fdc1bdd9aff24ba297a7b566cc6487811c82c1e8 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Tue, 17 Mar 2026 09:46:08 +0100 Subject: [PATCH 156/252] BoneJ v7.1.10 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 537a3b9..46d1ff9 100644 --- a/pom.xml +++ b/pom.xml @@ -1244,7 +1244,7 @@ ${multiview-simulation.version} - 7.1.9 + 7.1.10 ${bonej.version} ${bonej.version} ${bonej.version} From d06c01cabdf3311a8c2c6a5c7de06507dc329264 Mon Sep 17 00:00:00 2001 From: Melissa Linkert Date: Wed, 18 Mar 2026 09:45:31 -0500 Subject: [PATCH 157/252] Update to Bio-Formats 8.5.0 Includes updates to other OME dependencies as indicated in https://github.com/ome/bioformats/releases/tag/v8.5.0 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 46d1ff9..335452f 100644 --- a/pom.xml +++ b/pom.xml @@ -1279,11 +1279,11 @@ ${ice.version} - 1.1.2 + 1.1.3 ${ome-codecs.version} - 6.1.2 + 6.2.1 ${ome-common.version} @@ -1295,7 +1295,7 @@ ${ome-poi.version} - 6.5.1 + 6.5.3 ${ome-model.version} ${ome-model.version} ${ome-xml.version} @@ -1307,7 +1307,7 @@ ${jxrlib-all.version} - 8.4.0 + 8.5.0 ${bio-formats.version} ${bio-formats.version} ${bio-formats.version} From 26dda6c5911129d0aca1782255e28102e15a8892 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 22 Feb 2026 15:16:12 -0600 Subject: [PATCH 158/252] Add exclusions to Java 3D for native artifacts Otherwise, depending on java3d-core or java3d-utils brings in inappropriate native classifier artifacts, which bloats the dependency graph and breaks the module path due to module naming clashes. --- pom.xml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/pom.xml b/pom.xml index 335452f..f6d8123 100644 --- a/pom.xml +++ b/pom.xml @@ -6286,11 +6286,41 @@ org.jogamp.java3d java3d-core ${org.jogamp.java3d.java3d-core.version} + + + + org.jogamp.gluegen + gluegen-rt-main + + + org.jogamp.jogl + jogl-all-main + + org.jogamp.java3d java3d-utils ${org.jogamp.java3d.java3d-utils.version} + + + + org.jogamp.joal + joal-main + + org.jogamp.java3d From b2540533902e3f58261bdb1742f86db4a3e080b2 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 May 2026 19:43:12 -0500 Subject: [PATCH 159/252] Add JavaFX -> OpenJDK version mapping --- pom.xml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/pom.xml b/pom.xml index f6d8123..07628ea 100644 --- a/pom.xml +++ b/pom.xml @@ -2097,6 +2097,28 @@ ${jmh-generator-annprocess.version} + 23.0.2 ${javafx.version} ${javafx.version} From 73b16eefeb6865e561ca765a15fa13e0e64d6dc0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 May 2026 20:26:20 -0500 Subject: [PATCH 160/252] Add initial Bombast configuration See https://github.com/scijava/bombast --- bombast.toml | 160 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 160 insertions(+) create mode 100644 bombast.toml diff --git a/bombast.toml b/bombast.toml new file mode 100644 index 0000000..0b37d1d --- /dev/null +++ b/bombast.toml @@ -0,0 +1,160 @@ +[filter] +includes = [ + "ca.mcgill:*", + "io.scif:*", + "jitk:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "org.bonej:*", + "org.janelia.saalfeldlab:*", + "org.janelia:*", + "org.morphonets:*", + "org.scijava:*", + "sc.fiji:*", +] +excludes = [ + # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. + 'org.bytedeco:hdf5', + # TEMP: Skip components within multi-module reactors. + # Neither melting-pot.sh nor release-version.sh understand + # multi-module repositories; release-version.sh needs to learn + # how to tag and release individual components from multi-module + # repos, so that when melting-pot.sh shallow clones the repo at + # that tag and invokes a build, it will be building only the + # released component as it does with single-component repos. + 'org.scijava:scijava-collections', + 'org.scijava:scijava-common3', + 'org.scijava:scijava-concurrent', + 'org.scijava:scijava-discovery-test', + 'org.scijava:scijava-discovery', + 'org.scijava:scijava-function', + 'org.scijava:scijava-legacy', + 'org.scijava:scijava-meta', + 'org.scijava:scijava-ops-api', + 'org.scijava:scijava-ops-benchmarks', + 'org.scijava:scijava-ops-engine', + 'org.scijava:scijava-ops-ext-parser', + 'org.scijava:scijava-ops-flim', + 'org.scijava:scijava-ops-image', + 'org.scijava:scijava-ops-indexer', + 'org.scijava:scijava-ops-opencv', + 'org.scijava:scijava-ops-spi', + 'org.scijava:scijava-ops-tutorial', + 'org.scijava:scijava-priority', + 'org.scijava:scijava-progress', + 'org.scijava:scijava-struct', + 'org.scijava:scijava-taglets', + 'org.scijava:scijava-testutil', + 'org.scijava:scijava-types', + 'mpicbg:mpicbg', 'mpicbg:mpicbg_', + # NB: Skip artifacts requiring minimum Java version >8. + '*:algart-tiff', + '*:javafx-base', + '*:javafx-controls', + '*:javafx-fxml', + '*:javafx-graphics', + '*:javafx-media', + '*:javafx-swing', + '*:javafx-web', + '*:SNT', + # NB: Skip closed-source artifacts. + '*:bonej-plus', + # NB: The following artifacts have messy dependency trees. + # Too many problems to test as part of the mega-melt. + # See WARNING block in pom-scijava's pom.xml for details. + 'net.imagej:imagej-server', + '*:spark-core_2.11', + # NB: Skip scijava forks of third-party projects. + # These are very stable, with few/no dependencies, and + # don't need to be retested as pom-scijava evolves. + 'org.scijava:j3dcore', + 'org.scijava:j3dutils', + 'org.scijava:jep', + 'org.scijava:junit-benchmarks', + 'org.scijava:vecmath', + # NB: Skip alternate flavors of other managed components. + '*:gluegen', # uberjar flavor of gluegen-rt + '*:jogl-all-noawt', # slimmed down flavor of jogl-all + # NB: All the SWT platform JARs have the same classes. + # The current platform will be brought in transitively. + '*:org.eclipse.swt.cocoa.macosx', + '*:org.eclipse.swt.cocoa.macosx.x86_64', + '*:org.eclipse.swt.gtk.aix.ppc', + '*:org.eclipse.swt.gtk.aix.ppc64', + '*:org.eclipse.swt.gtk.hpux.ia64', + '*:org.eclipse.swt.gtk.linux.ppc', + '*:org.eclipse.swt.gtk.linux.ppc64', + '*:org.eclipse.swt.gtk.linux.s390', + '*:org.eclipse.swt.gtk.linux.s390x', + '*:org.eclipse.swt.gtk.linux.x86', + '*:org.eclipse.swt.gtk.linux.x86_64', + '*:org.eclipse.swt.gtk.solaris.sparc', + '*:org.eclipse.swt.gtk.solaris.x86', + '*:org.eclipse.swt.win32.win32.x86', + '*:org.eclipse.swt.win32.win32.x86_64', + # NB: All SLF4J bindings have the same classes. + # We'll rely on logback-classic being present here. + 'org.slf4j:slf4j-jcl', + 'org.slf4j:slf4j-jdk14', + 'org.slf4j:slf4j-nop', + 'org.slf4j:slf4j-simple', + # NB: Cannot include both commons-logging and jcl-over-slf4j; + # see: http://www.slf4j.org/codes.html#jclDelegationLoop + 'org.slf4j:jcl-over-slf4j', +] + +[build] +min-java-version = 8 + +[skip-tests] +components = [ + # java.lang.AssertionError + # at org.scijava.minimaven.BasicTest.testClassifiers(BasicTest.java:216) + "org.scijava:minimaven", + + # Error while checking the CLIJ2 installation: null + "sc.fiji:labkit-pixel-classification", +] + +[remove-tests] + +# CachedOpEnvironmentTest fails intermittently. Of course, it should be +# somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. +"net.imagej:imagej-ops" = ["net.imagej.ops.cached.CachedOpEnvironmentTest"] + +# In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: +# java.util.NoSuchElementException: No value present +"org.janelia.saalfeldlab:n5-ij" = ["org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests"] + +# Avoid notNull assertion error at +# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) +"org.janelia.saalfeldlab:n5-universe" = ["org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests"] + +# In org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest: +# arrays first differed at element [0]; expected:<[a]> but was:<[c]> +"org.janelia.saalfeldlab:n5-zarr" = ["org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest"] +# Note: The above test is fixed with saalfeldlab/n5-zarr@e7edcec3, +# but the fix is only available in n5-zarr 2.0.0-alpha-1, and we +# do not want to update the SciJava BOM to the alpha version. + +# In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: +# Macro Error: "probability map for blobs.tif" not found in line 4 +# selectImage ( <"probability map for blobs.tif"> ) ; +# java.lang.RuntimeException: Macro canceled +# at ij.macro.Interpreter.error(Interpreter.java:1403) +# at ij.macro.Functions.selectImage(Functions.java:3225) +# at ij.macro.Functions.doFunction(Functions.java:136) +# at ij.macro.Interpreter.doStatement(Interpreter.java:280) +# at ij.macro.Interpreter.doStatements(Interpreter.java:266) +# at ij.macro.Interpreter.run(Interpreter.java:162) +# at ij.macro.Interpreter.run(Interpreter.java:92) +# at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) +"sc.fiji:labkit-ui" = ["sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest"] + +[components."net.imagej:ij"] +"java-version" = 11 + +[components."net.imglib2:imglib2-mesh"] +"java-version" = 11 From f20e448b487a490dba4e24f871d93ea04eb10c58 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 11 May 2026 20:29:24 -0500 Subject: [PATCH 161/252] Update component versions * imglib2-cache: 1.0.0-beta-19 -> 1.0.0-beta-20 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 07628ea..a5a49c2 100644 --- a/pom.xml +++ b/pom.xml @@ -642,7 +642,7 @@ ${imglib2-algorithm-gpl.version} - 1.0.0-beta-19 + 1.0.0-beta-20 ${imglib2-cache.version} From b4788ccd40fe4ab8cfef5ab49e63a983d1dd21d6 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Thu, 21 May 2026 15:11:21 -0400 Subject: [PATCH 162/252] update n5 component versions * n5-4.0.0 * n5-aws-s3-5.0.0 * n5-blosc-2.0.0 * n5-google-cloud-6.0.0 * n5-hdf5-3.0.0 * n5-ij-5.0.0 * n5-imglib2-8.0.0 * n5-universe-3.0.0 * n5-zarr-2.0.0 * n5-zstandard-2.0.0 --- pom.xml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index a5a49c2..9af1760 100644 --- a/pom.xml +++ b/pom.xml @@ -1167,43 +1167,43 @@ ${imglib2-label-multisets.version} - 3.5.1 + 4.0.0 ${n5.version} - 4.3.0 + 5.0.0 ${n5-aws-s3.version} - 1.1.1 + 2.0.0 ${n5-blosc.version} - 5.1.0 + 6.0.0 ${n5-google-cloud.version} - 2.2.1 + 3.0.0 ${n5-hdf5.version} - 4.4.1 + 5.0.0 ${n5-ij.version} - 7.0.2 + 8.0.0 ${n5-imglib2.version} - 2.3.0 + 3.0.0 ${n5-universe.version} - 6.1.2 + 6.2.0 ${n5-viewer_fiji.version} - 1.5.1 + 2.0.0 ${n5-zarr.version} From 730b5a49af18daec5a548adc0c482134be9401ae Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Thu, 4 Jun 2026 13:53:11 -0400 Subject: [PATCH 163/252] bump bigwarp-9.4.0 * uses new n5 artifacts --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9af1760..f2c486e 100644 --- a/pom.xml +++ b/pom.xml @@ -1041,7 +1041,7 @@ ${jitk-tps.version} - 9.3.2 + 9.4.0 ${bigwarp.version} ${bigwarp_fiji.version} From f136b465ad80c0718c6655f768a2969db0195add Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Mon, 8 Jun 2026 16:52:31 -0400 Subject: [PATCH 164/252] bump n5-zstandard-2.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f2c486e..1775cb1 100644 --- a/pom.xml +++ b/pom.xml @@ -1207,7 +1207,7 @@ ${n5-zarr.version} - 1.0.2 + 2.0.0 ${n5-zstandard.version} From b43685a15cde25f88daa99a742bb091dffa84d53 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Tue, 9 Jun 2026 14:17:56 -0400 Subject: [PATCH 165/252] bump n5-4.0.1 * Primarily for test compilation errors preventing smelt success --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1775cb1..9230ca4 100644 --- a/pom.xml +++ b/pom.xml @@ -1167,7 +1167,7 @@ ${imglib2-label-multisets.version} - 4.0.0 + 4.0.1 ${n5.version} From 1e30dfaa0735c1883c5772d44508388c090cd6f3 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Tue, 9 Jun 2026 16:45:58 -0400 Subject: [PATCH 166/252] bump n5-universe-3.0.1 * fixes issue with bigdataviewer-n5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9230ca4..f78a056 100644 --- a/pom.xml +++ b/pom.xml @@ -1195,7 +1195,7 @@ ${n5-imglib2.version} - 3.0.0 + 3.0.1 ${n5-universe.version} From 3d72609eff0638edbbecedab780d3fdd9c32888d Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Wed, 10 Jun 2026 11:04:28 +0200 Subject: [PATCH 167/252] BoneJ 7.2.0 Harmonise BoneJ plugins (Legacy, Modern, Plus) to use `Dataset` for image IO and `SharedTable` for numeric results. The intention is to make a consistent API for Python script users. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a5a49c2..75f8034 100644 --- a/pom.xml +++ b/pom.xml @@ -1244,7 +1244,7 @@ ${multiview-simulation.version} - 7.1.10 + 7.2.0 ${bonej.version} ${bonej.version} ${bonej.version} From d493195f526da20f0e59a5d8789fca057119913e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 18 May 2026 14:34:12 -0500 Subject: [PATCH 168/252] Update pombast.toml to current standards * The name 'bombast' was already taken on PyPI * Add SciJava Maven repository to pombast config * Various key additions, renames, reorganization * Use Unlicense instead of CC0 in mega-melt POM template --- bombast.toml => pombast.toml | 156 +++++++++++++++++++++++------------ tests/mega-melt-template.xml | 4 +- 2 files changed, 103 insertions(+), 57 deletions(-) rename bombast.toml => pombast.toml (58%) diff --git a/bombast.toml b/pombast.toml similarity index 58% rename from bombast.toml rename to pombast.toml index 0b37d1d..466ac5c 100644 --- a/bombast.toml +++ b/pombast.toml @@ -1,28 +1,19 @@ -[filter] -includes = [ - "ca.mcgill:*", - "io.scif:*", - "jitk:*", - "mpicbg:*", - "net.imagej:*", - "net.imglib2:*", - "net.preibisch:*", - "org.bonej:*", - "org.janelia.saalfeldlab:*", - "org.janelia:*", - "org.morphonets:*", - "org.scijava:*", - "sc.fiji:*", -] +[common] +default-java-version = 8 +repositories = ["scijava.public=https://maven.scijava.org/content/groups/public"] + +[melt] +java-version = 11 +template = "tests/mega-melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. 'org.bytedeco:hdf5', # TEMP: Skip components within multi-module reactors. - # Neither melting-pot.sh nor release-version.sh understand - # multi-module repositories; release-version.sh needs to learn - # how to tag and release individual components from multi-module - # repos, so that when melting-pot.sh shallow clones the repo at - # that tag and invokes a build, it will be building only the + # Neither pombast nor release-version.sh understand multi- + # module repositories; release-version.sh needs to learn how + # to tag and release individual components from multi-module + # repos, so that when pombast shallow clones the repo at that + # tag and invokes a build, it will be building only the # released component as it does with single-component repos. 'org.scijava:scijava-collections', 'org.scijava:scijava-common3', @@ -49,23 +40,23 @@ excludes = [ 'org.scijava:scijava-testutil', 'org.scijava:scijava-types', 'mpicbg:mpicbg', 'mpicbg:mpicbg_', - # NB: Skip artifacts requiring minimum Java version >8. - '*:algart-tiff', - '*:javafx-base', - '*:javafx-controls', - '*:javafx-fxml', - '*:javafx-graphics', - '*:javafx-media', - '*:javafx-swing', - '*:javafx-web', - '*:SNT', + # NB: Skip artifacts requiring minimum Java version >11. + 'net.algart:algart-tiff', + 'org.openjfx:javafx-base', + 'org.openjfx:javafx-controls', + 'org.openjfx:javafx-fxml', + 'org.openjfx:javafx-graphics', + 'org.openjfx:javafx-media', + 'org.openjfx:javafx-swing', + 'org.openjfx:javafx-web', + 'org.morphonets:SNT', # NB: Skip closed-source artifacts. - '*:bonej-plus', + 'org.bonej:bonej-plus', # NB: The following artifacts have messy dependency trees. # Too many problems to test as part of the mega-melt. # See WARNING block in pom-scijava's pom.xml for details. 'net.imagej:imagej-server', - '*:spark-core_2.11', + 'org.apache.spark:spark-core_2.11', # NB: Skip scijava forks of third-party projects. # These are very stable, with few/no dependencies, and # don't need to be retested as pom-scijava evolves. @@ -75,25 +66,25 @@ excludes = [ 'org.scijava:junit-benchmarks', 'org.scijava:vecmath', # NB: Skip alternate flavors of other managed components. - '*:gluegen', # uberjar flavor of gluegen-rt - '*:jogl-all-noawt', # slimmed down flavor of jogl-all + 'org.jogamp.gluegen:gluegen', # uberjar flavor of gluegen-rt + 'org.jogamp.jogl:jogl-all-noawt', # slimmed down flavor of jogl-all # NB: All the SWT platform JARs have the same classes. # The current platform will be brought in transitively. - '*:org.eclipse.swt.cocoa.macosx', - '*:org.eclipse.swt.cocoa.macosx.x86_64', - '*:org.eclipse.swt.gtk.aix.ppc', - '*:org.eclipse.swt.gtk.aix.ppc64', - '*:org.eclipse.swt.gtk.hpux.ia64', - '*:org.eclipse.swt.gtk.linux.ppc', - '*:org.eclipse.swt.gtk.linux.ppc64', - '*:org.eclipse.swt.gtk.linux.s390', - '*:org.eclipse.swt.gtk.linux.s390x', - '*:org.eclipse.swt.gtk.linux.x86', - '*:org.eclipse.swt.gtk.linux.x86_64', - '*:org.eclipse.swt.gtk.solaris.sparc', - '*:org.eclipse.swt.gtk.solaris.x86', - '*:org.eclipse.swt.win32.win32.x86', - '*:org.eclipse.swt.win32.win32.x86_64', + 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx', + 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx.x86_64', + 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc', + 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc64', + 'org.eclipse.swt:org.eclipse.swt.gtk.hpux.ia64', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc64', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390x', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64', + 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.sparc', + 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.x86', + 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86', + 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86_64', # NB: All SLF4J bindings have the same classes. # We'll rely on logback-classic being present here. 'org.slf4j:slf4j-jcl', @@ -105,11 +96,66 @@ excludes = [ 'org.slf4j:jcl-over-slf4j', ] -[build] -min-java-version = 8 - -[skip-tests] -components = [ +[smelt] +includes = [ + "ca.mcgill:*", + "io.scif:*", + "jitk:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "org.bonej:*", + "org.janelia.saalfeldlab:*", + "org.janelia:*", + "org.morphonets:*", + "org.scijava:*", + "sc.fiji:*", +] +excludes = [ + # NB: Skip closed-source artifacts. + 'org.bonej:bonej-plus', + # NB: Skip scijava forks of third-party projects. + # These are very stable, with few/no dependencies, and + # don't need to be retested as pom-scijava evolves. + 'org.scijava:j3dcore', + 'org.scijava:j3dutils', + 'org.scijava:jep', + 'org.scijava:junit-benchmarks', + 'org.scijava:vecmath', + # TEMP: Skip components within multi-module reactors. + # Neither pombast nor release-version.sh understand multi- + # module repositories; release-version.sh needs to learn how + # to tag and release individual components from multi-module + # repos, so that when pombast shallow clones the repo at that + # tag and invokes a build, it will be building only the + # released component as it does with single-component repos. + 'org.scijava:scijava-collections', + 'org.scijava:scijava-common3', + 'org.scijava:scijava-concurrent', + 'org.scijava:scijava-discovery-test', + 'org.scijava:scijava-discovery', + 'org.scijava:scijava-function', + 'org.scijava:scijava-legacy', + 'org.scijava:scijava-meta', + 'org.scijava:scijava-ops-api', + 'org.scijava:scijava-ops-benchmarks', + 'org.scijava:scijava-ops-engine', + 'org.scijava:scijava-ops-ext-parser', + 'org.scijava:scijava-ops-flim', + 'org.scijava:scijava-ops-image', + 'org.scijava:scijava-ops-indexer', + 'org.scijava:scijava-ops-opencv', + 'org.scijava:scijava-ops-spi', + 'org.scijava:scijava-ops-tutorial', + 'org.scijava:scijava-priority', + 'org.scijava:scijava-progress', + 'org.scijava:scijava-struct', + 'org.scijava:scijava-taglets', + 'org.scijava:scijava-testutil', + 'org.scijava:scijava-types', +] +skip-tests = [ # java.lang.AssertionError # at org.scijava.minimaven.BasicTest.testClassifiers(BasicTest.java:216) "org.scijava:minimaven", diff --git a/tests/mega-melt-template.xml b/tests/mega-melt-template.xml index c8709f3..d776adc 100644 --- a/tests/mega-melt-template.xml +++ b/tests/mega-melt-template.xml @@ -19,8 +19,8 @@ - CC0 1.0 Universal License - https://creativecommons.org/publicdomain/zero/1.0/ + Unlicense + https://unlicense.org/ repo From 1b9ef2fbc79c3ca041a5502e011d6829537cd19e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 15:22:02 -0500 Subject: [PATCH 169/252] Add pombast status configuration This generates the web content of status.scijava.org, and eliminates the need for a separate mainline branch of the status.scijava.org repository -- only gh-pages needed now. --- ci-badges.txt | 45 ++++++++++++++ footer.html | 50 +++++++++++++++ header.html | 1 + pombast.toml | 9 +++ projects.txt | 25 ++++++++ timestamps.txt | 161 +++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 291 insertions(+) create mode 100644 ci-badges.txt create mode 100644 footer.html create mode 100644 header.html create mode 100644 projects.txt create mode 100644 timestamps.txt diff --git a/ci-badges.txt b/ci-badges.txt new file mode 100644 index 0000000..cfe892d --- /dev/null +++ b/ci-badges.txt @@ -0,0 +1,45 @@ +bigdataviewer/bigvolumeviewer-core +fiji/Colocalisation_Analysis +imagej/imagej-common +imagej/imagej-legacy +imglib/imglib2-mesh +imagej/imagej-matlab +ome/bioformats +ome/ome-codecs +ome/ome-common-java +ome/ome-metakit +ome/ome-model +ome/ome-poi +ome/omero-blitz +ome/omero-common +ome/omero-dsl-plugin +ome/omero-gateway-java +ome/omero-model +ome/omero-renderer +ome/omero-romio +ome/omero-server +scijava/java3d-core None +scijava/java3d-utils None +scijava/jep None +scijava/junit-benchmarks None +scijava/minimaven +scijava/native-lib-loader +scijava/parsington +scijava/scijava-coding-style +scijava/scijava-common +scijava/scijava-config +scijava/scijava-log-slf4j +scijava/scijava-maven-plugin +scijava/script-editor-scala +scijava/swing-checkbox-tree +scijava/vecmath None +trackmate-sc/TrackMate +trackmate-sc/TrackMate-CSVImporter +trackmate-sc/TrackMate-Cellpose +trackmate-sc/TrackMate-ExTrack +trackmate-sc/TrackMate-Ilastik +trackmate-sc/TrackMate-MorphoLibJ +trackmate-sc/TrackMate-Oneat +trackmate-sc/TrackMate-Skeleton +trackmate-sc/TrackMate-StarDist +trackmate-sc/TrackMate-Weka diff --git a/footer.html b/footer.html new file mode 100644 index 0000000..4d7603b --- /dev/null +++ b/footer.html @@ -0,0 +1,50 @@ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/header.html b/header.html new file mode 100644 index 0000000..16d992a --- /dev/null +++ b/header.html @@ -0,0 +1 @@ + diff --git a/pombast.toml b/pombast.toml index 466ac5c..89b0e80 100644 --- a/pombast.toml +++ b/pombast.toml @@ -204,3 +204,12 @@ skip-tests = [ [components."net.imglib2:imglib2-mesh"] "java-version" = 11 + +[status] +rules = "rules.xml" +projects = "projects.txt" +badges = "ci-badges.txt" +timestamps = "timestamps.txt" +html = "index.html" +header = "header.html" +footer = "footer.html" diff --git a/projects.txt b/projects.txt new file mode 100644 index 0000000..49959fe --- /dev/null +++ b/projects.txt @@ -0,0 +1,25 @@ +mpicbg:mpicbg https://github.com/axtimwalde/mpicbg +mpicbg:mpicbg_ https://github.com/axtimwalde/mpicbg +net.imagej:ij https://github.com/imagej/ImageJ +net.imglib2:imglib2-label-multisets https://github.com/saalfeldlab/imglib2-label-multisets +ome:bio-formats_plugins https://github.com/ome/bioformats +ome:formats-api https://github.com/ome/bioformats +ome:formats-bsd https://github.com/ome/bioformats +ome:formats-gpl https://github.com/ome/bioformats +org.janelia:H5J_Loader_Plugin https://github.com/fiji/H5J_Loader_Plugin +org.openmicroscopy:metakit https://github.com/ome/ome-metakit +org.openmicroscopy:ome-common https://github.com/ome/ome-common-java +org.openmicroscopy:ome-xml https://github.com/ome/ome-model +org.openmicroscopy:omero-gateway https://github.com/ome/omero-gateway-java +org.openmicroscopy:specification https://github.com/ome/ome-model +org.scijava:j3dcore https://github.com/scijava/java3d-core +org.scijava:j3dutils https://github.com/scijava/java3d-utils +sc.fiji:T2-NIT https://github.com/trakem2/T2-NIT +sc.fiji:T2-TreelineGraph https://github.com/trakem2/T2-TreelineGraph +sc.fiji:TrakEM2_ https://github.com/trakem2/TrakEM2 +sc.fiji:VectorString https://github.com/trakem2/VectorString +sc.fiji:bigwarp_fiji https://github.com/saalfeldlab/bigwarp +sc.fiji:spim_data https://github.com/bigdataviewer/spimdata +sc.fiji:trakem2-transform https://github.com/trakem2/trakem2-transform +sc.fiji:trakem2_tps https://github.com/saalfeldlab/trakem2-tps +sc.fiji:z_spacing https://github.com/saalfeldlab/z-spacing diff --git a/timestamps.txt b/timestamps.txt new file mode 100644 index 0000000..d3b86f2 --- /dev/null +++ b/timestamps.txt @@ -0,0 +1,161 @@ +# Stable forks of third-party projects. +org.scijava:j3dcore 20180905120000 +org.scijava:j3dutils 20180905120000 +org.scijava:jep 20171225120000 +org.scijava:junit-benchmarks 20180905120000 +org.scijava:vecmath 20180905120000 + +# Newer versions break stuff... freeze for now. +hsqldb:hsqldb 20190101000000 +org.codehaus.groovy:groovy 20250101000000 +org.codehaus.groovy:groovy-ant 20250101000000 +org.codehaus.groovy:groovy-astbuilder 20250101000000 +org.codehaus.groovy:groovy-bsf 20250101000000 +org.codehaus.groovy:groovy-cli-commons 20250101000000 +org.codehaus.groovy:groovy-cli-picocli 20250101000000 +org.codehaus.groovy:groovy-console 20250101000000 +org.codehaus.groovy:groovy-datetime 20250101000000 +org.codehaus.groovy:groovy-dateutil 20250101000000 +org.codehaus.groovy:groovy-docgenerator 20250101000000 +org.codehaus.groovy:groovy-groovydoc 20250101000000 +org.codehaus.groovy:groovy-groovysh 20250101000000 +org.codehaus.groovy:groovy-jaxb 20250101000000 +org.codehaus.groovy:groovy-jmx 20250101000000 +org.codehaus.groovy:groovy-json 20250101000000 +org.codehaus.groovy:groovy-jsr223 20250101000000 +org.codehaus.groovy:groovy-macro 20250101000000 +org.codehaus.groovy:groovy-nio 20250101000000 +org.codehaus.groovy:groovy-servlet 20250101000000 +org.codehaus.groovy:groovy-sql 20250101000000 +org.codehaus.groovy:groovy-swing 20250101000000 +org.codehaus.groovy:groovy-templates 20250101000000 +org.codehaus.groovy:groovy-test 20250101000000 +org.codehaus.groovy:groovy-test-junit5 20250101000000 +org.codehaus.groovy:groovy-testng 20250101000000 +org.codehaus.groovy:groovy-xml 20250101000000 +org.codehaus.groovy:groovy-yaml 20250101000000 +org.mockito:mockito-core 20250101000000 +org.ojalgo:ojalgo 20250101000000 +org.python:jython-slim 20230309000000 +org.springframework:spring-aop 20250101000000 +org.springframework:spring-beans 20250101000000 +org.springframework:spring-core 20250101000000 +org.tensorflow:libtensorflow 20200701000000 +org.tensorflow:libtensorflow_jni 20200701000000 +org.tensorflow:libtensorflow_jni_gpu 20200701000000 +org.tensorflow:proto 20200701000000 +org.tensorflow:tensorflow 20200701000000 + +# Not maintaining ImageJ Server currently... +net.imagej:imagej-server 20250101000000 + +# SciJava projects with only CI+POM changes. +io.scif:scifio-cli 20230309000000 +io.scif:scifio-hdf5 20230309000000 +io.scif:scifio-jai-imageio 20230309000000 +io.scif:scifio-labeling 20230309000000 +io.scif:scifio-lifesci 20230309000000 +net.imagej:imagej-deprecated 20230309000000 +net.imagej:imagej-mesh 20230309000000 +net.imagej:imagej-mesh-io 20230309000000 +net.imagej:imagej-notebook 20230309000000 +net.imagej:imagej-plugins-batch 20230309000000 +net.imagej:imagej-plugins-commands 20230309000000 +net.imagej:imagej-plugins-tools 20230309000000 +net.imagej:imagej-plugins-uploader-ssh 20230309000000 +net.imagej:imagej-ui-awt 20230309000000 +net.imagej:op-finder 20230309000000 +net.imglib2:imglib2-algorithm-fft 20230309000000 +net.imglib2:imglib2-algorithm-gpl 20230309000000 +net.imglib2:imglib2-unsafe 20230309000000 +org.scijava:minimaven 20230309000000 +org.scijava:native-lib-loader 20230309000000 +org.scijava:scijava-cache 20230309000000 +org.scijava:scijava-grab 20230309000000 +org.scijava:scijava-io-http 20230309000000 +org.scijava:scijava-java3d 20230309000000 +org.scijava:scijava-listeners 20211021000000 +org.scijava:scijava-maven-plugin 20230309000000 +org.scijava:scijava-optional 20230309000000 +org.scijava:scijava-plot 20230309000000 +org.scijava:scijava-plugins-platforms 20230309000000 +org.scijava:scijava-plugins-text-markdown 20230309000000 +org.scijava:scijava-ui-awt 20230309000000 +org.scijava:scripting-clojure 20230309000000 +org.scijava:scripting-java 20230309000000 +org.scijava:scripting-jruby 20230309000000 +org.scijava:scripting-matlab 20230309000000 +org.scijava:scripting-scala 20230309000000 +org.scijava:swing-checkbox-tree 20230309000000 +sc.fiji:3D_Objects_Counter 20230313000000 +sc.fiji:3D_Viewer 20230313000000 +sc.fiji:AnalyzeSkeleton_ 20230309000000 +sc.fiji:Anisotropic_Diffusion_2D 20230309000000 +sc.fiji:Archipelago_Plugins 20230309000000 +sc.fiji:Arrow_ 20230309000000 +sc.fiji:Auto_Local_Threshold 20230309000000 +sc.fiji:BalloonSegmentation_ 20230309000000 +sc.fiji:Bug_Submitter 20230309000000 +sc.fiji:Calculator_Plus 20230309000000 +sc.fiji:Cell_Counter 20230309000000 +sc.fiji:Colocalisation_Analysis 20230309000000 +sc.fiji:Color_Histogram 20230309000000 +sc.fiji:Color_Inspector_3D 20230309000000 +sc.fiji:Colour_Deconvolution 20230309000000 +sc.fiji:Correct_3D_Drift 20230309000000 +sc.fiji:Dichromacy_ 20230309000000 +sc.fiji:Directionality_ 20230309000000 +sc.fiji:Fiji_Archipelago 20230309000000 +sc.fiji:Fiji_Package_Maker 20230309000000 +sc.fiji:FlowJ_ 20230309000000 +sc.fiji:Graph_Cut 20230309000000 +sc.fiji:Gray_Morphology 20230309000000 +sc.fiji:Helmholtz_Analysis 20230309000000 +sc.fiji:IJ_Robot 20230309000000 +sc.fiji:Image_5D 20230309000000 +sc.fiji:Image_Expression_Parser 20230309000000 +sc.fiji:Interactive_3D_Surface_Plot 20230309000000 +sc.fiji:IsoData_Classifier 20230309000000 +sc.fiji:Kappa 20230309000000 +sc.fiji:Kuwahara_Filter 20230309000000 +sc.fiji:LSM_Reader 20230309000000 +sc.fiji:LSM_Toolbox 20230309000000 +sc.fiji:Lasso_and_Blow_Tool 20230309000000 +sc.fiji:Linear_Kuwahara 20230309000000 +sc.fiji:LocalThickness_ 20230309000000 +sc.fiji:MTrack2_ 20230309000000 +sc.fiji:M_I_P 20230309000000 +sc.fiji:Manual_Tracking 20230309000000 +sc.fiji:Multi_Kymograph 20230309000000 +sc.fiji:OMEVisual 20230309000000 +sc.fiji:PIV_analyser 20230309000000 +sc.fiji:QuickPALM_ 20230309000000 +sc.fiji:RATS_ 20230309000000 +sc.fiji:SPIM_Opener 20230309000000 +sc.fiji:Samples_ 20230309000000 +sc.fiji:Series_Labeler 20230309000000 +sc.fiji:Siox_Segmentation 20230309000000 +sc.fiji:Skeletonize3D_ 20230309000000 +sc.fiji:SplineDeformationGenerator_ 20230309000000 +sc.fiji:Stack_Manipulation 20230309000000 +sc.fiji:Statistical_Region_Merging 20230309000000 +sc.fiji:Sync_Win 20230309000000 +sc.fiji:Thread_Killer 20230309000000 +sc.fiji:Time_Lapse 20230309000000 +sc.fiji:Time_Stamper 20230309000000 +sc.fiji:ToAST_ 20230309000000 +sc.fiji:TopoJ_ 20230309000000 +sc.fiji:VIB-lib 20230309000000 +sc.fiji:Vaa3d_Reader 20230309000000 +sc.fiji:Vaa3d_Writer 20230309000000 +sc.fiji:Video_Editing 20230309000000 +sc.fiji:bUnwarpJ_ 20230309000000 +sc.fiji:bij 20230309000000 +sc.fiji:fiji-lib 20230309000000 +sc.fiji:level_sets 20230309000000 +sc.fiji:pal-optimization 20230309000000 +sc.fiji:panorama_ 20230309000000 +sc.fiji:registration_3d 20230309000000 +sc.fiji:spimdata 20230309000000 +sc.fiji:trakem2-transform 20230309000000 +sc.fiji:weave_jy2java 20230309000000 From 9abe43da627cf99830bed4da58e79c4e0e0dbda0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 18:49:53 -0500 Subject: [PATCH 170/252] CI: try another way of deleting the cache --- .github/workflows/build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c2298d4..1a9a5e4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,6 +13,8 @@ on: jobs: build: runs-on: ubuntu-latest + permissions: + actions: write steps: - uses: actions/checkout@v4 @@ -52,7 +54,7 @@ jobs: run: | gh api --method DELETE -H "Accept: application/vnd.github+json" /repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-cache || true env: - GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Save the melting-pot cache if: env.cacheChanged == 'true' From 01ac4baa6ec574483e4de1bffd1e55315a5270bb Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 18:55:46 -0500 Subject: [PATCH 171/252] pombast: move status section up --- pombast.toml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pombast.toml b/pombast.toml index 89b0e80..a21e2b9 100644 --- a/pombast.toml +++ b/pombast.toml @@ -2,6 +2,15 @@ default-java-version = 8 repositories = ["scijava.public=https://maven.scijava.org/content/groups/public"] +[status] +rules = "rules.xml" +projects = "projects.txt" +badges = "ci-badges.txt" +timestamps = "timestamps.txt" +html = "index.html" +header = "header.html" +footer = "footer.html" + [melt] java-version = 11 template = "tests/mega-melt-template.xml" @@ -204,12 +213,3 @@ skip-tests = [ [components."net.imglib2:imglib2-mesh"] "java-version" = 11 - -[status] -rules = "rules.xml" -projects = "projects.txt" -badges = "ci-badges.txt" -timestamps = "timestamps.txt" -html = "index.html" -header = "header.html" -footer = "footer.html" From 39b82bfb1410fa5abd74c85c25b28975211ce386 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 18:56:06 -0500 Subject: [PATCH 172/252] pombast: remove unneeded quotes --- pombast.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pombast.toml b/pombast.toml index a21e2b9..0f0868a 100644 --- a/pombast.toml +++ b/pombast.toml @@ -209,7 +209,7 @@ skip-tests = [ "sc.fiji:labkit-ui" = ["sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest"] [components."net.imagej:ij"] -"java-version" = 11 +java-version = 11 [components."net.imglib2:imglib2-mesh"] -"java-version" = 11 +java-version = 11 From 9c68a60dbe45973548a03c079f82132daedc8324 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 18:56:12 -0500 Subject: [PATCH 173/252] pombast: note BoneJ components needing Java 11+ --- pombast.toml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pombast.toml b/pombast.toml index 0f0868a..07a8652 100644 --- a/pombast.toml +++ b/pombast.toml @@ -213,3 +213,9 @@ java-version = 11 [components."net.imglib2:imglib2-mesh"] java-version = 11 + +[components."org.bonej:bonej-legacy-plugins_"] +java-version = 11 + +[components."org.bonej:bonej-ops"] +java-version = 11 From b44a74b8af9abd09b0d6db51ec3bf118195109c6 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 19:21:28 -0500 Subject: [PATCH 174/252] Overhaul CI to use pombast smelt/status instead of melting-pot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit build.yml: - Replace old tests/run.sh (melting-pot) with pombast smelt - Drop the melting-pot cache restore/save/delete steps and exit.sh trick - Add astral-sh/setup-uv and webfactory/ssh-agent (master push only) - On master push: publish smelt.json to status.scijava.org gh-pages New status.yml: - Runs daily (and on master push) to regenerate status.scijava.org index.html - Lives in pom-scijava to avoid GitHub's 60-day dormancy kill of scheduled jobs - Installs pombast, runs pombast status --config pombast.toml, publishes index.html release.yml: - Use release-setup.sh (no apt packages -- only needed for smelt builds) - Use simplified build.sh (no melting-pot logic) Script renames and new files: - setup.sh → build-setup.sh (drops libxml2-utils, keeps smelt native deps) - new release-setup.sh (ci-setup-github-actions.sh only) - build.sh stripped to just ci-build.sh (no release detection, no melting-pot) - new smelt.sh (installs pombast, runs smelt, writes smelt.json) - new status.sh (installs pombast, runs status, publishes index.html) - new publish.sh (shared helper: commit a file to status.scijava.org gh-pages) - exit.sh deleted (no longer needed) pombast.toml: - Add nexus-base to [status] section Co-Authored-By: Claude Sonnet 4.6 --- .github/build-setup.sh | 10 +++++++ .github/build.sh | 56 ++--------------------------------- .github/exit.sh | 8 ----- .github/publish.sh | 25 ++++++++++++++++ .github/release-setup.sh | 3 ++ .github/setup.sh | 11 ------- .github/smelt.sh | 3 ++ .github/status.sh | 5 ++++ .github/workflows/build.yml | 46 ++++++++++------------------ .github/workflows/release.yml | 7 ++--- .github/workflows/status.yml | 26 ++++++++++++++++ pombast.toml | 1 + 12 files changed, 94 insertions(+), 107 deletions(-) create mode 100755 .github/build-setup.sh delete mode 100755 .github/exit.sh create mode 100755 .github/publish.sh create mode 100755 .github/release-setup.sh delete mode 100755 .github/setup.sh create mode 100755 .github/smelt.sh create mode 100755 .github/status.sh create mode 100644 .github/workflows/status.yml diff --git a/.github/build-setup.sh b/.github/build-setup.sh new file mode 100755 index 0000000..64b4c95 --- /dev/null +++ b/.github/build-setup.sh @@ -0,0 +1,10 @@ +#!/bin/sh +curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-setup-github-actions.sh +sh ci-setup-github-actions.sh + +# Install native libraries needed to build and test smelt components. +pkgs="libxcb-shape0" # org.janelia:H5J_Loader_Plugin +pkgs="$pkgs libgtk2.0-0" # net.imagej:imagej-opencv +pkgs="$pkgs libblosc1" # org.janelia.saalfeldlab:n5-blosc +sudo apt-get update +sudo apt-get -y install $pkgs diff --git a/.github/build.sh b/.github/build.sh index ba5e7a2..523abeb 100755 --- a/.github/build.sh +++ b/.github/build.sh @@ -1,55 +1,3 @@ #!/bin/sh - -# Discern whether this is a release build. -releasing= -if [ -f release.properties ]; then - releasing=1 -fi - -# Run the SciJava CI build script. -curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-build.sh && -sh ci-build.sh || { echo "Maven build failed. Skipping melting pot tests."; exit 1; } - -# Skip melting pot if cutting a release. -if [ "$releasing" ]; then - exit 0 -fi - -# Helper method to get the last cache modified date as seconds since epoch -last_cache_modified() { - find "$HOME/.cache/scijava/melting-pot" -type f | while read f - do - stat -c '%Y' "$f" - done | sort -nr 2>/dev/null | head -n1 -} - -# Record the last time of cache modification before running melting-pot -cache_modified_pre=0 -cache_modified_post=0 - -if [ -d "$HOME/.cache/scijava/melting-pot" ]; then - cache_modified_pre=$(last_cache_modified) -fi - -# run melting-pot -tests/run.sh -meltResult=$? - -# Record the last time of cache modification after running melting-pot -if [ -d "$HOME/.cache/scijava/melting-pot" ]; then - cache_modified_post=$(last_cache_modified) -fi - -# Determine if cache needs to be re-generated -echo "cache_modified_pre=$cache_modified_pre" -echo "cache_modified_post=$cache_modified_post" -if [ "$cache_modified_post" -gt "$cache_modified_pre" ]; then - echo "cacheChanged=true" - echo "cacheChanged=true" >> $GITHUB_ENV -else - echo "cacheChanged=false" - echo "cacheChanged=false" >> $GITHUB_ENV -fi - -# NB: This script exits 0, but saves the exit code for a later build step. -echo $meltResult > exit-code +curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-build.sh +sh ci-build.sh diff --git a/.github/exit.sh b/.github/exit.sh deleted file mode 100755 index b5ab4d1..0000000 --- a/.github/exit.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -test -f exit-code || { - echo "[ERROR] No build exit code was saved!" - exit 255 -} -exitCode=$(cat exit-code) -rm -f exit-code -exit $exitCode diff --git a/.github/publish.sh b/.github/publish.sh new file mode 100755 index 0000000..ac79edb --- /dev/null +++ b/.github/publish.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# Commit a file to the status.scijava.org gh-pages branch. +# Usage: publish.sh [commit-message] +# Requires SSH agent to be running with write access to status.scijava.org. +set -e +file=$1 +message=${2:-"Update $(basename "$file")"} +test -f "$file" || { echo "File not found: $file" >&2; exit 1; } +dest=$(basename "$file") + +git config --global user.name github-actions +git config --global user.email github-actions@github.com + +git clone --depth=1 --branch=gh-pages git@github.com:scijava/status.scijava.org site-publish +cp "$file" "site-publish/$dest" +cd site-publish +if git diff --quiet "$dest" +then + echo "== No changes to $dest ==" +else + echo "== Committing $dest ==" + git add "$dest" + git commit -m "$message" + git push +fi diff --git a/.github/release-setup.sh b/.github/release-setup.sh new file mode 100755 index 0000000..a03464b --- /dev/null +++ b/.github/release-setup.sh @@ -0,0 +1,3 @@ +#!/bin/sh +curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-setup-github-actions.sh +sh ci-setup-github-actions.sh diff --git a/.github/setup.sh b/.github/setup.sh deleted file mode 100755 index 6f254a7..0000000 --- a/.github/setup.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-setup-github-actions.sh -sh ci-setup-github-actions.sh - -# Install needed packages. -pkgs="libxml2-utils" # needed for melting pot -pkgs="$pkgs libxcb-shape0" # org.janelia:H5J_Loader_Plugin (fiji/H5J_Loader_Plugin@d026a1bb) -pkgs="$pkgs libgtk2.0-0" # net.imagej:imagej-opencv (imagej/imagej-opencv@21113e08) -pkgs="$pkgs libblosc1" # org.janelia.saalfeldlab:n5-blosc -sudo apt-get update -sudo apt-get -y install $(echo "$pkgs") diff --git a/.github/smelt.sh b/.github/smelt.sh new file mode 100755 index 0000000..1a92a19 --- /dev/null +++ b/.github/smelt.sh @@ -0,0 +1,3 @@ +#!/bin/sh +uv tool install "git+https://github.com/scijava/pombast.git@66a1e3abff431846a900703f7450e0c21f1456cc" +pombast smelt --config pombast.toml --json smelt.json . diff --git a/.github/status.sh b/.github/status.sh new file mode 100755 index 0000000..f94d572 --- /dev/null +++ b/.github/status.sh @@ -0,0 +1,5 @@ +#!/bin/sh +uv tool install "git+https://github.com/scijava/pombast.git@66a1e3abff431846a900703f7450e0c21f1456cc" +pombast status --config pombast.toml --html index.html . +commitNote="$(TZ=UTC date +'%Y-%m-%d %H:%M:%S UTC')" +.github/publish.sh index.html "Update component table ($commitNote)" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1a9a5e4..197a336 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,16 +8,16 @@ on: branches: - master schedule: - - cron: "4 5 * * 0" # every Sunday at 0405, to keep cache alive + # Run weekly on Sunday to keep the Maven cache alive. + - cron: '4 5 * * 0' jobs: build: runs-on: ubuntu-latest - permissions: - actions: write steps: - uses: actions/checkout@v4 + - name: Set up Java uses: actions/setup-java@v4 with: @@ -26,18 +26,17 @@ jobs: distribution: 'zulu' cache: 'maven' - - name: Set up CI environment - run: .github/setup.sh + - uses: astral-sh/setup-uv@v6 - - name: Restore the melting-pot cache - id: restore-cache - uses: actions/cache/restore@v3 + - uses: webfactory/ssh-agent@v0.9.0 + if: github.ref == 'refs/heads/master' && github.event_name == 'push' with: - path: ~/.cache/scijava/melting-pot - key: ${{ runner.os }}-cache + ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} + + - name: Set up build environment + run: .github/build-setup.sh - - name: Execute the build - id: execute-build + - name: Maven CI build run: .github/build.sh env: GPG_KEY_NAME: ${{ secrets.GPG_KEY_NAME }} @@ -48,22 +47,9 @@ jobs: CENTRAL_PASS: ${{ secrets.CENTRAL_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} - - name: Delete the melting-pot cache - if: env.cacheChanged == 'true' - id: delete-cache - run: | - gh api --method DELETE -H "Accept: application/vnd.github+json" /repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-cache || true - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Save the melting-pot cache - if: env.cacheChanged == 'true' - id: save-cache - uses: actions/cache/save@v3 - with: - path: ~/.cache/scijava/melting-pot - key: ${{ runner.os }}-cache + - name: Smelt components + run: .github/smelt.sh - - name: Return the exit code - id: exit-build - run: .github/exit.sh + - name: Publish smelt results + if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' + run: .github/publish.sh smelt.json "Update smelt results" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1848a19..046834a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,11 +19,10 @@ jobs: distribution: 'zulu' cache: 'maven' - - name: Set up CI environment - run: .github/setup.sh + - name: Set up release environment + run: .github/release-setup.sh - - name: Execute the build - id: execute-build + - name: Execute the release run: .github/build.sh env: GPG_KEY_NAME: ${{ secrets.GPG_KEY_NAME }} diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml new file mode 100644 index 0000000..9826cdb --- /dev/null +++ b/.github/workflows/status.yml @@ -0,0 +1,26 @@ +name: status + +on: + schedule: + # Run daily at 0500 UTC. + - cron: '0 5 * * *' + push: + branches: + - master + workflow_dispatch: + +jobs: + status: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: astral-sh/setup-uv@v6 + + - uses: webfactory/ssh-agent@v0.9.0 + with: + ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} + + - name: Generate and publish status page + run: .github/status.sh diff --git a/pombast.toml b/pombast.toml index 07a8652..c83f285 100644 --- a/pombast.toml +++ b/pombast.toml @@ -10,6 +10,7 @@ timestamps = "timestamps.txt" html = "index.html" header = "header.html" footer = "footer.html" +nexus-base = "https://maven.scijava.org" [melt] java-version = 11 From 55c5d4e4f203f4f4ec7198d48f1398f0a79971a7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 19 May 2026 19:25:29 -0500 Subject: [PATCH 175/252] CI: declare bash shell In case we ever run any of these jobs on Windows. --- .github/workflows/build.yml | 4 ++++ .github/workflows/release.yml | 2 ++ .github/workflows/status.yml | 1 + 3 files changed, 7 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 197a336..e7c4d77 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -35,9 +35,11 @@ jobs: - name: Set up build environment run: .github/build-setup.sh + shell: bash - name: Maven CI build run: .github/build.sh + shell: bash env: GPG_KEY_NAME: ${{ secrets.GPG_KEY_NAME }} GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} @@ -49,7 +51,9 @@ jobs: - name: Smelt components run: .github/smelt.sh + shell: bash - name: Publish smelt results if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' run: .github/publish.sh smelt.json "Update smelt results" + shell: bash diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 046834a..00302b6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,9 +21,11 @@ jobs: - name: Set up release environment run: .github/release-setup.sh + shell: bash - name: Execute the release run: .github/build.sh + shell: bash env: GPG_KEY_NAME: ${{ secrets.GPG_KEY_NAME }} GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index 9826cdb..d3cf85e 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -24,3 +24,4 @@ jobs: - name: Generate and publish status page run: .github/status.sh + shell: bash From dd2f51a9fd3ebd5d5823e9a157b771d4f2b2f20d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 20 May 2026 12:57:14 -0500 Subject: [PATCH 176/252] CI: restore pombast cache across smelt runs Adds restore/delete/save steps for ~/.cache/pombast around the smelt step, matching the pattern used for the old melting-pot cache. Cache must be deleted before re-saving because GitHub Actions does not allow overwriting an existing cache key. Both delete and save run unconditionally (if: always()) so the cache is preserved even when smelt has failures. Co-Authored-By: Claude Sonnet 4.6 --- .github/{build-setup.sh => setup-build.sh} | 4 +-- .../{release-setup.sh => setup-release.sh} | 0 .github/workflows/build.yml | 26 ++++++++++++++++++- .github/workflows/release.yml | 2 +- .github/workflows/status.yml | 1 - 5 files changed, 28 insertions(+), 5 deletions(-) rename .github/{build-setup.sh => setup-build.sh} (72%) rename .github/{release-setup.sh => setup-release.sh} (100%) diff --git a/.github/build-setup.sh b/.github/setup-build.sh similarity index 72% rename from .github/build-setup.sh rename to .github/setup-build.sh index 64b4c95..ff44a36 100755 --- a/.github/build-setup.sh +++ b/.github/setup-build.sh @@ -3,8 +3,8 @@ curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-set sh ci-setup-github-actions.sh # Install native libraries needed to build and test smelt components. -pkgs="libxcb-shape0" # org.janelia:H5J_Loader_Plugin +pkgs="libxcb-shape0" # org.janelia:H5J_Loader_Plugin pkgs="$pkgs libgtk2.0-0" # net.imagej:imagej-opencv -pkgs="$pkgs libblosc1" # org.janelia.saalfeldlab:n5-blosc +pkgs="$pkgs libblosc1" # org.janelia.saalfeldlab:n5-blosc sudo apt-get update sudo apt-get -y install $pkgs diff --git a/.github/release-setup.sh b/.github/setup-release.sh similarity index 100% rename from .github/release-setup.sh rename to .github/setup-release.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e7c4d77..909668a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,6 +14,8 @@ on: jobs: build: runs-on: ubuntu-latest + permissions: + actions: write # needed to delete and re-save the pombast cache steps: - uses: actions/checkout@v4 @@ -34,7 +36,7 @@ jobs: ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} - name: Set up build environment - run: .github/build-setup.sh + run: .github/setup-build.sh shell: bash - name: Maven CI build @@ -49,10 +51,32 @@ jobs: CENTRAL_PASS: ${{ secrets.CENTRAL_PASS }} SIGNING_ASC: ${{ secrets.SIGNING_ASC }} + - name: Restore pombast cache + uses: actions/cache/restore@v4 + with: + path: ~/.cache/pombast + key: ${{ runner.os }}-pombast-cache + - name: Smelt components run: .github/smelt.sh shell: bash + - name: Delete old pombast cache + if: always() + run: | + gh api --method DELETE \ + -H "Accept: application/vnd.github+json" \ + "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-pombast-cache" || true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Save pombast cache + if: always() + uses: actions/cache/save@v4 + with: + path: ~/.cache/pombast + key: ${{ runner.os }}-pombast-cache + - name: Publish smelt results if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' run: .github/publish.sh smelt.json "Update smelt results" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 00302b6..27edfcb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,7 +20,7 @@ jobs: cache: 'maven' - name: Set up release environment - run: .github/release-setup.sh + run: .github/setup-release.sh shell: bash - name: Execute the release diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index d3cf85e..b74a274 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -7,7 +7,6 @@ on: push: branches: - master - workflow_dispatch: jobs: status: From 0239160f156db7754f293e37118c06523b09699f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 20 May 2026 13:04:34 -0500 Subject: [PATCH 177/252] CI: cache pombast timestamps in status workflow Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/status.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index b74a274..c9eceee 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -21,6 +21,19 @@ jobs: with: ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} + - name: Restore pombast cache + uses: actions/cache/restore@v4 + with: + path: ~/.cache/pombast/pom-timestamps + restore-keys: ${{ runner.os }}-pombast-status- + - name: Generate and publish status page run: .github/status.sh shell: bash + + - name: Save pombast cache + if: always() + uses: actions/cache/save@v4 + with: + path: ~/.cache/pombast/pom-timestamps + key: ${{ runner.os }}-pombast-status-${{ github.run_id }} From f590b0ef3592dc680b29c3813507c1dfe2641b24 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 20 May 2026 17:30:25 -0500 Subject: [PATCH 178/252] CI: also run the pombast *melt* command --- .github/melt.sh | 4 ++++ .github/setup-build.sh | 2 +- .github/smelt.sh | 3 --- .github/status.sh | 2 +- .github/workflows/build.yml | 4 ++-- 5 files changed, 8 insertions(+), 7 deletions(-) create mode 100755 .github/melt.sh delete mode 100755 .github/smelt.sh diff --git a/.github/melt.sh b/.github/melt.sh new file mode 100755 index 0000000..0785de6 --- /dev/null +++ b/.github/melt.sh @@ -0,0 +1,4 @@ +#!/bin/sh +uv tool install "git+https://github.com/scijava/pombast.git" +pombast melt . || true +pombast smelt --json smelt.json . diff --git a/.github/setup-build.sh b/.github/setup-build.sh index ff44a36..bdc2ff7 100755 --- a/.github/setup-build.sh +++ b/.github/setup-build.sh @@ -2,7 +2,7 @@ curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/main/ci-setup-github-actions.sh sh ci-setup-github-actions.sh -# Install native libraries needed to build and test smelt components. +# Install native libraries needed to smelt components. pkgs="libxcb-shape0" # org.janelia:H5J_Loader_Plugin pkgs="$pkgs libgtk2.0-0" # net.imagej:imagej-opencv pkgs="$pkgs libblosc1" # org.janelia.saalfeldlab:n5-blosc diff --git a/.github/smelt.sh b/.github/smelt.sh deleted file mode 100755 index 1a92a19..0000000 --- a/.github/smelt.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -uv tool install "git+https://github.com/scijava/pombast.git@66a1e3abff431846a900703f7450e0c21f1456cc" -pombast smelt --config pombast.toml --json smelt.json . diff --git a/.github/status.sh b/.github/status.sh index f94d572..86500cc 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,5 +1,5 @@ #!/bin/sh uv tool install "git+https://github.com/scijava/pombast.git@66a1e3abff431846a900703f7450e0c21f1456cc" -pombast status --config pombast.toml --html index.html . +pombast status . commitNote="$(TZ=UTC date +'%Y-%m-%d %H:%M:%S UTC')" .github/publish.sh index.html "Update component table ($commitNote)" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 909668a..b55033b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -57,8 +57,8 @@ jobs: path: ~/.cache/pombast key: ${{ runner.os }}-pombast-cache - - name: Smelt components - run: .github/smelt.sh + - name: Run pombast melt+smelt commands + run: .github/melt.sh shell: bash - name: Delete old pombast cache From 3600df85ab54a4bb1a96d22c267ae31e5a336637 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 22 May 2026 17:43:48 -0500 Subject: [PATCH 179/252] CI: publish pombast team reports, improve caching Co-authored-by: Claude Sonnet 4.6 --- .github/publish.sh | 39 ++++++++++++++++++++---------- .github/status.sh | 6 ++--- .github/workflows/build.yml | 2 +- .github/workflows/status.yml | 46 ++++++++++++++++++++++++++++++++---- 4 files changed, 72 insertions(+), 21 deletions(-) diff --git a/.github/publish.sh b/.github/publish.sh index ac79edb..be5b074 100755 --- a/.github/publish.sh +++ b/.github/publish.sh @@ -1,25 +1,40 @@ #!/bin/sh # Commit a file to the status.scijava.org gh-pages branch. -# Usage: publish.sh [commit-message] # Requires SSH agent to be running with write access to status.scijava.org. set -e -file=$1 -message=${2:-"Update $(basename "$file")"} -test -f "$file" || { echo "File not found: $file" >&2; exit 1; } -dest=$(basename "$file") + +test $# -gt 1 || { + echo "Usage: publish.sh \"Commit message\" file1 [file2 ...]" + exit 2 +} + +datestamp="$(TZ=UTC date +'%Y-%m-%d %H:%M:%S UTC')" +message="$1 ($datestamp)" +shift git config --global user.name github-actions git config --global user.email github-actions@github.com -git clone --depth=1 --branch=gh-pages git@github.com:scijava/status.scijava.org site-publish -cp "$file" "site-publish/$dest" -cd site-publish -if git diff --quiet "$dest" +dest_dir=site-publish + +git clone --depth=1 --branch=gh-pages git@github.com:scijava/status.scijava.org "$dest_dir" + +while [ $# -gt 0 ] +do + file=$1 + shift + test -f "$file" || { echo "File not found: $file" >&2; exit 1; } + dest=$(basename "$file") + cp "$file" "$dest_dir/$dest" + (cd "$dest_dir" && git add "$dest") +done + +cd "$dest_dir" +if git diff --quiet . then - echo "== No changes to $dest ==" + echo "== No changes ==" else - echo "== Committing $dest ==" - git add "$dest" + echo "== Committing changes ==" git commit -m "$message" git push fi diff --git a/.github/status.sh b/.github/status.sh index 86500cc..d06ecd1 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,5 +1,5 @@ #!/bin/sh -uv tool install "git+https://github.com/scijava/pombast.git@66a1e3abff431846a900703f7450e0c21f1456cc" +uv tool install "git+https://github.com/scijava/pombast.git@1cece3cab4d9be78fe06203db6f9b87d4db99f2f" pombast status . -commitNote="$(TZ=UTC date +'%Y-%m-%d %H:%M:%S UTC')" -.github/publish.sh index.html "Update component table ($commitNote)" +pombast team . --html team.html +.github/publish.sh "Update status reports" index.html team.html diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b55033b..6b8cd55 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -79,5 +79,5 @@ jobs: - name: Publish smelt results if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' - run: .github/publish.sh smelt.json "Update smelt results" + run: .github/publish.sh "Update smelt results" smelt.json shell: bash diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index c9eceee..6809dd1 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -11,6 +11,8 @@ on: jobs: status: runs-on: ubuntu-latest + permissions: + actions: write # needed to delete and re-save caches steps: - uses: actions/checkout@v4 @@ -24,16 +26,50 @@ jobs: - name: Restore pombast cache uses: actions/cache/restore@v4 with: - path: ~/.cache/pombast/pom-timestamps - restore-keys: ${{ runner.os }}-pombast-status- + path: ~/.cache/pombast + key: ${{ runner.os }}-pombast-status + restore-keys: ${{ runner.os }}-pombast-cache - - name: Generate and publish status page + - name: Restore monoqueue cache + uses: actions/cache/restore@v4 + with: + path: ~/.cache/monoqueue + key: ${{ runner.os }}-monoqueue-status + + - name: Generate and publish status and team pages run: .github/status.sh shell: bash + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Delete old pombast status cache + if: always() + run: | + gh api --method DELETE \ + -H "Accept: application/vnd.github+json" \ + "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-pombast-status" || true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Save pombast cache if: always() uses: actions/cache/save@v4 with: - path: ~/.cache/pombast/pom-timestamps - key: ${{ runner.os }}-pombast-status-${{ github.run_id }} + path: ~/.cache/pombast + key: ${{ runner.os }}-pombast-status + + - name: Delete old monoqueue cache + if: always() + run: | + gh api --method DELETE \ + -H "Accept: application/vnd.github+json" \ + "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-monoqueue-status" || true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Save monoqueue cache + if: always() + uses: actions/cache/save@v4 + with: + path: ~/.cache/monoqueue + key: ${{ runner.os }}-monoqueue-status From f755ca31c98ede0846288777f59ebeb2238f6738 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 23 May 2026 08:39:10 -0500 Subject: [PATCH 180/252] CI: further improve caching --- .github/delete-cache.sh | 5 +++++ .github/workflows/build.yml | 10 ++++------ .github/workflows/status.yml | 14 +++++--------- 3 files changed, 14 insertions(+), 15 deletions(-) create mode 100755 .github/delete-cache.sh diff --git a/.github/delete-cache.sh b/.github/delete-cache.sh new file mode 100755 index 0000000..6c3dbb9 --- /dev/null +++ b/.github/delete-cache.sh @@ -0,0 +1,5 @@ +#!/bin/sh +test "$1" || { echo "Usage: delete-cache.sh cache-key"; exit 1; } +gh api --method DELETE \ + -H "Accept: application/vnd.github+json" \ + "/repos/scijava/pom-scijava/actions/caches?key=$1" || true diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6b8cd55..a29e656 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -55,7 +55,7 @@ jobs: uses: actions/cache/restore@v4 with: path: ~/.cache/pombast - key: ${{ runner.os }}-pombast-cache + key: ${{ runner.os }}-pombast-build - name: Run pombast melt+smelt commands run: .github/melt.sh @@ -63,10 +63,8 @@ jobs: - name: Delete old pombast cache if: always() - run: | - gh api --method DELETE \ - -H "Accept: application/vnd.github+json" \ - "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-pombast-cache" || true + run: .github/delete-cache.sh "${{ runner.os }}-pombast-build" + shell: bash env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -75,7 +73,7 @@ jobs: uses: actions/cache/save@v4 with: path: ~/.cache/pombast - key: ${{ runner.os }}-pombast-cache + key: ${{ runner.os }}-pombast-build - name: Publish smelt results if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index 6809dd1..c14eaf3 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -28,8 +28,8 @@ jobs: with: path: ~/.cache/pombast key: ${{ runner.os }}-pombast-status - restore-keys: ${{ runner.os }}-pombast-cache + # The monoqueue library is used by pombast to read GitHub issues. - name: Restore monoqueue cache uses: actions/cache/restore@v4 with: @@ -44,10 +44,8 @@ jobs: - name: Delete old pombast status cache if: always() - run: | - gh api --method DELETE \ - -H "Accept: application/vnd.github+json" \ - "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-pombast-status" || true + run: .github/delete-cache.sh "${{ runner.os }}-pombast-status" + shell: bash env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -60,10 +58,8 @@ jobs: - name: Delete old monoqueue cache if: always() - run: | - gh api --method DELETE \ - -H "Accept: application/vnd.github+json" \ - "/repos/scijava/pom-scijava/actions/caches?key=${{ runner.os }}-monoqueue-status" || true + run: .github/delete-cache.sh "${{ runner.os }}-monoqueue-status" + shell: bash env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 53646cd6d13d8a99f91197b7e16c9a25d674a042 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 24 May 2026 13:29:05 -0500 Subject: [PATCH 181/252] Update component versions * scijava-common: 2.99.2 -> 2.100.1 * scijava-optional: 1.0.1 -> 1.0.2 * scijava-table: 1.0.2 -> 1.0.3 These releases support the release of imagej-server 0.2.0. --- pom.xml | 6 +++--- pombast.toml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 781fb59..f8dc529 100644 --- a/pom.xml +++ b/pom.xml @@ -376,7 +376,7 @@ ${scijava-cache.version} - 2.99.2 + 2.100.1 ${scijava-common.version} @@ -408,7 +408,7 @@ ${scijava-log-slf4j.version} - 1.0.1 + 1.0.2 ${scijava-optional.version} @@ -436,7 +436,7 @@ ${scijava-search.version} - 1.0.2 + 1.0.3 ${scijava-table.version} diff --git a/pombast.toml b/pombast.toml index c83f285..f875df8 100644 --- a/pombast.toml +++ b/pombast.toml @@ -63,7 +63,7 @@ excludes = [ # NB: Skip closed-source artifacts. 'org.bonej:bonej-plus', # NB: The following artifacts have messy dependency trees. - # Too many problems to test as part of the mega-melt. + # Too many problems to test as part of the melt action. # See WARNING block in pom-scijava's pom.xml for details. 'net.imagej:imagej-server', 'org.apache.spark:spark-core_2.11', From 12c3fd779444c78ed1fc0d1cc039ea34589dc821 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 25 May 2026 17:34:37 -0500 Subject: [PATCH 182/252] Update SNT: 4.2.1 -> 5.0.9 --- pom.xml | 2 +- pombast.toml | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f8dc529..5877c32 100644 --- a/pom.xml +++ b/pom.xml @@ -1257,7 +1257,7 @@ ${bonej-utilities.version} - 4.2.1 + 5.0.9 ${SNT.version} diff --git a/pombast.toml b/pombast.toml index f875df8..3108add 100644 --- a/pombast.toml +++ b/pombast.toml @@ -220,3 +220,6 @@ java-version = 11 [components."org.bonej:bonej-ops"] java-version = 11 + +[components."org.morphonets:SNT"] +java-version = 21 From c5e9565e5b2276c0036654ca0c9f0ea0a147a5d5 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 25 May 2026 17:45:27 -0500 Subject: [PATCH 183/252] Set Java version to 21 for pombast melt This lets the melt action pass -- for now. A comment explains why this is tenuous, though. --- pombast.toml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pombast.toml b/pombast.toml index 3108add..724d695 100644 --- a/pombast.toml +++ b/pombast.toml @@ -13,7 +13,13 @@ footer = "footer.html" nexus-base = "https://maven.scijava.org" [melt] -java-version = 11 +# Some managed components require Java 21+. So it makes sense to melt with that version of Java. +# Unfortunately, the scijava.jvm.version is currently set to 11 by default. +# So even though OpenJDK 21 is being used to run Maven, the enforcer plugin still +# complains when encountering any Java libraries with bytecode newer than 11. +# Setting scijava.jvm.version to 21 by default would avoid the issue, but... +# is that really a good idea? Setting to 11 seems like a nice baseline compromise right now. +java-version = 21 # Maximum Java version of all included component + deps. template = "tests/mega-melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. From 47bc3dcfabaf2d77cf4f749d2f853d3c51d80778 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 26 May 2026 14:05:40 -0500 Subject: [PATCH 184/252] CI: always use latest pombast (for now) --- .github/status.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/status.sh b/.github/status.sh index d06ecd1..096e57c 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,5 +1,5 @@ #!/bin/sh -uv tool install "git+https://github.com/scijava/pombast.git@1cece3cab4d9be78fe06203db6f9b87d4db99f2f" +uv tool install "git+https://github.com/scijava/pombast.git" pombast status . pombast team . --html team.html .github/publish.sh "Update status reports" index.html team.html From 95c2862091d426628fffd17953d874282830d26a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 26 May 2026 14:06:09 -0500 Subject: [PATCH 185/252] Exclude OME artifacts from team analysis --- pombast.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pombast.toml b/pombast.toml index 724d695..56716c8 100644 --- a/pombast.toml +++ b/pombast.toml @@ -12,6 +12,9 @@ header = "header.html" footer = "footer.html" nexus-base = "https://maven.scijava.org" +[team] +excludes = ["ome:*", "org.openmicroscopy:*"] + [melt] # Some managed components require Java 21+. So it makes sense to melt with that version of Java. # Unfortunately, the scijava.jvm.version is currently set to 11 by default. From 05e80c180eb739f3d9d1d2a1b702d9f667e6138c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 26 May 2026 23:44:44 -0500 Subject: [PATCH 186/252] Consolidate status sidecars into pombast.toml --- ci-badges.txt | 45 --- pombast.toml | 821 ++++++++++++++++++++++++++++++++++++++++++++++++- projects.txt | 25 -- timestamps.txt | 161 ---------- 4 files changed, 818 insertions(+), 234 deletions(-) delete mode 100644 ci-badges.txt delete mode 100644 projects.txt delete mode 100644 timestamps.txt diff --git a/ci-badges.txt b/ci-badges.txt deleted file mode 100644 index cfe892d..0000000 --- a/ci-badges.txt +++ /dev/null @@ -1,45 +0,0 @@ -bigdataviewer/bigvolumeviewer-core -fiji/Colocalisation_Analysis -imagej/imagej-common -imagej/imagej-legacy -imglib/imglib2-mesh -imagej/imagej-matlab -ome/bioformats -ome/ome-codecs -ome/ome-common-java -ome/ome-metakit -ome/ome-model -ome/ome-poi -ome/omero-blitz -ome/omero-common -ome/omero-dsl-plugin -ome/omero-gateway-java -ome/omero-model -ome/omero-renderer -ome/omero-romio -ome/omero-server -scijava/java3d-core None -scijava/java3d-utils None -scijava/jep None -scijava/junit-benchmarks None -scijava/minimaven -scijava/native-lib-loader -scijava/parsington -scijava/scijava-coding-style -scijava/scijava-common -scijava/scijava-config -scijava/scijava-log-slf4j -scijava/scijava-maven-plugin -scijava/script-editor-scala -scijava/swing-checkbox-tree -scijava/vecmath None -trackmate-sc/TrackMate -trackmate-sc/TrackMate-CSVImporter -trackmate-sc/TrackMate-Cellpose -trackmate-sc/TrackMate-ExTrack -trackmate-sc/TrackMate-Ilastik -trackmate-sc/TrackMate-MorphoLibJ -trackmate-sc/TrackMate-Oneat -trackmate-sc/TrackMate-Skeleton -trackmate-sc/TrackMate-StarDist -trackmate-sc/TrackMate-Weka diff --git a/pombast.toml b/pombast.toml index 56716c8..7a6fc3e 100644 --- a/pombast.toml +++ b/pombast.toml @@ -4,9 +4,6 @@ repositories = ["scijava.public=https://maven.scijava.org/content/groups/public" [status] rules = "rules.xml" -projects = "projects.txt" -badges = "ci-badges.txt" -timestamps = "timestamps.txt" html = "index.html" header = "header.html" footer = "footer.html" @@ -15,6 +12,24 @@ nexus-base = "https://maven.scijava.org" [team] excludes = ["ome:*", "org.openmicroscopy:*"] +[badges] +includes = [ + "io.scif:*", + "de.nanoimaging:*", + "fr.inra.ijpb:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "ome:*", + "org.bonej:*", + "org.janelia*:*", + "org.morphonets:*", + "org.openmicroscopy:*", + "org.scijava:*", + "sc.fiji:*", +] + [melt] # Some managed components require Java 21+. So it makes sense to melt with that version of Java. # Unfortunately, the scijava.jvm.version is currently set to 11 by default. @@ -218,17 +233,817 @@ skip-tests = [ # at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) "sc.fiji:labkit-ui" = ["sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest"] +[components."fr.inra.ijpb:MorphoLibJ"] +ci-build = "build-main" + +[components."hsqldb:hsqldb"] +last-vetted = "20190101000000" + +[components."io.scif:scifio-bf-compat"] +ci-build = "build-main" + +[components."io.scif:scifio-cli"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."io.scif:scifio-hdf5"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."io.scif:scifio-jai-imageio"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."io.scif:scifio-labeling"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."io.scif:scifio-lifesci"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."io.scif:scifio-ome-xml"] +ci-build = "build-main" + [components."net.imagej:ij"] java-version = 11 +[components."net.imagej:imagej-deprecated"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-mesh"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-mesh-io"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-notebook"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-omero"] +ci-build = "build-main" + +[components."net.imagej:imagej-omero-legacy"] +ci-build = "build-main" + +[components."net.imagej:imagej-opencv"] +ci-build = "build-main" + +[components."net.imagej:imagej-ops"] +ci-build = "build-main" + +[components."net.imagej:imagej-plugins-batch"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-plugins-commands"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-plugins-tools"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-plugins-uploader-ssh"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-plugins-uploader-webdav"] +ci-build = "build-main" + +[components."net.imagej:imagej-scripting"] +ci-build = "build-main" + +[components."net.imagej:imagej-server"] +last-vetted = "20250101000000" + +[components."net.imagej:imagej-tensorflow"] +ci-build = "build-main" + +[components."net.imagej:imagej-ui-awt"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imagej:imagej-ui-swing"] +ci-build = "build-main" + +[components."net.imagej:imagej-updater"] +ci-build = "build-main" + +[components."net.imagej:op-finder"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."net.imglib2:imglib2-algorithm"] +ci-build = "build-main" + +[components."net.imglib2:imglib2-algorithm-fft"] +last-vetted = "20230309000000" + +[components."net.imglib2:imglib2-algorithm-gpl"] +last-vetted = "20230309000000" + [components."net.imglib2:imglib2-mesh"] java-version = 11 +[components."net.imglib2:imglib2-unsafe"] +last-vetted = "20230309000000" + +[components."net.preibischlab:multiview-simulation"] +ci-build = "build-main" + +[components."ome:bioformats"] +ci-build = "maven" + +[components."ome:ome-codecs"] +ci-build = "maven" + +[components."ome:ome-common-java"] +ci-build = "maven" + +[components."ome:ome-metakit"] +ci-build = "maven" + +[components."ome:ome-model"] +ci-build = "maven" + +[components."ome:ome-poi"] +ci-build = "maven" + [components."org.bonej:bonej-legacy-plugins_"] java-version = 11 +ci-build = "build-main" [components."org.bonej:bonej-ops"] java-version = 11 +ci-build = "build-main" + +[components."org.codehaus.groovy:groovy"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-ant"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-astbuilder"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-bsf"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-cli-commons"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-cli-picocli"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-console"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-datetime"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-dateutil"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-docgenerator"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-groovydoc"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-groovysh"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-jaxb"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-jmx"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-json"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-jsr223"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-macro"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-nio"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-servlet"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-sql"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-swing"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-templates"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-test"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-test-junit5"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-testng"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-xml"] +last-vetted = "20250101000000" + +[components."org.codehaus.groovy:groovy-yaml"] +last-vetted = "20250101000000" + +[components."org.janelia.saalfeldlab:jitk-tps"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-aws-s3"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-google-cloud"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-hdf5"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-ij"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-imglib2"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-universe"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:n5-viewer"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:trakem2-tps"] +ci-build = "build-main" + +[components."org.janelia.saalfeldlab:z-spacing"] +ci-build = "build-main" + +[components."org.mockito:mockito-core"] +last-vetted = "20250101000000" [components."org.morphonets:SNT"] java-version = 21 + +[components."org.ojalgo:ojalgo"] +last-vetted = "20250101000000" + +[components."org.openmicroscopy:omero-blitz"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-common"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-dsl-plugin"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-gateway-java"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-model"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-renderer"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-romio"] +ci-build = "gradle" + +[components."org.openmicroscopy:omero-server"] +ci-build = "gradle" + +[components."org.python:jython-slim"] +last-vetted = "20230309000000" + +[components."org.scijava:batch-processor"] +ci-build = "build-main" + +[components."org.scijava:j3dcore"] +last-vetted = "20180905120000" + +[components."org.scijava:j3dutils"] +last-vetted = "20180905120000" + +[components."org.scijava:java3d-core"] +ci-build = false + +[components."org.scijava:java3d-utils"] +ci-build = false + +[components."org.scijava:jep"] +ci-build = false +last-vetted = "20171225120000" + +[components."org.scijava:junit-benchmarks"] +ci-build = false +last-vetted = "20180905120000" + +[components."org.scijava:minimaven"] +last-vetted = "20230309000000" + +[components."org.scijava:native-lib-loader"] +last-vetted = "20230309000000" + +[components."org.scijava:scijava-cache"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-grab"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-io-http"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-java3d"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-listeners"] +last-vetted = "20211021000000" + +[components."org.scijava:scijava-maven-plugin"] +last-vetted = "20230309000000" + +[components."org.scijava:scijava-optional"] +last-vetted = "20230309000000" + +[components."org.scijava:scijava-plot"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-plugins-commands"] +ci-build = "build-main" + +[components."org.scijava:scijava-plugins-platforms"] +last-vetted = "20230309000000" + +[components."org.scijava:scijava-plugins-text-markdown"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scijava-plugins-text-plain"] +ci-build = "build-main" + +[components."org.scijava:scijava-search"] +ci-build = "build-main" + +[components."org.scijava:scijava-table"] +ci-build = "build-main" + +[components."org.scijava:scijava-ui-awt"] +last-vetted = "20230309000000" + +[components."org.scijava:scijava-ui-swing"] +ci-build = "build-main" + +[components."org.scijava:script-editor"] +ci-build = "build-main" + +[components."org.scijava:script-editor-jython"] +ci-build = "build-main" + +[components."org.scijava:scripting-beanshell"] +ci-build = "build-main" + +[components."org.scijava:scripting-clojure"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scripting-groovy"] +ci-build = "build-main" + +[components."org.scijava:scripting-java"] +last-vetted = "20230309000000" + +[components."org.scijava:scripting-javascript"] +ci-build = "build-main" + +[components."org.scijava:scripting-jruby"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scripting-jython"] +ci-build = "build-main" + +[components."org.scijava:scripting-kotlin"] +ci-build = "build-main" + +[components."org.scijava:scripting-matlab"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:scripting-renjin"] +ci-build = "build-main" + +[components."org.scijava:scripting-scala"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."org.scijava:swing-checkbox-tree"] +last-vetted = "20230309000000" + +[components."org.scijava:ui-behaviour"] +ci-build = "build-main" + +[components."org.scijava:vecmath"] +ci-build = false +last-vetted = "20180905120000" + +[components."org.springframework:spring-aop"] +last-vetted = "20250101000000" + +[components."org.springframework:spring-beans"] +last-vetted = "20250101000000" + +[components."org.springframework:spring-core"] +last-vetted = "20250101000000" + +[components."org.tensorflow:libtensorflow"] +last-vetted = "20200701000000" + +[components."org.tensorflow:libtensorflow_jni"] +last-vetted = "20200701000000" + +[components."org.tensorflow:libtensorflow_jni_gpu"] +last-vetted = "20200701000000" + +[components."org.tensorflow:proto"] +last-vetted = "20200701000000" + +[components."org.tensorflow:tensorflow"] +last-vetted = "20200701000000" + +[components."sc.fiji:3D_Blob_Segmentation"] +ci-build = "build-main" + +[components."sc.fiji:3D_Objects_Counter"] +ci-build = "build-main" +last-vetted = "20230313000000" + +[components."sc.fiji:3D_Viewer"] +ci-build = "build-main" +last-vetted = "20230313000000" + +[components."sc.fiji:AnalyzeSkeleton"] +ci-build = "build-main" + +[components."sc.fiji:AnalyzeSkeleton_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Anisotropic_Diffusion_2D"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Archipelago_Plugins"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Arrow"] +ci-build = "build-main" + +[components."sc.fiji:Arrow_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Auto_Local_Threshold"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Auto_Threshold"] +ci-build = "build-main" + +[components."sc.fiji:BalloonSegmentation"] +ci-build = "build-main" + +[components."sc.fiji:BalloonSegmentation_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Bug_Submitter"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:CPU_Meter"] +ci-build = "build-main" + +[components."sc.fiji:Calculator_Plus"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Cell_Counter"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Colocalisation_Analysis"] +last-vetted = "20230309000000" + +[components."sc.fiji:Color_Histogram"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Color_Inspector_3D"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Colour_Deconvolution"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:CorrectBleach"] +ci-build = "build-main" + +[components."sc.fiji:Correct_3D_Drift"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Descriptor_based_registration"] +ci-build = "build-main" + +[components."sc.fiji:Dichromacy"] +ci-build = "build-main" + +[components."sc.fiji:Dichromacy_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Directionality"] +ci-build = "build-main" + +[components."sc.fiji:Directionality_"] +last-vetted = "20230309000000" + +[components."sc.fiji:FS_Align_TrakEM2"] +ci-build = "build-main" + +[components."sc.fiji:Feature_Detection"] +ci-build = "build-main" + +[components."sc.fiji:Fiji_Archipelago"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Fiji_Developer"] +ci-build = "build-main" + +[components."sc.fiji:Fiji_Package_Maker"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:FlowJ"] +ci-build = "build-main" + +[components."sc.fiji:FlowJ_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Graph_Cut"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Gray_Morphology"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:H5J_Loader_Plugin"] +ci-build = "build-main" + +[components."sc.fiji:HDF5_Vibez"] +ci-build = "build-main" + +[components."sc.fiji:Helmholtz_Analysis"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:IJ_Robot"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:IO"] +ci-build = "build-main" + +[components."sc.fiji:Image_5D"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Image_Expression_Parser"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Interactive_3D_Surface_Plot"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:IsoData_Classifier"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Kappa"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Kuwahara_Filter"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:LSM_Reader"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:LSM_Toolbox"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Lasso_and_Blow_Tool"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Linear_Kuwahara"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:LocalThickness"] +ci-build = "build-main" + +[components."sc.fiji:LocalThickness_"] +last-vetted = "20230309000000" + +[components."sc.fiji:MTrack2"] +ci-build = "build-main" + +[components."sc.fiji:MTrack2_"] +last-vetted = "20230309000000" + +[components."sc.fiji:M_I_P"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:MaMuT"] +ci-build = "build-main" + +[components."sc.fiji:Manual_Tracking"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Multi_Kymograph"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:OMEVisual"] +last-vetted = "20230309000000" + +[components."sc.fiji:PIV_analyser"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:QuickPALM"] +ci-build = "build-main" + +[components."sc.fiji:QuickPALM_"] +last-vetted = "20230309000000" + +[components."sc.fiji:RATS"] +ci-build = "build-main" + +[components."sc.fiji:RATS_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Reconstruct_Reader"] +ci-build = "build-main" + +[components."sc.fiji:SPIM_Opener"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:SPIM_Registration"] +ci-build = "build-main" + +[components."sc.fiji:Samples"] +ci-build = "build-main" + +[components."sc.fiji:Samples_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Series_Labeler"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Siox_Segmentation"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Skeletonize3D"] +ci-build = "build-main" + +[components."sc.fiji:Skeletonize3D_"] +last-vetted = "20230309000000" + +[components."sc.fiji:SplineDeformationGenerator"] +ci-build = "build-main" + +[components."sc.fiji:SplineDeformationGenerator_"] +last-vetted = "20230309000000" + +[components."sc.fiji:Stack_Manipulation"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Statistical_Region_Merging"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Stitching"] +ci-build = "build-main" + +[components."sc.fiji:Sync_Win"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:T2-NIT"] +ci-build = "build-main" + +[components."sc.fiji:T2-TreelineGraph"] +ci-build = "build-main" + +[components."sc.fiji:Thread_Killer"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Time_Lapse"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:Time_Stamper"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:ToAST_"] +last-vetted = "20230309000000" + +[components."sc.fiji:TopoJ_"] +last-vetted = "20230309000000" + +[components."sc.fiji:VIB-lib"] +last-vetted = "20230309000000" + +[components."sc.fiji:Vaa3d_Reader"] +last-vetted = "20230309000000" + +[components."sc.fiji:Vaa3d_Writer"] +last-vetted = "20230309000000" + +[components."sc.fiji:Video_Editing"] +last-vetted = "20230309000000" + +[components."sc.fiji:bUnwarpJ_"] +last-vetted = "20230309000000" + +[components."sc.fiji:bij"] +last-vetted = "20230309000000" + +[components."sc.fiji:fiji-lib"] +last-vetted = "20230309000000" + +[components."sc.fiji:legacy-imglib1"] +ci-build = "build-main" + +[components."sc.fiji:level_sets"] +last-vetted = "20230309000000" + +[components."sc.fiji:pal-optimization"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:panorama_"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:register_virtual_stack_slices"] +ci-build = "build-main" + +[components."sc.fiji:registration_3d"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:spimdata"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:trakem2-transform"] +ci-build = "build-main" +last-vetted = "20230309000000" + +[components."sc.fiji:weave_jy2java"] +ci-build = "build-main" +last-vetted = "20230309000000" diff --git a/projects.txt b/projects.txt deleted file mode 100644 index 49959fe..0000000 --- a/projects.txt +++ /dev/null @@ -1,25 +0,0 @@ -mpicbg:mpicbg https://github.com/axtimwalde/mpicbg -mpicbg:mpicbg_ https://github.com/axtimwalde/mpicbg -net.imagej:ij https://github.com/imagej/ImageJ -net.imglib2:imglib2-label-multisets https://github.com/saalfeldlab/imglib2-label-multisets -ome:bio-formats_plugins https://github.com/ome/bioformats -ome:formats-api https://github.com/ome/bioformats -ome:formats-bsd https://github.com/ome/bioformats -ome:formats-gpl https://github.com/ome/bioformats -org.janelia:H5J_Loader_Plugin https://github.com/fiji/H5J_Loader_Plugin -org.openmicroscopy:metakit https://github.com/ome/ome-metakit -org.openmicroscopy:ome-common https://github.com/ome/ome-common-java -org.openmicroscopy:ome-xml https://github.com/ome/ome-model -org.openmicroscopy:omero-gateway https://github.com/ome/omero-gateway-java -org.openmicroscopy:specification https://github.com/ome/ome-model -org.scijava:j3dcore https://github.com/scijava/java3d-core -org.scijava:j3dutils https://github.com/scijava/java3d-utils -sc.fiji:T2-NIT https://github.com/trakem2/T2-NIT -sc.fiji:T2-TreelineGraph https://github.com/trakem2/T2-TreelineGraph -sc.fiji:TrakEM2_ https://github.com/trakem2/TrakEM2 -sc.fiji:VectorString https://github.com/trakem2/VectorString -sc.fiji:bigwarp_fiji https://github.com/saalfeldlab/bigwarp -sc.fiji:spim_data https://github.com/bigdataviewer/spimdata -sc.fiji:trakem2-transform https://github.com/trakem2/trakem2-transform -sc.fiji:trakem2_tps https://github.com/saalfeldlab/trakem2-tps -sc.fiji:z_spacing https://github.com/saalfeldlab/z-spacing diff --git a/timestamps.txt b/timestamps.txt deleted file mode 100644 index d3b86f2..0000000 --- a/timestamps.txt +++ /dev/null @@ -1,161 +0,0 @@ -# Stable forks of third-party projects. -org.scijava:j3dcore 20180905120000 -org.scijava:j3dutils 20180905120000 -org.scijava:jep 20171225120000 -org.scijava:junit-benchmarks 20180905120000 -org.scijava:vecmath 20180905120000 - -# Newer versions break stuff... freeze for now. -hsqldb:hsqldb 20190101000000 -org.codehaus.groovy:groovy 20250101000000 -org.codehaus.groovy:groovy-ant 20250101000000 -org.codehaus.groovy:groovy-astbuilder 20250101000000 -org.codehaus.groovy:groovy-bsf 20250101000000 -org.codehaus.groovy:groovy-cli-commons 20250101000000 -org.codehaus.groovy:groovy-cli-picocli 20250101000000 -org.codehaus.groovy:groovy-console 20250101000000 -org.codehaus.groovy:groovy-datetime 20250101000000 -org.codehaus.groovy:groovy-dateutil 20250101000000 -org.codehaus.groovy:groovy-docgenerator 20250101000000 -org.codehaus.groovy:groovy-groovydoc 20250101000000 -org.codehaus.groovy:groovy-groovysh 20250101000000 -org.codehaus.groovy:groovy-jaxb 20250101000000 -org.codehaus.groovy:groovy-jmx 20250101000000 -org.codehaus.groovy:groovy-json 20250101000000 -org.codehaus.groovy:groovy-jsr223 20250101000000 -org.codehaus.groovy:groovy-macro 20250101000000 -org.codehaus.groovy:groovy-nio 20250101000000 -org.codehaus.groovy:groovy-servlet 20250101000000 -org.codehaus.groovy:groovy-sql 20250101000000 -org.codehaus.groovy:groovy-swing 20250101000000 -org.codehaus.groovy:groovy-templates 20250101000000 -org.codehaus.groovy:groovy-test 20250101000000 -org.codehaus.groovy:groovy-test-junit5 20250101000000 -org.codehaus.groovy:groovy-testng 20250101000000 -org.codehaus.groovy:groovy-xml 20250101000000 -org.codehaus.groovy:groovy-yaml 20250101000000 -org.mockito:mockito-core 20250101000000 -org.ojalgo:ojalgo 20250101000000 -org.python:jython-slim 20230309000000 -org.springframework:spring-aop 20250101000000 -org.springframework:spring-beans 20250101000000 -org.springframework:spring-core 20250101000000 -org.tensorflow:libtensorflow 20200701000000 -org.tensorflow:libtensorflow_jni 20200701000000 -org.tensorflow:libtensorflow_jni_gpu 20200701000000 -org.tensorflow:proto 20200701000000 -org.tensorflow:tensorflow 20200701000000 - -# Not maintaining ImageJ Server currently... -net.imagej:imagej-server 20250101000000 - -# SciJava projects with only CI+POM changes. -io.scif:scifio-cli 20230309000000 -io.scif:scifio-hdf5 20230309000000 -io.scif:scifio-jai-imageio 20230309000000 -io.scif:scifio-labeling 20230309000000 -io.scif:scifio-lifesci 20230309000000 -net.imagej:imagej-deprecated 20230309000000 -net.imagej:imagej-mesh 20230309000000 -net.imagej:imagej-mesh-io 20230309000000 -net.imagej:imagej-notebook 20230309000000 -net.imagej:imagej-plugins-batch 20230309000000 -net.imagej:imagej-plugins-commands 20230309000000 -net.imagej:imagej-plugins-tools 20230309000000 -net.imagej:imagej-plugins-uploader-ssh 20230309000000 -net.imagej:imagej-ui-awt 20230309000000 -net.imagej:op-finder 20230309000000 -net.imglib2:imglib2-algorithm-fft 20230309000000 -net.imglib2:imglib2-algorithm-gpl 20230309000000 -net.imglib2:imglib2-unsafe 20230309000000 -org.scijava:minimaven 20230309000000 -org.scijava:native-lib-loader 20230309000000 -org.scijava:scijava-cache 20230309000000 -org.scijava:scijava-grab 20230309000000 -org.scijava:scijava-io-http 20230309000000 -org.scijava:scijava-java3d 20230309000000 -org.scijava:scijava-listeners 20211021000000 -org.scijava:scijava-maven-plugin 20230309000000 -org.scijava:scijava-optional 20230309000000 -org.scijava:scijava-plot 20230309000000 -org.scijava:scijava-plugins-platforms 20230309000000 -org.scijava:scijava-plugins-text-markdown 20230309000000 -org.scijava:scijava-ui-awt 20230309000000 -org.scijava:scripting-clojure 20230309000000 -org.scijava:scripting-java 20230309000000 -org.scijava:scripting-jruby 20230309000000 -org.scijava:scripting-matlab 20230309000000 -org.scijava:scripting-scala 20230309000000 -org.scijava:swing-checkbox-tree 20230309000000 -sc.fiji:3D_Objects_Counter 20230313000000 -sc.fiji:3D_Viewer 20230313000000 -sc.fiji:AnalyzeSkeleton_ 20230309000000 -sc.fiji:Anisotropic_Diffusion_2D 20230309000000 -sc.fiji:Archipelago_Plugins 20230309000000 -sc.fiji:Arrow_ 20230309000000 -sc.fiji:Auto_Local_Threshold 20230309000000 -sc.fiji:BalloonSegmentation_ 20230309000000 -sc.fiji:Bug_Submitter 20230309000000 -sc.fiji:Calculator_Plus 20230309000000 -sc.fiji:Cell_Counter 20230309000000 -sc.fiji:Colocalisation_Analysis 20230309000000 -sc.fiji:Color_Histogram 20230309000000 -sc.fiji:Color_Inspector_3D 20230309000000 -sc.fiji:Colour_Deconvolution 20230309000000 -sc.fiji:Correct_3D_Drift 20230309000000 -sc.fiji:Dichromacy_ 20230309000000 -sc.fiji:Directionality_ 20230309000000 -sc.fiji:Fiji_Archipelago 20230309000000 -sc.fiji:Fiji_Package_Maker 20230309000000 -sc.fiji:FlowJ_ 20230309000000 -sc.fiji:Graph_Cut 20230309000000 -sc.fiji:Gray_Morphology 20230309000000 -sc.fiji:Helmholtz_Analysis 20230309000000 -sc.fiji:IJ_Robot 20230309000000 -sc.fiji:Image_5D 20230309000000 -sc.fiji:Image_Expression_Parser 20230309000000 -sc.fiji:Interactive_3D_Surface_Plot 20230309000000 -sc.fiji:IsoData_Classifier 20230309000000 -sc.fiji:Kappa 20230309000000 -sc.fiji:Kuwahara_Filter 20230309000000 -sc.fiji:LSM_Reader 20230309000000 -sc.fiji:LSM_Toolbox 20230309000000 -sc.fiji:Lasso_and_Blow_Tool 20230309000000 -sc.fiji:Linear_Kuwahara 20230309000000 -sc.fiji:LocalThickness_ 20230309000000 -sc.fiji:MTrack2_ 20230309000000 -sc.fiji:M_I_P 20230309000000 -sc.fiji:Manual_Tracking 20230309000000 -sc.fiji:Multi_Kymograph 20230309000000 -sc.fiji:OMEVisual 20230309000000 -sc.fiji:PIV_analyser 20230309000000 -sc.fiji:QuickPALM_ 20230309000000 -sc.fiji:RATS_ 20230309000000 -sc.fiji:SPIM_Opener 20230309000000 -sc.fiji:Samples_ 20230309000000 -sc.fiji:Series_Labeler 20230309000000 -sc.fiji:Siox_Segmentation 20230309000000 -sc.fiji:Skeletonize3D_ 20230309000000 -sc.fiji:SplineDeformationGenerator_ 20230309000000 -sc.fiji:Stack_Manipulation 20230309000000 -sc.fiji:Statistical_Region_Merging 20230309000000 -sc.fiji:Sync_Win 20230309000000 -sc.fiji:Thread_Killer 20230309000000 -sc.fiji:Time_Lapse 20230309000000 -sc.fiji:Time_Stamper 20230309000000 -sc.fiji:ToAST_ 20230309000000 -sc.fiji:TopoJ_ 20230309000000 -sc.fiji:VIB-lib 20230309000000 -sc.fiji:Vaa3d_Reader 20230309000000 -sc.fiji:Vaa3d_Writer 20230309000000 -sc.fiji:Video_Editing 20230309000000 -sc.fiji:bUnwarpJ_ 20230309000000 -sc.fiji:bij 20230309000000 -sc.fiji:fiji-lib 20230309000000 -sc.fiji:level_sets 20230309000000 -sc.fiji:pal-optimization 20230309000000 -sc.fiji:panorama_ 20230309000000 -sc.fiji:registration_3d 20230309000000 -sc.fiji:spimdata 20230309000000 -sc.fiji:trakem2-transform 20230309000000 -sc.fiji:weave_jy2java 20230309000000 From 27bf0476496e8756de6cef8dd890c0947fb15984 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 15:42:46 -0500 Subject: [PATCH 187/252] Manage version of scijava-desktop The scijava-desktop component now unifies scijava-links and scijava-plugins-platforms into a single artifact, responsible for managing OS-platform-level integrations. --- pom.xml | 35 ++++++++++++----------------------- 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/pom.xml b/pom.xml index 5877c32..9a1d250 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 44.0.1-SNAPSHOT + 45.0.0-SNAPSHOT pom SciJava Parent POM @@ -383,6 +383,10 @@ 2.0.3 ${scijava-config.version} + + 1.0.0 + ${scijava-desktop.version} + 0.1.2 ${scijava-grab.version} @@ -395,10 +399,6 @@ 0.1.0 ${scijava-java3d.version} - - 1.0.0 - ${scijava-links.version} - 1.0.0-beta-3 ${scijava-listeners.version} @@ -419,10 +419,6 @@ 0.2.5 ${scijava-plugins-commands.version} - - 0.3.1 - ${scijava-plugins-platforms.version} - 0.1.3 ${scijava-plugins-text-markdown.version} @@ -2651,6 +2647,13 @@ ${org.scijava.scijava-config.version}
+ + + org.scijava + scijava-desktop + ${org.scijava.scijava-desktop.version} + + org.scijava @@ -2672,13 +2675,6 @@ ${org.scijava.scijava-java3d.version} - - - org.scijava - scijava-links - ${org.scijava.scijava-links.version} - - org.scijava @@ -2714,13 +2710,6 @@ ${org.scijava.scijava-plugins-commands.version} - - - org.scijava - scijava-plugins-platforms - ${org.scijava.scijava-plugins-platforms.version} - - org.scijava From 8dbb21fdb7461866bc453aa7b1f118a22a8fc804 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 15:47:14 -0500 Subject: [PATCH 188/252] Fix build badge locations for all components --- pombast.toml | 187 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 118 insertions(+), 69 deletions(-) diff --git a/pombast.toml b/pombast.toml index 7a6fc3e..1ec8670 100644 --- a/pombast.toml +++ b/pombast.toml @@ -14,9 +14,10 @@ excludes = ["ome:*", "org.openmicroscopy:*"] [badges] includes = [ - "io.scif:*", "de.nanoimaging:*", "fr.inra.ijpb:*", + "io.scif:*", + "jitk:*", "mpicbg:*", "net.imagej:*", "net.imglib2:*", @@ -233,7 +234,7 @@ skip-tests = [ # at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) "sc.fiji:labkit-ui" = ["sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest"] -[components."fr.inra.ijpb:MorphoLibJ"] +[components."fr.inra.ijpb:MorphoLibJ_"] ci-build = "build-main" [components."hsqldb:hsqldb"] @@ -265,6 +266,9 @@ last-vetted = "20230309000000" [components."io.scif:scifio-ome-xml"] ci-build = "build-main" +[components."jitk:jitk-tps"] +ci-build = "build-main" + [components."net.imagej:ij"] java-version = 11 @@ -353,32 +357,35 @@ java-version = 11 [components."net.imglib2:imglib2-unsafe"] last-vetted = "20230309000000" -[components."net.preibischlab:multiview-simulation"] +[components."net.preibisch:multiview-simulation"] ci-build = "build-main" -[components."ome:bioformats"] +[components."ome:formats-api"] ci-build = "maven" -[components."ome:ome-codecs"] +[components."ome:formats-bsd"] ci-build = "maven" -[components."ome:ome-common-java"] +[components."ome:formats-gpl"] ci-build = "maven" -[components."ome:ome-metakit"] -ci-build = "maven" +[components."org.bonej:bonej-legacy-plugins_"] +java-version = 11 +ci-build = "build-main" -[components."ome:ome-model"] -ci-build = "maven" +[components."org.bonej:bonej-legacy-util_"] +java-version = 11 +ci-build = "build-main" -[components."ome:ome-poi"] -ci-build = "maven" +[components."org.bonej:bonej-ops"] +java-version = 11 +ci-build = "build-main" -[components."org.bonej:bonej-legacy-plugins_"] +[components."org.bonej:bonej-plugins"] java-version = 11 ci-build = "build-main" -[components."org.bonej:bonej-ops"] +[components."org.bonej:bonej-utilities"] java-version = 11 ci-build = "build-main" @@ -463,7 +470,7 @@ last-vetted = "20250101000000" [components."org.codehaus.groovy:groovy-yaml"] last-vetted = "20250101000000" -[components."org.janelia.saalfeldlab:jitk-tps"] +[components."org.janelia:H5J_Loader_Plugin"] ci-build = "build-main" [components."org.janelia.saalfeldlab:n5-aws-s3"] @@ -484,13 +491,7 @@ ci-build = "build-main" [components."org.janelia.saalfeldlab:n5-universe"] ci-build = "build-main" -[components."org.janelia.saalfeldlab:n5-viewer"] -ci-build = "build-main" - -[components."org.janelia.saalfeldlab:trakem2-tps"] -ci-build = "build-main" - -[components."org.janelia.saalfeldlab:z-spacing"] +[components."org.janelia.saalfeldlab:n5-viewer_fiji"] ci-build = "build-main" [components."org.mockito:mockito-core"] @@ -502,6 +503,23 @@ java-version = 21 [components."org.ojalgo:ojalgo"] last-vetted = "20250101000000" +[components."org.openmicroscopy:metakit"] +project-url = "https://github.com/ome/ome-metakit" +ci-build = "maven" + +[components."org.openmicroscopy:ome-codecs"] +ci-build = "maven" + +[components."org.openmicroscopy:ome-common"] +ci-build = "maven" + +[components."org.openmicroscopy:ome-poi"] +ci-build = "maven" + +[components."org.openmicroscopy:ome-xml"] +project-url = "https://github.com/ome/ome-model" +ci-build = "maven" + [components."org.openmicroscopy:omero-blitz"] ci-build = "gradle" @@ -511,7 +529,8 @@ ci-build = "gradle" [components."org.openmicroscopy:omero-dsl-plugin"] ci-build = "gradle" -[components."org.openmicroscopy:omero-gateway-java"] +[components."org.openmicroscopy:omero-gateway"] +project-url = "https://github.com/ome/omero-gateway-java" ci-build = "gradle" [components."org.openmicroscopy:omero-model"] @@ -526,6 +545,10 @@ ci-build = "gradle" [components."org.openmicroscopy:omero-server"] ci-build = "gradle" +[components."org.openmicroscopy:specification"] +project-url = "https://github.com/ome/ome-model" +ci-build = "maven" + [components."org.python:jython-slim"] last-vetted = "20230309000000" @@ -700,10 +723,8 @@ last-vetted = "20230313000000" ci-build = "build-main" last-vetted = "20230313000000" -[components."sc.fiji:AnalyzeSkeleton"] -ci-build = "build-main" - [components."sc.fiji:AnalyzeSkeleton_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Anisotropic_Diffusion_2D"] @@ -714,10 +735,8 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:Arrow"] -ci-build = "build-main" - [components."sc.fiji:Arrow_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Auto_Local_Threshold"] @@ -727,10 +746,8 @@ last-vetted = "20230309000000" [components."sc.fiji:Auto_Threshold"] ci-build = "build-main" -[components."sc.fiji:BalloonSegmentation"] -ci-build = "build-main" - [components."sc.fiji:BalloonSegmentation_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Bug_Submitter"] @@ -763,7 +780,7 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:CorrectBleach"] +[components."sc.fiji:CorrectBleach_"] ci-build = "build-main" [components."sc.fiji:Correct_3D_Drift"] @@ -773,16 +790,12 @@ last-vetted = "20230309000000" [components."sc.fiji:Descriptor_based_registration"] ci-build = "build-main" -[components."sc.fiji:Dichromacy"] -ci-build = "build-main" - [components."sc.fiji:Dichromacy_"] -last-vetted = "20230309000000" - -[components."sc.fiji:Directionality"] ci-build = "build-main" +last-vetted = "20230309000000" [components."sc.fiji:Directionality_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:FS_Align_TrakEM2"] @@ -802,10 +815,8 @@ ci-build = "build-main" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:FlowJ"] -ci-build = "build-main" - [components."sc.fiji:FlowJ_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Graph_Cut"] @@ -816,9 +827,6 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:H5J_Loader_Plugin"] -ci-build = "build-main" - [components."sc.fiji:HDF5_Vibez"] ci-build = "build-main" @@ -830,7 +838,7 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:IO"] +[components."sc.fiji:IO_"] ci-build = "build-main" [components."sc.fiji:Image_5D"] @@ -873,16 +881,12 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:LocalThickness"] -ci-build = "build-main" - [components."sc.fiji:LocalThickness_"] -last-vetted = "20230309000000" - -[components."sc.fiji:MTrack2"] ci-build = "build-main" +last-vetted = "20230309000000" [components."sc.fiji:MTrack2_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:M_I_P"] @@ -907,16 +911,12 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:QuickPALM"] -ci-build = "build-main" - [components."sc.fiji:QuickPALM_"] -last-vetted = "20230309000000" - -[components."sc.fiji:RATS"] ci-build = "build-main" +last-vetted = "20230309000000" [components."sc.fiji:RATS_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Reconstruct_Reader"] @@ -929,10 +929,8 @@ last-vetted = "20230309000000" [components."sc.fiji:SPIM_Registration"] ci-build = "build-main" -[components."sc.fiji:Samples"] -ci-build = "build-main" - [components."sc.fiji:Samples_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Series_Labeler"] @@ -943,16 +941,12 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:Skeletonize3D"] -ci-build = "build-main" - [components."sc.fiji:Skeletonize3D_"] -last-vetted = "20230309000000" - -[components."sc.fiji:SplineDeformationGenerator"] ci-build = "build-main" +last-vetted = "20230309000000" [components."sc.fiji:SplineDeformationGenerator_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Stack_Manipulation"] @@ -963,7 +957,7 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:Stitching"] +[components."sc.fiji:Stitching_"] ci-build = "build-main" [components."sc.fiji:Sync_Win"] @@ -989,36 +983,85 @@ ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:ToAST_"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:TopoJ_"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:Trainable_Segmentation"] +ci-build = "build-main" + +[components."sc.fiji:TrakEM2_"] +ci-build = "build-main" + +[components."sc.fiji:TrakEM2_Archipelago"] +ci-build = "build-main" + [components."sc.fiji:VIB-lib"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:VIB_"] +ci-build = "build-main" + [components."sc.fiji:Vaa3d_Reader"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:Vaa3d_Writer"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:VectorString"] +ci-build = "build-main" + [components."sc.fiji:Video_Editing"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:Volume_Calculator"] +ci-build = "build-main" + +[components."sc.fiji:Volume_Viewer"] +ci-build = "build-main" + [components."sc.fiji:bUnwarpJ_"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:bigdataviewer-server"] +ci-build = "build-main" + +[components."sc.fiji:bigdataviewer-vistools"] +ci-build = "build-main" + +[components."sc.fiji:bigdataviewer_fiji"] +ci-build = "build-main" + [components."sc.fiji:bij"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:blockmatching_"] +ci-build = "build-main" + [components."sc.fiji:fiji-lib"] +ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:labkit-pixel-classification"] +ci-build = "build-main" + +[components."sc.fiji:labkit-ui"] +ci-build = "build-main" + [components."sc.fiji:legacy-imglib1"] ci-build = "build-main" [components."sc.fiji:level_sets"] +ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:pal-optimization"] @@ -1036,7 +1079,7 @@ ci-build = "build-main" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:spimdata"] +[components."sc.fiji:spim_data"] ci-build = "build-main" last-vetted = "20230309000000" @@ -1044,6 +1087,12 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:trakem2_tps"] +ci-build = "build-main" + [components."sc.fiji:weave_jy2java"] ci-build = "build-main" last-vetted = "20230309000000" + +[components."sc.fiji:z_spacing"] +ci-build = "build-main" From 9a8855bbeb945e534dabf9a8cd50a98932f6b4d7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 15:53:28 -0500 Subject: [PATCH 189/252] Include MorphoLibJ in the smelt action --- pombast.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pombast.toml b/pombast.toml index 1ec8670..285bdb4 100644 --- a/pombast.toml +++ b/pombast.toml @@ -134,6 +134,7 @@ excludes = [ [smelt] includes = [ "ca.mcgill:*", + "fr.inra.ijpb:*", "io.scif:*", "jitk:*", "mpicbg:*", From 7c6e49f6b8f2eae2a6ee7c6b187106cbbf68ae67 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 15:53:45 -0500 Subject: [PATCH 190/252] Remove obsolete vetting timestamps --- pombast.toml | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/pombast.toml b/pombast.toml index 285bdb4..3512af4 100644 --- a/pombast.toml +++ b/pombast.toml @@ -258,7 +258,6 @@ last-vetted = "20230309000000" [components."io.scif:scifio-labeling"] ci-build = "build-main" -last-vetted = "20230309000000" [components."io.scif:scifio-lifesci"] ci-build = "build-main" @@ -275,11 +274,9 @@ java-version = 11 [components."net.imagej:imagej-deprecated"] ci-build = "build-main" -last-vetted = "20230309000000" [components."net.imagej:imagej-mesh"] ci-build = "build-main" -last-vetted = "20230309000000" [components."net.imagej:imagej-mesh-io"] ci-build = "build-main" @@ -307,7 +304,6 @@ last-vetted = "20230309000000" [components."net.imagej:imagej-plugins-commands"] ci-build = "build-main" -last-vetted = "20230309000000" [components."net.imagej:imagej-plugins-tools"] ci-build = "build-main" @@ -323,9 +319,6 @@ ci-build = "build-main" [components."net.imagej:imagej-scripting"] ci-build = "build-main" -[components."net.imagej:imagej-server"] -last-vetted = "20250101000000" - [components."net.imagej:imagej-tensorflow"] ci-build = "build-main" @@ -349,15 +342,9 @@ ci-build = "build-main" [components."net.imglib2:imglib2-algorithm-fft"] last-vetted = "20230309000000" -[components."net.imglib2:imglib2-algorithm-gpl"] -last-vetted = "20230309000000" - [components."net.imglib2:imglib2-mesh"] java-version = 11 -[components."net.imglib2:imglib2-unsafe"] -last-vetted = "20230309000000" - [components."net.preibisch:multiview-simulation"] ci-build = "build-main" @@ -550,9 +537,6 @@ ci-build = "gradle" project-url = "https://github.com/ome/ome-model" ci-build = "maven" -[components."org.python:jython-slim"] -last-vetted = "20230309000000" - [components."org.scijava:batch-processor"] ci-build = "build-main" @@ -579,20 +563,15 @@ last-vetted = "20180905120000" [components."org.scijava:minimaven"] last-vetted = "20230309000000" -[components."org.scijava:native-lib-loader"] -last-vetted = "20230309000000" - [components."org.scijava:scijava-cache"] ci-build = "build-main" last-vetted = "20230309000000" [components."org.scijava:scijava-grab"] ci-build = "build-main" -last-vetted = "20230309000000" [components."org.scijava:scijava-io-http"] ci-build = "build-main" -last-vetted = "20230309000000" [components."org.scijava:scijava-java3d"] ci-build = "build-main" @@ -604,9 +583,6 @@ last-vetted = "20211021000000" [components."org.scijava:scijava-maven-plugin"] last-vetted = "20230309000000" -[components."org.scijava:scijava-optional"] -last-vetted = "20230309000000" - [components."org.scijava:scijava-plot"] ci-build = "build-main" last-vetted = "20230309000000" @@ -647,14 +623,10 @@ ci-build = "build-main" [components."org.scijava:scripting-clojure"] ci-build = "build-main" -last-vetted = "20230309000000" [components."org.scijava:scripting-groovy"] ci-build = "build-main" -[components."org.scijava:scripting-java"] -last-vetted = "20230309000000" - [components."org.scijava:scripting-javascript"] ci-build = "build-main" @@ -677,7 +649,6 @@ ci-build = "build-main" [components."org.scijava:scripting-scala"] ci-build = "build-main" -last-vetted = "20230309000000" [components."org.scijava:swing-checkbox-tree"] last-vetted = "20230309000000" @@ -722,7 +693,6 @@ last-vetted = "20230313000000" [components."sc.fiji:3D_Viewer"] ci-build = "build-main" -last-vetted = "20230313000000" [components."sc.fiji:AnalyzeSkeleton_"] ci-build = "build-main" @@ -766,9 +736,6 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:Colocalisation_Analysis"] -last-vetted = "20230309000000" - [components."sc.fiji:Color_Histogram"] ci-build = "build-main" last-vetted = "20230309000000" @@ -786,7 +753,6 @@ ci-build = "build-main" [components."sc.fiji:Correct_3D_Drift"] ci-build = "build-main" -last-vetted = "20230309000000" [components."sc.fiji:Descriptor_based_registration"] ci-build = "build-main" @@ -884,7 +850,6 @@ last-vetted = "20230309000000" [components."sc.fiji:LocalThickness_"] ci-build = "build-main" -last-vetted = "20230309000000" [components."sc.fiji:MTrack2_"] ci-build = "build-main" @@ -1082,7 +1047,6 @@ last-vetted = "20230309000000" [components."sc.fiji:spim_data"] ci-build = "build-main" -last-vetted = "20230309000000" [components."sc.fiji:trakem2-transform"] ci-build = "build-main" From 7b78709c255d2ca67a05bdfef2bd7c58367bb479 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 17:37:15 -0500 Subject: [PATCH 191/252] Mark which components are considered cuttable A cuttable component is one for which SciJava maintainers can cut new releases. Such components are assumed to abide by SciJava development principles, particularly having a release-ready mainline branch. --- pombast.toml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/pombast.toml b/pombast.toml index 3512af4..e781527 100644 --- a/pombast.toml +++ b/pombast.toml @@ -8,6 +8,21 @@ html = "index.html" header = "header.html" footer = "footer.html" nexus-base = "https://maven.scijava.org" +cuttable = [ + "de.nanoimaging:*", + "fr.inra.ijpb:*", + "io.scif:*", + "jitk:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "org.bonej:*", + "org.janelia*:*", + "org.morphonets:*", + "org.scijava:*", + "sc.fiji:*", +] [team] excludes = ["ome:*", "org.openmicroscopy:*"] @@ -134,6 +149,7 @@ excludes = [ [smelt] includes = [ "ca.mcgill:*", + "de.nanoimaging:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", From e2f2707cea25f0b8c2024521e7b31ff6b9da7ac4 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 27 May 2026 18:04:02 -0500 Subject: [PATCH 192/252] Update View5D: 2.5.4 -> 2.5.6 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9a1d250..19eaad6 100644 --- a/pom.xml +++ b/pom.xml @@ -1028,7 +1028,7 @@ - 2.5.4 + 2.5.6 ${View5D.version} ${View5D_.version} From 2651956c3c3691ff148291c3ba8099be8d7d8efa Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 28 May 2026 13:06:20 -0500 Subject: [PATCH 193/252] Update status header and footer Move pom-scijava and pom-scijava-base to header from footer. Use immediate src attribute on footer images. (Otherwise nothing populates them and they remain blank.) --- footer.html | 28 ++++++++-------------------- header.html | 23 ++++++++++++++++++++++- 2 files changed, 30 insertions(+), 21 deletions(-) diff --git a/footer.html b/footer.html index 4d7603b..2227e84 100644 --- a/footer.html +++ b/footer.html @@ -4,47 +4,35 @@ Build -scijava/pom-scijava-base - - - -scijava/pom-scijava - - - -scijava/status.scijava.org - - - scijava/incubator - + imagej/list-of-update-sites - + imagej/tutorials - + fiji/fiji-builds - + scijava/jgo - + scijava/scyjava - + imglib/imglyb - + imagej/pyimagej - + diff --git a/header.html b/header.html index 16d992a..832e4d5 100644 --- a/header.html +++ b/header.html @@ -1 +1,22 @@ - + + + From 323c606916752e567ab4eaa2c227da79a4bdcaa0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 28 May 2026 13:07:11 -0500 Subject: [PATCH 194/252] Add includes to pombast team, to limit org search Without this, 65 orgs get searched, most of which are not under the purview of SciJava maintenance. --- pombast.toml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/pombast.toml b/pombast.toml index e781527..13b00c8 100644 --- a/pombast.toml +++ b/pombast.toml @@ -25,7 +25,21 @@ cuttable = [ ] [team] -excludes = ["ome:*", "org.openmicroscopy:*"] +includes = [ + "de.nanoimaging:*", + "fr.inra.ijpb:*", + "io.scif:*", + "jitk:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "org.bonej:*", + "org.janelia*:*", + "org.morphonets:*", + "org.scijava:*", + "sc.fiji:*", +] [badges] includes = [ From 92181dd2135b2dd30b99357e0779f1f096ff440d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 28 May 2026 16:51:05 -0500 Subject: [PATCH 195/252] Let status and team pages share common navigation --- footer.html => footer-status.html | 3 ++ footer-team.html | 2 ++ header-status.html | 47 +++++++++++++++++++++++++++++++ header-team.html | 27 ++++++++++++++++++ header.html | 22 --------------- pombast.toml | 9 ++++-- 6 files changed, 85 insertions(+), 25 deletions(-) rename footer.html => footer-status.html (99%) create mode 100644 footer-team.html create mode 100644 header-status.html create mode 100644 header-team.html delete mode 100644 header.html diff --git a/footer.html b/footer-status.html similarity index 99% rename from footer.html rename to footer-status.html index 2227e84..e5c038d 100644 --- a/footer.html +++ b/footer-status.html @@ -36,3 +36,6 @@ + +
+👍 diff --git a/footer-team.html b/footer-team.html new file mode 100644 index 0000000..64db37f --- /dev/null +++ b/footer-team.html @@ -0,0 +1,2 @@ +
+👍 diff --git a/header-status.html b/header-status.html new file mode 100644 index 0000000..923b0e6 --- /dev/null +++ b/header-status.html @@ -0,0 +1,47 @@ + + + + diff --git a/header-team.html b/header-team.html new file mode 100644 index 0000000..41befe7 --- /dev/null +++ b/header-team.html @@ -0,0 +1,27 @@ + + diff --git a/header.html b/header.html deleted file mode 100644 index 832e4d5..0000000 --- a/header.html +++ /dev/null @@ -1,22 +0,0 @@ - - - diff --git a/pombast.toml b/pombast.toml index 13b00c8..18c1889 100644 --- a/pombast.toml +++ b/pombast.toml @@ -4,9 +4,9 @@ repositories = ["scijava.public=https://maven.scijava.org/content/groups/public" [status] rules = "rules.xml" -html = "index.html" -header = "header.html" -footer = "footer.html" +html = "../status.scijava.org/index.html" +header = "header-status.html" +footer = "footer-status.html" nexus-base = "https://maven.scijava.org" cuttable = [ "de.nanoimaging:*", @@ -25,6 +25,9 @@ cuttable = [ ] [team] +html = "../status.scijava.org/team.html" +header = "header-team.html" +footer = "footer-team.html" includes = [ "de.nanoimaging:*", "fr.inra.ijpb:*", From 71be2ef092b5ea3e7e3baa70c9e1055464802b91 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 30 May 2026 12:58:03 -0500 Subject: [PATCH 196/252] CI: generate badges.json as part of status refresh --- .github/status.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/status.sh b/.github/status.sh index 096e57c..81186a0 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,5 +1,6 @@ #!/bin/sh uv tool install "git+https://github.com/scijava/pombast.git" pombast status . -pombast team . --html team.html -.github/publish.sh "Update status reports" index.html team.html +pombast badges -o badges.json . +pombast team . +.github/publish.sh "Update status reports" index.html badges.json team.html From 319bf40f2b3f28be626cba40ca3cdad27df8e361 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 30 May 2026 15:46:35 -0500 Subject: [PATCH 197/252] Downgrade recommended JavaFX version to v19 This is so that the recommended/default JavaFX aligns with the recommended/default version of Java: currently version 11. When scijava.jvm.version is increased, we can/should/will also increase the recommended/default version of JavaFX. This alignment is necessary for pombast validation checks; whereas with them misaligned, the javafx components in the pombast melt dependency graph result in enforcer validation errors: [ERROR] Rule 6: org.codehaus.mojo.extraenforcer.dependencies.EnforceBytecodeVersion failed with message: [ERROR] Found Banned Dependency: org.openjfx:javafx-media:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-swing:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-fxml:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-web:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-base:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-controls:jar:linux:23.0.2 [ERROR] Found Banned Dependency: org.openjfx:javafx-graphics:jar:linux:23.0.2 [ERROR] Use 'mvn dependency:tree' to locate the source of the banned dependencies. The reason the javafx components are part of the pombast melt's dependency graph is because several other included components (OMEVisual, FilamentDetector, multiview-reconstruction) depend on javafx, so even with javafx components excluded from the melt operation's direct dependency graph, they still come in transitively. We could alternately work around the issue by excluding all the components depending on javafx, but that would be a hacky workaround compared to just unifying expectations here. With this adjustment, errors could now surface in the "other direction": if a component Foo21 overrides scijava.jvm.version to 21 and javafx.version to v23, it will be buildable and releasable -- but if that Foo21 component is then added to the pom-scijava BOM, it will be smelted with JavaFX v19, meaning any too-new API of JavaFX v23 will not be available, and the Foo21 smelt will fail accordingly. But this is actually correct: we are asserting that all versions of components in the BOM actually work together, and if Foo21 tries to make use of a too-new JavaFX, it *would* fail at runtime if a downstream component added dependencies on Foo21 and JavaFX at the BOM's declared versions. So: working as intended! --- pom.xml | 2 +- pombast.toml | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 19eaad6..8b7d450 100644 --- a/pom.xml +++ b/pom.xml @@ -2115,7 +2115,7 @@ 26 | 24 27 | 25 --> - 23.0.2 + 19.0.2.1 ${javafx.version} ${javafx.version} ${javafx.version} diff --git a/pombast.toml b/pombast.toml index 18c1889..5b6af95 100644 --- a/pombast.toml +++ b/pombast.toml @@ -109,13 +109,6 @@ excludes = [ 'mpicbg:mpicbg', 'mpicbg:mpicbg_', # NB: Skip artifacts requiring minimum Java version >11. 'net.algart:algart-tiff', - 'org.openjfx:javafx-base', - 'org.openjfx:javafx-controls', - 'org.openjfx:javafx-fxml', - 'org.openjfx:javafx-graphics', - 'org.openjfx:javafx-media', - 'org.openjfx:javafx-swing', - 'org.openjfx:javafx-web', 'org.morphonets:SNT', # NB: Skip closed-source artifacts. 'org.bonej:bonej-plus', From 1b70c2a07e32803ffbe61ea6724aa57f4c8d529f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Jun 2026 14:09:50 -0500 Subject: [PATCH 198/252] Tidy up the pombast/mega-melt configuration * Move pombast-specific templates into pombast subfolder. * Remove tests subfolder containing obsolete shell scripts. --- pombast.toml | 10 +- .../footer-status.html | 0 footer-team.html => pombast/footer-team.html | 0 .../header-status.html | 0 header-team.html => pombast/header-team.html | 0 {tests => pombast}/mega-melt-template.xml | 0 tests/filter-build-log.py | 48 -- tests/generate-mega-melt.py | 147 ------ tests/run.sh | 484 ------------------ 9 files changed, 5 insertions(+), 684 deletions(-) rename footer-status.html => pombast/footer-status.html (100%) rename footer-team.html => pombast/footer-team.html (100%) rename header-status.html => pombast/header-status.html (100%) rename header-team.html => pombast/header-team.html (100%) rename {tests => pombast}/mega-melt-template.xml (100%) delete mode 100644 tests/filter-build-log.py delete mode 100644 tests/generate-mega-melt.py delete mode 100755 tests/run.sh diff --git a/pombast.toml b/pombast.toml index 5b6af95..613fd82 100644 --- a/pombast.toml +++ b/pombast.toml @@ -5,8 +5,8 @@ repositories = ["scijava.public=https://maven.scijava.org/content/groups/public" [status] rules = "rules.xml" html = "../status.scijava.org/index.html" -header = "header-status.html" -footer = "footer-status.html" +header = "pombast/header-status.html" +footer = "pombast/footer-status.html" nexus-base = "https://maven.scijava.org" cuttable = [ "de.nanoimaging:*", @@ -26,8 +26,8 @@ cuttable = [ [team] html = "../status.scijava.org/team.html" -header = "header-team.html" -footer = "footer-team.html" +header = "pombast/header-team.html" +footer = "pombast/footer-team.html" includes = [ "de.nanoimaging:*", "fr.inra.ijpb:*", @@ -71,7 +71,7 @@ includes = [ # Setting scijava.jvm.version to 21 by default would avoid the issue, but... # is that really a good idea? Setting to 11 seems like a nice baseline compromise right now. java-version = 21 # Maximum Java version of all included component + deps. -template = "tests/mega-melt-template.xml" +template = "pombast/mega-melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. 'org.bytedeco:hdf5', diff --git a/footer-status.html b/pombast/footer-status.html similarity index 100% rename from footer-status.html rename to pombast/footer-status.html diff --git a/footer-team.html b/pombast/footer-team.html similarity index 100% rename from footer-team.html rename to pombast/footer-team.html diff --git a/header-status.html b/pombast/header-status.html similarity index 100% rename from header-status.html rename to pombast/header-status.html diff --git a/header-team.html b/pombast/header-team.html similarity index 100% rename from header-team.html rename to pombast/header-team.html diff --git a/tests/mega-melt-template.xml b/pombast/mega-melt-template.xml similarity index 100% rename from tests/mega-melt-template.xml rename to pombast/mega-melt-template.xml diff --git a/tests/filter-build-log.py b/tests/filter-build-log.py deleted file mode 100644 index 4e8f194..0000000 --- a/tests/filter-build-log.py +++ /dev/null @@ -1,48 +0,0 @@ -# -# filter-build-log.py - Cuts out cruft to focus on build failure details. -# - -# This script filters build logs down to only [WARNING] and [ERROR] lines, -# and consolidates lengthy duplicate class listings down to packages only. - -import sys - -def print_filtered_log(log): - dups = [] - parsingdups = False - atbeginning = True - for line in log: - line = line.rstrip('\n') - if line.startswith('[INFO]'): - # Filter out non-error build messages. - continue - if line.startswith('Download') or line.startswith('Progress'): - # Filter out details of remote resource queries. - continue - if atbeginning and not line.strip(): - # Filter out leading blank lines. - continue - atbeginning = False - if parsingdups: - if line.startswith(' '): - if line.find('/') >= 0: - # Strip to containing package only. - line = line[:line.rindex('/')] - dups.append(line) - else: - parsingdups = False - for dup in sorted(set(dups)): - print(dup) - print('') - dups = [] - else: - if line == ' Duplicate classes:': - print(' Duplicate packages:') - parsingdups = True - else: - print(line) - -for arg in sys.argv[1:]: - with open(arg) as f: - print_filtered_log(f) - diff --git a/tests/generate-mega-melt.py b/tests/generate-mega-melt.py deleted file mode 100644 index fef2758..0000000 --- a/tests/generate-mega-melt.py +++ /dev/null @@ -1,147 +0,0 @@ -# -# generate-mega-melt.py - Make a POM depending on everything in pom-scijava. -# - -import os, re, sys -from xml.dom import minidom - -def child(node, tag): - nodes = node.getElementsByTagName(tag) - return None if len(nodes) == 0 else nodes[0] - -script_dir = os.path.dirname(os.path.realpath(__file__)) if __file__ else '.' -out = minidom.parse(os.path.join(script_dir, 'mega-melt-template.xml')) -out.getElementsByTagName('project')[0].appendChild(out.createElement('dependencies')) -outDeps = out.getElementsByTagName('dependencies')[0] - -psj = minidom.parse(os.path.join(script_dir, '..', 'pom.xml')) -depMgmt = psj.getElementsByTagName('dependencyManagement')[0] -deps = depMgmt.getElementsByTagName('dependencies')[0] -depList = deps.getElementsByTagName('dependency') - -# Artifacts to exclude from the mega melt. -ignoredArtifacts = [ - # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. - 'hdf5', - # TEMP: The original ImageJ requires Java 9+ to compile, - # because it has a module-info.java, so skip it until the - # component collection is updated from Java 8 to Java 11. - 'ij', - # TEMP: Skip components within multi-module reactors. - # Neither melting-pot.sh nor release-version.sh understand - # multi-module repositories; release-version.sh needs to learn - # how to tag and release individual components from multi-module - # repos, so that when melting-pot.sh shallow clones the repo at - # that tag and invokes a build, it will be building only the - # released component as it does with single-component repos. - 'scijava-collections', - 'scijava-common3', - 'scijava-concurrent', - 'scijava-discovery-test', - 'scijava-discovery', - 'scijava-function', - 'scijava-legacy', - 'scijava-meta', - 'scijava-ops-api', - 'scijava-ops-benchmarks', - 'scijava-ops-engine', - 'scijava-ops-ext-parser', - 'scijava-ops-flim', - 'scijava-ops-image', - 'scijava-ops-indexer', - 'scijava-ops-opencv', - 'scijava-ops-spi', - 'scijava-ops-tutorial', - 'scijava-priority', - 'scijava-progress', - 'scijava-struct', - 'scijava-taglets', - 'scijava-testutil', - 'scijava-types', - 'mpicbg', 'mpicbg_', - # NB: Skip artifacts requiring minimum Java version >8. - 'algart-tiff', - 'javafx-base', - 'javafx-controls', - 'javafx-fxml', - 'javafx-graphics', - 'javafx-media', - 'javafx-swing', - 'javafx-web', - 'SNT', - # NB: Skip closed-source artifacts. - 'bonej-plus', - # NB: The following artifacts have messy dependency trees. - # Too many problems to test as part of the mega-melt. - # See WARNING block in pom-scijava's pom.xml for details. - 'imagej-server', - 'spark-core_2.11', - # NB: Skip scijava forks of third-party projects. - # These are very stable, with few/no dependencies, and - # don't need to be retested as pom-scijava evolves. - 'j3dcore', - 'j3dutils', - 'jep', - 'junit-benchmarks', - 'vecmath', - # NB: Skip alternate flavors of other managed components. - 'gluegen', # uberjar flavor of gluegen-rt - 'jogl-all-noawt', # slimmed down flavor of jogl-all - # NB: All the SWT platform JARs have the same classes. - # The current platform will be brought in transitively. - 'org.eclipse.swt.cocoa.macosx', - 'org.eclipse.swt.cocoa.macosx.x86_64', - 'org.eclipse.swt.gtk.aix.ppc', - 'org.eclipse.swt.gtk.aix.ppc64', - 'org.eclipse.swt.gtk.hpux.ia64', - 'org.eclipse.swt.gtk.linux.ppc', - 'org.eclipse.swt.gtk.linux.ppc64', - 'org.eclipse.swt.gtk.linux.s390', - 'org.eclipse.swt.gtk.linux.s390x', - 'org.eclipse.swt.gtk.linux.x86', - 'org.eclipse.swt.gtk.linux.x86_64', - 'org.eclipse.swt.gtk.solaris.sparc', - 'org.eclipse.swt.gtk.solaris.x86', - 'org.eclipse.swt.win32.win32.x86', - 'org.eclipse.swt.win32.win32.x86_64', - # NB: All SLF4J bindings have the same classes. - # We'll rely on logback-classic being present here. - 'slf4j-jcl', - 'slf4j-jdk14', - 'slf4j-nop', - 'slf4j-simple', - # NB: Cannot include both commons-logging and jcl-over-slf4j; - # see: http://www.slf4j.org/codes.html#jclDelegationLoop - 'jcl-over-slf4j' -] - -for dep in depList: - # Harvest relevant information (ignore exclusions and version). - groupId = child(dep, 'groupId') - artifactId = child(dep, 'artifactId') - classifier = child(dep, 'classifier') - scope = child(dep, 'scope') - - if artifactId.firstChild.data in ignoredArtifacts: - continue - - outDep = out.createElement('dependency') - outDep.appendChild(groupId) - outDep.appendChild(artifactId) - if classifier: - outDep.appendChild(classifier) - if scope: - outDep.appendChild(scope) - outDeps.appendChild(outDep) - -# Filter XML through a hacky substitution to avoid unwanted whitespace. -xml = re.sub('\n[\n\r\t]*\n', '\n', out.toprettyxml()) - -outDir = sys.argv[1] if len(sys.argv) > 1 else 'mega-melt' -try: - os.mkdir(outDir) -except: - pass - -with open(os.path.join(outDir, 'pom.xml'), 'w') as outPOM: - outPOM.write(xml) diff --git a/tests/run.sh b/tests/run.sh deleted file mode 100755 index 6ddc871..0000000 --- a/tests/run.sh +++ /dev/null @@ -1,484 +0,0 @@ -#!/bin/sh - -# -# run.sh - Tests correctness of the pom-scijava BOM. -# - -die () { echo "$*" >&2; exit 1; } - -changed () { ! diff $@ >/dev/null; } - -sectionStart() { - startTime=$(date +%s) - echo - printf "$1... " -} - -sectionEnd() { - endTime=$(date +%s) - echo "Done! [$((endTime-startTime))s]" -} - -# Check prerequisites. - -# HACK: Work around macOS Python naming inconsistency. -if command -v python3 >/dev/null 2>&1; then - PYTHON=python3 -elif command -v python >/dev/null 2>&1; then - PYTHON=python -else - die "This script requires Python." -fi - -sectionStart 'Generating mega-melt project' - -dir=$(cd "$(dirname "$0")" && pwd) -pom="$dir/../pom.xml" -test -f "$pom" || die 'Where is pom.xml?!' - -generateMegaMeltScript="$dir/generate-mega-melt.py" -filterBuildLogScript="$dir/filter-build-log.py" - -megaMeltDir="$dir/../target/mega-melt" -megaMeltDir=$(mkdir -p "$megaMeltDir" && cd "$megaMeltDir" && pwd) -pomParent="$megaMeltDir/../pom.xml" -versionSwapLog="$megaMeltDir/version-swap.log" -dependencyTreeLog="$megaMeltDir/dependency-tree.log" -validationLog="$megaMeltDir/validation.log" -validationErrorsLog="$megaMeltDir/validation-errors.log" -megaMeltPOM="$megaMeltDir/pom.xml" -meltingPotLocal="$dir/../../scijava-scripts/melting-pot.sh" -meltingPotURL=https://raw.githubusercontent.com/scijava/scijava-scripts/main/melting-pot.sh -meltingPotScript="$megaMeltDir/melting-pot.sh" -meltingPotLog="$megaMeltDir/melting-pot.log" -meltingPotDir="$megaMeltDir/melting-pot" -skipTestsFile="$meltingPotDir/skipTests.txt" -meltScript="$meltingPotDir/melt.sh" - -# HACK: List of artifacts with known-duplicate short version properties. -shortVersionClashes=\ -'net.sourceforge.findbugs.annotations'\ -'|antlr.antlr'\ -'|org.jogamp.jocl.jocl'\ -'|net.sf.opencsv.opencsv'\ -'|org.jetbrains.intellij.deps.trove4j' - -rm -rf "$megaMeltDir" && mkdir -p "$megaMeltDir" || die "Creation of $megaMeltDir failed!" -cp "$pom" "$pomParent" && -mvn -B -f "$pomParent" versions:set -DnewVersion=999-mega-melt > "$versionSwapLog" && - mvn -B -f "$pomParent" install:install >> "$versionSwapLog" || - die "pom-scijava version update failed:\n$(cat "$versionSwapLog")" -$PYTHON "$generateMegaMeltScript" "$megaMeltDir" || die 'Generation failed!' -sectionEnd # Generating mega-melt project - -# Ensure the mega-melt dependency structure validates. -# In particular, this runs our enforcer rules: the build -# will fail if there are any snapshot dependencies, or -# any duplicate classes across artifacts on the classpath. -sectionStart 'Validating mega-melt project' -mvn -B -f "$megaMeltPOM" dependency:tree > "$dependencyTreeLog" || - die "Invalid dependency tree:\n$(cat "$dependencyTreeLog")" -mvn -B -f "$megaMeltPOM" -U clean package > "$validationLog" || { - $PYTHON "$filterBuildLogScript" "$validationLog" > "$validationErrorsLog" - die "Validation build failed!\n\nDependency tree:\n$(cat "$dependencyTreeLog")\n\nBuild log:\n$(cat "$validationErrorsLog")" -} -sectionEnd # Validating mega-melt project - -# Run mega-melt through the melting pot, with all SciJava-affiliated groupIds, -# minus excluded artifacts (see ignoredArtifacts in generate-mega-melt.py). -echo && -echo 'Generating melting pot...' && -if [ -e "$meltingPotLocal" ] -then - cp "$meltingPotLocal" "$meltingPotScript" -else - curl -fsL "$meltingPotURL" > "$meltingPotScript" -fi || - die "Failed to obtain melting pot script!" - -# Build the melting pot structure. -chmod +x "$meltingPotScript" && -"$meltingPotScript" "$megaMeltDir" \ - -r scijava.public::::https://maven.scijava.org/content/groups/public \ - -o "$meltingPotDir" \ - -i 'ca.mcgill:*' \ - -i 'io.scif:*' \ - -i 'jitk:*' \ - -i 'mpicbg:*' \ - -i 'net.imagej:*' \ - -i 'net.imglib2:*' \ - -i 'net.preibisch:*' \ - -i 'org.bonej:*' \ - -i 'org.janelia.saalfeldlab:*' \ - -i 'org.janelia:*' \ - -i 'org.morphonets:*' \ - -i 'org.scijava:*' \ - -i 'sc.fiji:*' \ - -e 'net.imagej:ij' \ - -e 'net.imglib2:imglib2-mesh' \ - -e 'org.bonej:bonej-plus' \ - -e 'org.openjfx:*' \ - -e 'org.scijava:j3dcore' \ - -e 'org.scijava:j3dutils' \ - -e 'org.scijava:jep' \ - -e 'org.scijava:junit-benchmarks' \ - -e 'org.scijava:vecmath' \ - -f -v -s $@ 2>&1 | tee "$meltingPotLog" - -# NB: The pipe to tee eats the melting-pot error code. -# Even with the POSIX-unfriendly pipefail flag set. -# So we resort to this hacky error check of the log. -test "$(grep -F "[ERROR]" "$meltingPotLog" | grep -v "using default branch")" && - die 'Melting pot generation failed!' - -buildScript="$meltingPotDir/build.sh" -versionPins="$meltingPotDir/version-pins.xml" - -echo -echo 'Hacking in any changed components...' - -# Mix in changed components. Syntax is: -# -# groupId|artifactId|path-to-remote|remote-ref -# -# Example: -# -# components=' -# org.janelia.saalfeldlab|n5-imglib2|git@github.com:saalfeldlab/n5-imglib2|pull/54/head -# sc.fiji|SPIM_Registration|git@github.com:fiji/SPIM_Registration|pull/142/head -# sc.fiji|labkit-ui|git@github.com:juglab/labkit-ui|pull/115/head -# sc.fiji|labkit-pixel-classification|git@github.com:juglab/labkit-pixel-classification|pull/12/head -# sc.fiji|z_spacing|git@github.com:saalfeldlab/z-spacing|pull/28/head -# net.imagej|imagej-common|git@github.com:imagej/imagej-common|pull/112/head -# sc.fiji|TrackMate|git@github.com:trackmate-sc/TrackMate|pull/289/head -# sc.fiji|TrackMate-Skeleton|git@github.com:trackmate-sc/TrackMate-Skeleton|pull/2/head -# sc.fiji|bigwarp_fiji|git@github.com:saalfeldlab/bigwarp|pull/170/head -# net.imagej|imagej-ops|git@github.com:imagej/imagej-ops|pull/654/head -# ' -# -# One entry per line inside the components variable declaration. -# No leading or trailing whitespace anywhere. -# -# Each component will: -# 1. Be updated to that ref (cloning as needed); -# 2. Have its version adjusted to 999 in its pom.xml and gav marker; -# 3. Be `mvn install`ed to the local repo cache at that version; -# 4. Have its version adjusted to 999 in melting pot's build.sh; -# 5. Be added to the list of components to build in melt.sh (if not already present). -components=' -' -failFile="$meltingPotDir/fail" -rm -f "$failFile" -echo "$components" | while read component -do - test "$component" || continue - - g=${component%%|*}; r=${component#*|} - a=${r%%|*}; r=${r#*|} - remote=${r%%|*}; ref=${r#*|} - test "$g" -a "$a" -a "$remote" -a "$ref" || { - touch "$failFile" - die "Invalid component line: $component" - } - d="$meltingPotDir/$g/$a" - printf "[$g:$a] " - - # Update component working copy to desired ref (cloning as needed). - mkdir -p "$d" && - echo "Log of actions for custom version of $g:$a" > "$d/surgery.log" && - echo >> "$d/surgery.log" && - test -f "$d/.git" || git init "$d" >> "$d/surgery.log" || { - touch "$failFile" - die "Failed to access or initialize repository in directory $d" - } - printf . - cd "$d" && - git remote add mega-melt "$remote" >> surgery.log && - printf . && - git fetch mega-melt --depth 1 "$ref":mega-melt >> surgery.log 2>&1 && - printf . && - git switch mega-melt >> surgery.log 2>&1 || { - touch "$failFile" - die "$g:$a: failed to fetch ref '$ref' from remote $remote" - } - printf . - - # Adjust component version to 999. - mvn versions:set -DnewVersion=999 >> surgery.log || { - touch "$failFile" - die "$g:$a: failed to adjust pom.xml version" - } - printf . - if [ -f gav ] - then - mv gav gav.prehacks - sed -E "s;:[^:]*$;:999;" gav.prehacks > gav && changed gav.prehacks gav || { - touch "$failFile" - die "$g:$a: failed to adjust gav version" - } - fi - printf . - - # Install changed component into the local repo cache. - mvn -Denforcer.skip -Dmaven.test.skip install >> surgery.log || { - touch "$failFile" - die "$g:$a: failed to build and install component" - } - printf . - - # Adjust component version to 999 in melting pot's version-pins.xml. - cd "$meltingPotDir" - test -f "$versionPins.prehacks" || cp "$versionPins" "$versionPins.prehacks" || { - touch "$failFile" - die "$g:$a: failed to back up $versionPins" - } - printf . - echo "$a" | grep -q '^[0-9]' && aa="_$a" || aa="$a" - mv -f "$versionPins" "$versionPins.tmp" && - sed -E "s;<\($g\\.$a\|$aa\)\\.version>[^<]*;<\1.version>999;g" "$versionPins.tmp" > "$versionPins" && - changed "$versionPins.tmp" "$versionPins" || - { - touch "$failFile" - die "$g:$a: failed to adjust component version in $versionPins" - } - printf . - - # Add component to the build list in melt.sh (if not already present). - grep -q "\b$g/$a\b" "$meltScript" || { - test -f "$meltScript.prehacks" || cp "$meltScript" "$meltScript.prehacks" - mv -f "$meltScript" "$meltScript.tmp" && - perl -0777 -pe 's;\n+do\n;\n '"$g/$a"' \\$&;igs' "$meltScript.tmp" > "$meltScript" - } || { - touch "$failFile" - die "$g:$a: failed to add component to the build list in $meltScript" - } - printf ".\n" -done -rm -f "$versionPins.tmp" "$meltScript.tmp" -test ! -f "$failFile" || - die "Failed to hack in changed components!" - -sectionStart 'Adjusting the melting pot: version-pins.xml configuration' - -cp "$versionPins" "$versionPins.original" && - -# HACK: Remove known-duplicate short version properties, keeping -# the short version declaration only for the more common groupId. -# E.g.: org.antlr:antlr is preferred over antlr:antlr, so we set -# antlr.version to match org.antlr:antlr, not antlr:antlr. -mv -f "$versionPins" "$versionPins.tmp" && -sed -E 's;(<('"$shortVersionClashes"')\.version>[^ ]*) <[^ ]*;\1;' "$versionPins.tmp" > "$versionPins" && - changed "$versionPins.tmp" "$versionPins" || - die 'Error adjusting melting pot version pins! [1]' - -# HACK: Add non-standard version properties used prior to -# pom-scijava 32.0.0-beta-1; see d0bf752070d96a2613c42e4e1ab86ebdd07c29ee. -mv -f "$versionPins" "$versionPins.tmp" && -sed -E 's; ([^<]*);& \1;' "$versionPins.tmp" > "$versionPins" && - changed "$versionPins.tmp" "$versionPins" && -mv -f "$versionPins" "$versionPins.tmp" && -sed -E 's; ([^<]*);& \2;' "$versionPins.tmp" > "$versionPins" && - changed "$versionPins.tmp" "$versionPins" || - die 'Error adjusting melting pot version pins! [2]' - -# HACK: Add non-standard net.imagej:ij version property used prior to -# pom-scijava 28.0.0; see 7d2cc442b107b3ac2dcb799d282f2c0b5822649d. -mv -f "$versionPins" "$versionPins.tmp" && -sed -E 's; ([^<]*);& \1;' "$versionPins.tmp" > "$versionPins" && - changed "$versionPins.tmp" "$versionPins" || - die 'Error adjusting melting pot version pins! [3]' - -rm "$versionPins.tmp" || - die 'Error adjusting melting pot version pins! [4]' - -sectionEnd # Adjusting the melting pot: version-pins.xml configuration - -sectionStart 'Adjusting the melting pot: build.sh script' - -cp "$buildScript" "$buildScript.original" && - -# HACK: Add explicit kotlin.version to match our pom-scijava-base. -# Otherwise, components built on older pom-scijava-base will have -# mismatched kotlin component versions. The sed expression avoids -# a bug in mvn's batch mode that results in [0m[0m still -# appearing as a leading ANSI sequence when echoing the property. -kotlinVersion=$( - mvn -B -U -q -Denforcer.skip=true -Dexec.executable=echo \ - -Dexec.args='${kotlin.version}' --non-recursive validate exec:exec 2>&1 | - head -n1 | sed 's;\(.\[[0-9]m\)*;;') && -# TEMP: Also fix the version of maven-enforcer-plugin, to prevent n5 from -# overriding it with a too-old version. Even though we pass enforcer.skip, -# so that the enforcer plugin does not actually do any checking, this version -# mismatch still triggers a problem: -# -# [ERROR] Failed to execute goal -# org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce -# (enforce-rules) on project n5-blosc: Unable to parse configuration of -# mojo org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce -# for parameter banDuplicateClasses: Cannot create instance of interface -# org.apache.maven.enforcer.rule.api.EnforcerRule: -# org.apache.maven.enforcer.rule.api.EnforcerRule.() -> [Help 1] -# -# Once n5 components stop doing that version pin, we can remove this here. -enforcerVersion=$( - mvn -B -U -q -Denforcer.skip=true -Dexec.executable=echo \ - -Dexec.args='${maven-enforcer-plugin.version}' --non-recursive validate exec:exec 2>&1 | - head -n1 | sed 's;\(.\[[0-9]m\)*;;') && -mv -f "$buildScript" "$buildScript.tmp" && -sed -E "s;mvn .*-Denforcer.skip;& -Dmaven-enforcer-plugin.version=$enforcerVersion -Dkotlin.version=$kotlinVersion;" "$buildScript.tmp" > "$buildScript" && - changed "$buildScript.tmp" "$buildScript" && - -chmod +x "$buildScript" && -rm "$buildScript.tmp" || - die 'Error adjusting melting pot build script!' - -sectionEnd # Adjusting the melting pot: build.sh script - -sectionStart 'Adjusting the melting pot: component POMs' - -# HACK: Adjust component POMs to satisfy Maven HTTPS strictness. -find "$meltingPotDir" -name pom.xml | - while read pom -do - mv "$pom" "$pom.original" && - sed -E -e 's_(https?://maven.imagej.net|http://maven.scijava.org)_https://maven.scijava.org_g' \ - -e 's_http://maven.apache.org/xsd_https://maven.apache.org/xsd_g' "$pom.original" > "$pom" || - die "Failed to adjust $pom" -done - -# HACK: Make component POMs extend the same version of pom-scijava -# being tested. This reduces dependency skew for transitively inherited -# components that were not managed at the time of that component release. -find "$meltingPotDir" -name pom.xml | while read pom -do - perl -0777 -i -pe 's/(\s*org.scijava<\/groupId>\s*pom-scijava<\/artifactId>\s*)[^\n]*/${1}999-mega-melt<\/version>/igs' "$pom" -done - -sectionEnd # Adjusting the melting pot: component POMs - -sectionStart 'Adjusting the melting pot: melt.sh script' - -# HACK: Skip tests for projects with known problems. - -mv "$meltScript" "$meltScript.original" && -sed 's_\s*"$dir/build.sh"_\ -# HACK: If project is on the skipTests list, then skip the tests.\ -buildFlags=-Djava.awt.headless=true\ -grep -qxF "$f" $dir/skipTests.txt \&\& buildFlags=-DskipTests\ -\ -& $buildFlags_' "$meltScript.original" > "$meltScript" && -chmod +x "$meltScript" || - die "Failed to adjust $meltScript" - -sectionEnd # Adjusting the melting pot: melt.sh script - -sectionStart 'Adjusting the melting pot: unit test hacks' - -# Remove flaky tests. - -# CachedOpEnvironmentTest fails intermittently. Of course, it should be -# somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. -rm -f "$meltingPotDir/net.imagej/imagej-ops/src/test/java/net/imagej/ops/cached/CachedOpEnvironmentTest.java" - -# In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: -# java.util.NoSuchElementException: No value present -rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-ij/src/test/java/org/janelia/saalfeldlab/n5/metadata/ome/ngff/v04/WriteAxesTests.java" - -# Avoid notNull assertion error at -# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) -rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-universe/src/test/java/org/janelia/saalfeldlab/n5/universe/metadata/MetadataTests.java" - -# In org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest: -# arrays first differed at element [0]; expected:<[a]> but was:<[c]> -rm -f "$meltingPotDir/org.janelia.saalfeldlab/n5-zarr/src/test/java/org/janelia/saalfeldlab/n5/zarr/ZarrCachedFSTest.java" -# Note: The above test is fixed with saalfeldlab/n5-zarr@e7edcec3, -# but the fix is only available in n5-zarr 2.0.0-alpha-1, and we -# do not want to update the SciJava BOM to the alpha version. - -# In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: -# Macro Error: "probability map for blobs.tif" not found in line 4 -# selectImage ( <"probability map for blobs.tif"> ) ; -# java.lang.RuntimeException: Macro canceled -# at ij.macro.Interpreter.error(Interpreter.java:1403) -# at ij.macro.Functions.selectImage(Functions.java:3225) -# at ij.macro.Functions.doFunction(Functions.java:136) -# at ij.macro.Interpreter.doStatement(Interpreter.java:280) -# at ij.macro.Interpreter.doStatements(Interpreter.java:266) -# at ij.macro.Interpreter.run(Interpreter.java:162) -# at ij.macro.Interpreter.run(Interpreter.java:92) -# at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) -rm -f "$meltingPotDir/sc.fiji/labkit-ui/src/test/java/sc/fiji/labkit/ui/plugin/CalculateProbabilityMapWithLabkitIJ1PluginTest.java" - -# Skip testing of components with non-working tests. - -# java.lang.AssertionError -# at org.scijava.minimaven.BasicTest.testClassifiers(BasicTest.java:216) -echo "org.scijava/minimaven" >> "$skipTestsFile" || - die "Failed to generate $skipTestsFile" - -# Error while checking the CLIJ2 installation: null -echo "sc.fiji/labkit-pixel-classification" >> "$skipTestsFile" || - die "Failed to generate $skipTestsFile" - -sectionEnd # Adjusting the melting pot: unit test hacks - -# Run the melting pot now, unless -s flag was given. -doMelt=t -for arg in "$@" -do - if [ "$arg" = '-s' ] || [ "$arg" = '--skipBuild' ] - then - doMelt= - fi -done -if [ "$doMelt" ] -then - echo - cd "$meltingPotDir" - sh melt.sh - meltResult=$? - - # Dump logs for failing builds and/or tests. - for d in */* - do - test -d "$d" || continue - - # Check for failing build log. - buildLog="$d/build.log" - if [ -f "$buildLog" ] - then - if grep -qF 'BUILD FAILURE' "$buildLog" - then - echo - echo "[$buildLog]" - cat "$buildLog" - fi - fi - - # Check for failing test logs. - testLogsDir="$dir/target/surefire-reports" - if [ -d "$testLogsDir" ] - then - find "$testLogsDir" -name '*.txt' | - while read report - do - if grep -qF 'FAILURE!' "$report" - then - echo - echo "[$report]" - cat "$report" - fi - done - fi - done - - # Terminate the script with same exit code if the melt failed. - test "$meltResult" -eq 0 || exit "$meltResult" -else - echo && - echo 'Melting the pot... SKIPPED' -fi - -# Complete! -echo -echo 'All checks succeeded! :-D' From fdc0b4f62210b7b93b6c3f1c4602a3bc05665c66 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 1 Jun 2026 14:58:10 -0500 Subject: [PATCH 199/252] pombast: remove overridden MaMuT badge It confirms to standard naming now. --- pombast.toml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pombast.toml b/pombast.toml index 613fd82..654b6b1 100644 --- a/pombast.toml +++ b/pombast.toml @@ -885,9 +885,6 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:MaMuT"] -ci-build = "build-main" - [components."sc.fiji:Manual_Tracking"] ci-build = "build-main" last-vetted = "20230309000000" From 41dc88a352c96376ec3046a61e2cf36088a10c1c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 8 Jun 2026 11:18:54 -0500 Subject: [PATCH 200/252] pombast: improve the melt action Due to some components targeting Java 21+, the scijava.jvm.version property for the aggregated melting pot also needs to be set to 21, to satisfy the enforcer's bytecode checks across all components. For melt validation, we do not need to exclude very old components or multi-module-structured components, only components containing duplicate classes that we intentionally allow within the BOM. Reasons for these allowances are commented in the TOML config. --- pombast.toml | 60 +++++++--------------------------------------------- 1 file changed, 8 insertions(+), 52 deletions(-) diff --git a/pombast.toml b/pombast.toml index 654b6b1..b3c6a36 100644 --- a/pombast.toml +++ b/pombast.toml @@ -64,67 +64,23 @@ includes = [ ] [melt] -# Some managed components require Java 21+. So it makes sense to melt with that version of Java. -# Unfortunately, the scijava.jvm.version is currently set to 11 by default. -# So even though OpenJDK 21 is being used to run Maven, the enforcer plugin still -# complains when encountering any Java libraries with bytecode newer than 11. -# Setting scijava.jvm.version to 21 by default would avoid the issue, but... -# is that really a good idea? Setting to 11 seems like a nice baseline compromise right now. -java-version = 21 # Maximum Java version of all included component + deps. +# Some managed components require Java 21+, so we melt with that Java +# version. But pom-scijava sets scijava.jvm.version to 11 by default. +# So beyond just using OpenJDK 21 to run Maven, we also need to set the +# scijava.jvm.version property to target the right bytecode version. +# Otherwise, the enforcer complains about any Java libraries targeting >11. +java-version = 21 +properties = { "scijava.jvm.version" = "21" } + template = "pombast/mega-melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. 'org.bytedeco:hdf5', - # TEMP: Skip components within multi-module reactors. - # Neither pombast nor release-version.sh understand multi- - # module repositories; release-version.sh needs to learn how - # to tag and release individual components from multi-module - # repos, so that when pombast shallow clones the repo at that - # tag and invokes a build, it will be building only the - # released component as it does with single-component repos. - 'org.scijava:scijava-collections', - 'org.scijava:scijava-common3', - 'org.scijava:scijava-concurrent', - 'org.scijava:scijava-discovery-test', - 'org.scijava:scijava-discovery', - 'org.scijava:scijava-function', - 'org.scijava:scijava-legacy', - 'org.scijava:scijava-meta', - 'org.scijava:scijava-ops-api', - 'org.scijava:scijava-ops-benchmarks', - 'org.scijava:scijava-ops-engine', - 'org.scijava:scijava-ops-ext-parser', - 'org.scijava:scijava-ops-flim', - 'org.scijava:scijava-ops-image', - 'org.scijava:scijava-ops-indexer', - 'org.scijava:scijava-ops-opencv', - 'org.scijava:scijava-ops-spi', - 'org.scijava:scijava-ops-tutorial', - 'org.scijava:scijava-priority', - 'org.scijava:scijava-progress', - 'org.scijava:scijava-struct', - 'org.scijava:scijava-taglets', - 'org.scijava:scijava-testutil', - 'org.scijava:scijava-types', - 'mpicbg:mpicbg', 'mpicbg:mpicbg_', - # NB: Skip artifacts requiring minimum Java version >11. - 'net.algart:algart-tiff', - 'org.morphonets:SNT', - # NB: Skip closed-source artifacts. - 'org.bonej:bonej-plus', # NB: The following artifacts have messy dependency trees. # Too many problems to test as part of the melt action. # See WARNING block in pom-scijava's pom.xml for details. 'net.imagej:imagej-server', 'org.apache.spark:spark-core_2.11', - # NB: Skip scijava forks of third-party projects. - # These are very stable, with few/no dependencies, and - # don't need to be retested as pom-scijava evolves. - 'org.scijava:j3dcore', - 'org.scijava:j3dutils', - 'org.scijava:jep', - 'org.scijava:junit-benchmarks', - 'org.scijava:vecmath', # NB: Skip alternate flavors of other managed components. 'org.jogamp.gluegen:gluegen', # uberjar flavor of gluegen-rt 'org.jogamp.jogl:jogl-all-noawt', # slimmed down flavor of jogl-all From d562d382e6b37415881b35d11cf5cb1e4e926d36 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 10 Jun 2026 13:04:17 -0500 Subject: [PATCH 201/252] Sort ImageJ2 component in correct alphabetic order --- pom.xml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 8b7d450..d31d5e8 100644 --- a/pom.xml +++ b/pom.xml @@ -513,11 +513,6 @@ - - 2.17.0 - ${imagej2.version} - ${imagej.version} - 1.54p ${imagej1.version} @@ -527,6 +522,11 @@ 2.0.0 ${ij1-patcher.version} + + 2.17.0 + ${imagej2.version} + ${imagej.version} + 2.1.1 ${imagej-common.version} @@ -2892,13 +2892,6 @@ - - - net.imagej - imagej - ${net.imagej.imagej.version} - - net.imagej @@ -2919,6 +2912,13 @@ ${net.imagej.ij1-patcher.version} + + + net.imagej + imagej + ${net.imagej.imagej.version} + + net.imagej From fc1f084d13654f7317986f1bfd8d7fb30ab6d772 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 10 Jun 2026 13:04:39 -0500 Subject: [PATCH 202/252] Manage versions of FLIMLib Java components * flimj-ops: 2.1.2 * flimj-ui: 2.0.0 * flimlib: 2.2.5 --- pom.xml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/pom.xml b/pom.xml index d31d5e8..33fb8e2 100644 --- a/pom.xml +++ b/pom.xml @@ -1208,6 +1208,15 @@ + + 2.1.2 + 2.0.0 + 2.2.5 + ${flimj-ops.version} + ${flimj-ui.version} + ${flimlib.version} + ${scijava.natives.classifier} + 1.6.4 ${MorphoLibJ.version} @@ -3951,6 +3960,29 @@ + + + flimlib + flimj-ops + ${flimlib.flimj-ops.version} + + + flimlib + flimj-ui + ${flimlib.flimj-ui.version} + + + flimlib + flimlib + ${flimlib.flimlib.version} + + + flimlib + flimlib + ${flimlib.flimlib.version} + ${scijava.natives.classifier.flimlib} + + fr.inra.ijpb From e916952afb1202d30dd89982f2d137f36bce6952 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 10 Jun 2026 13:39:43 -0500 Subject: [PATCH 203/252] Update component versions * scijava-search: 3.0.0 -> 3.0.1 * scripting-kotlin: 0.2.1 -> 1.0.0 * imagej-tensorflow: 1.1.8 -> 1.1.9 * scifio: 0.48.0 -> 0.49.0 * FilamentDetector: 2.0.1 -> 3.0.0 * OMEVisual: 2.0.0 -> 3.0.0 * mpicbg: 1.6.5 -> 1.6.6 * bigdataviewer-server: 3.1.2 -> 4.0.0 * TrackMate: 7.14.0 -> 8.0.0 * TrackMate-Cellpose: 0.1.2 -> 1.0.1 * TrackMate-CSVImporter: 3.1.4 -> 4.0.0 * TrackMate-Ilastik: 1.4.0 -> 2.0.0 * TrackMate-MorphoLibJ: 1.2.1 -> 2.0.0 * TrackMate-Skeleton: 2.0.3 -> 3.0.0 * TrackMate-StarDist: 1.2.1 -> 2.0.0 * TrackMate-Weka: 1.3.1 -> 2.0.0 * BigStitcher: 2.5.2 -> 2.6.1 * multiview-reconstruction: 7.0.6 -> 9.0.0 * MaMuT: 7.1.1 -> 8.0.1 --- pom.xml | 38 +++++++++++++++++++------------------- pombast.toml | 8 +++++++- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/pom.xml b/pom.xml index 33fb8e2..ad79a4f 100644 --- a/pom.xml +++ b/pom.xml @@ -428,7 +428,7 @@ ${scijava-plugins-text-plain.version} - 3.0.0 + 3.0.1 ${scijava-search.version} @@ -484,7 +484,7 @@ ${scripting-jython.version} - 0.2.1 + 1.0.0 ${scripting-kotlin.version} @@ -600,7 +600,7 @@ ${imagej-server.version} - 1.1.8 + 1.1.9 ${imagej-tensorflow.version} @@ -672,7 +672,7 @@ - 0.48.0 + 0.49.0 ${scifio.version} @@ -806,7 +806,7 @@ 3.2.0 ${Fiji_Plugins.version} - 2.0.1 + 3.0.0 ${FilamentDetector.version} 2.0.1 @@ -887,7 +887,7 @@ 3.0.1 ${Multi_Kymograph.version} - 2.0.0 + 3.0.0 ${OMEVisual.version} 2.0.0 @@ -1042,7 +1042,7 @@ ${bigwarp_fiji.version} - 1.6.5 + 1.6.6 ${mpicbg.version} ${mpicbg.version} ${mpicbg_.version} @@ -1062,7 +1062,7 @@ ${bigdataviewer-core.version} - 3.1.2 + 4.0.0 ${bigdataviewer-server.version} @@ -1088,15 +1088,15 @@ - 7.14.0 + 8.0.0 ${TrackMate.version} - 0.1.2 + 1.0.1 ${TrackMate-Cellpose.version} - 3.1.4 + 4.0.0 ${TrackMate-CSVImporter.version} @@ -1110,11 +1110,11 @@ ${TrackMate-ExTrack.version} - 1.4.0 + 2.0.0 ${TrackMate-Ilastik.version} - 1.2.1 + 2.0.0 ${TrackMate-MorphoLibJ.version} @@ -1122,15 +1122,15 @@ ${TrackMate-Oneat.version} - 2.0.3 + 3.0.0 ${TrackMate-Skeleton.version} - 1.2.1 + 2.0.0 ${TrackMate-StarDist.version} - 1.3.1 + 2.0.0 ${TrackMate-Weka.version} @@ -1241,8 +1241,8 @@ ${clijx-weka_.version} - 2.5.2 - 7.0.6 + 2.6.1 + 9.0.0 0.2.0 ${BigStitcher.version} ${multiview-reconstruction.version} @@ -1266,7 +1266,7 @@ ${SNT.version} - 7.1.1 + 8.0.1 ${MaMuT.version} diff --git a/pombast.toml b/pombast.toml index b3c6a36..e203711 100644 --- a/pombast.toml +++ b/pombast.toml @@ -327,6 +327,9 @@ last-vetted = "20230309000000" [components."net.imglib2:imglib2-mesh"] java-version = 11 +[components."net.preibisch:multiview-reconstruction"] +java-version = 11 + [components."net.preibisch:multiview-simulation"] ci-build = "build-main" @@ -764,6 +767,9 @@ ci-build = "build-main" ci-build = "build-main" last-vetted = "20230309000000" +[components."sc.fiji:FilamentDetector"] +java-version = 11 + [components."sc.fiji:FlowJ_"] ci-build = "build-main" last-vetted = "20230309000000" @@ -850,7 +856,7 @@ ci-build = "build-main" last-vetted = "20230309000000" [components."sc.fiji:OMEVisual"] -last-vetted = "20230309000000" +java-version = 11 [components."sc.fiji:PIV_analyser"] ci-build = "build-main" From 9a5351a2e18024021a2319c15c5f826870b307fb Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 11 Jun 2026 16:14:11 -0500 Subject: [PATCH 204/252] pombast: allow bigvolumeviewer to use of Unsafe It has a hack in its own POM to configure the maven-compiler-plugin to run in a mode that allows use of sun.misc.Unsafe. But pombast's execution does not honor the hack. Fortunately, setting maven.compiler.release to empty disables the plugin's passing of the --release flag, which is what triggers the use of ct.sym, the sealed API catalog for Java 8's public API. --- pombast.toml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pombast.toml b/pombast.toml index e203711..c632fb6 100644 --- a/pombast.toml +++ b/pombast.toml @@ -991,6 +991,10 @@ ci-build = "build-main" [components."sc.fiji:bigdataviewer_fiji"] ci-build = "build-main" +[components."sc.fiji:bigvolumeviewer"] +# NOTE: Using the release flag disallows access to sun.misc.Unsafe. +properties = { "maven.compiler.release" = "" } + [components."sc.fiji:bij"] ci-build = "build-main" last-vetted = "20230309000000" From 13f9bdbc227b977e69acafc6a2b9d0331ed078b6 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 13 Jun 2026 13:07:19 -0500 Subject: [PATCH 205/252] Update jgrapht: 1.4.0 -> 1.5.2 This increases its minimum bytecode target from Java 8 to 11. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ad79a4f..6cb47e0 100644 --- a/pom.xml +++ b/pom.xml @@ -2036,7 +2036,7 @@ ${jfreesvg.version} - 1.4.0 + 1.5.2 ${jgrapht.version} ${jgrapht.version} ${jgrapht.version} From 55ee95cec84598937c6db500bcfa8043b36fbd9a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 13 Jun 2026 13:24:09 -0500 Subject: [PATCH 206/252] CI: pass latest smelt.json to status command Co-authored-by: Claude Opus 4.8 --- .github/status.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/status.sh b/.github/status.sh index 81186a0..a5587e7 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,6 +1,21 @@ #!/bin/sh uv tool install "git+https://github.com/scijava/pombast.git" -pombast status . + +# Pull the most recently published smelt results so that `pombast status` can +# classify each available version bump by its bytecode-floor blast radius +# (flat / local / cascading / excluded). This is the same smelt.json the status +# page itself fetches client-side, so the generator and the browser agree. +# +# Best-effort: if smelt.json is not published yet (or the fetch fails), status +# still runs -- just without the bytecode classification overlay. +smelt_arg="" +if curl -fsSLO https://status.scijava.org/smelt.json; then + smelt_arg="--smelt smelt.json" +else + echo "== smelt.json unavailable; running status without classification ==" +fi + +pombast status $smelt_arg . pombast badges -o badges.json . pombast team . .github/publish.sh "Update status reports" index.html badges.json team.html From c31af769376cd9f7ab1bc41e04d698a96216ccdb Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 13 Jun 2026 13:58:24 -0500 Subject: [PATCH 207/252] CI: feed smelt.json into status and cache cjdk/jgo/m2 status.sh now pulls the most recent smelt.json straight from the status.scijava.org gh-pages branch (raw.githubusercontent.com) and passes it to `pombast status --smelt`, so version bumps are classified by bytecode-floor blast radius. Reading the branch directly avoids waiting on the asynchronous GitHub Pages deploy. Best-effort: status still runs if smelt.json is absent. status.yml gains a workflow_run trigger on the build workflow, guarded to master pushes (the only builds that republish smelt.json), so the status page refreshes its classification immediately instead of waiting for the daily cron. The direct push trigger is dropped since build-then-status now covers master pushes with the freshly published smelt.json. Caching: - build.yml: add ~/.cache/cjdk (downloaded JDKs + Maven) and ~/.cache/jgo (per-artifact bytecode-scan results) to the build cache. cjdk is the big win, since smelt provisions a JDK per component. - status.yml: add ~/.cache/jgo and ~/.m2/repository so the daily bump classification stops re-downloading and re-scanning candidate JARs each run. setup-java stays: its JDK 11+fx serves the Maven CI deploy build (ci-build.sh), which is independent of pombast's cjdk-provisioned JDKs. Co-Authored-By: Claude Opus 4.8 --- .github/status.sh | 8 +++++--- .github/workflows/build.yml | 13 +++++++++++-- .github/workflows/status.yml | 30 +++++++++++++++++++++++++----- 3 files changed, 41 insertions(+), 10 deletions(-) diff --git a/.github/status.sh b/.github/status.sh index a5587e7..4e212d3 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -3,13 +3,15 @@ uv tool install "git+https://github.com/scijava/pombast.git" # Pull the most recently published smelt results so that `pombast status` can # classify each available version bump by its bytecode-floor blast radius -# (flat / local / cascading / excluded). This is the same smelt.json the status -# page itself fetches client-side, so the generator and the browser agree. +# (flat / local / cascading / excluded). Read straight from the gh-pages branch +# rather than https://status.scijava.org/, so we pick up a freshly committed +# smelt.json immediately instead of waiting on the asynchronous Pages deploy. # # Best-effort: if smelt.json is not published yet (or the fetch fails), status # still runs -- just without the bytecode classification overlay. smelt_arg="" -if curl -fsSLO https://status.scijava.org/smelt.json; then +smelt_url=https://raw.githubusercontent.com/scijava/status.scijava.org/gh-pages/smelt.json +if curl -fsSLO "$smelt_url"; then smelt_arg="--smelt smelt.json" else echo "== smelt.json unavailable; running status without classification ==" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a29e656..4624a36 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -54,7 +54,13 @@ jobs: - name: Restore pombast cache uses: actions/cache/restore@v4 with: - path: ~/.cache/pombast + # pombast: success/timestamp caches; cjdk: downloaded JDKs + Maven; + # jgo: per-artifact bytecode-scan results. (~/.m2 is cached above by + # setup-java's cache: 'maven'.) + path: | + ~/.cache/pombast + ~/.cache/cjdk + ~/.cache/jgo key: ${{ runner.os }}-pombast-build - name: Run pombast melt+smelt commands @@ -72,7 +78,10 @@ jobs: if: always() uses: actions/cache/save@v4 with: - path: ~/.cache/pombast + path: | + ~/.cache/pombast + ~/.cache/cjdk + ~/.cache/jgo key: ${{ runner.os }}-pombast-build - name: Publish smelt results diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index c14eaf3..0243292 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -4,13 +4,23 @@ on: schedule: # Run daily at 0500 UTC. - cron: '0 5 * * *' - push: - branches: - - master + # Run right after the build workflow publishes a fresh smelt.json, so the + # status page picks up new bytecode classification immediately rather than + # waiting for the next daily run. The job-level guard below restricts this to + # master pushes, the only builds that republish smelt.json. + workflow_run: + workflows: [build] + types: [completed] jobs: status: runs-on: ubuntu-latest + # Scheduled runs always proceed. workflow_run runs only when the triggering + # build was a push to master (i.e. one that republished smelt.json). + if: >- + github.event_name != 'workflow_run' || + (github.event.workflow_run.event == 'push' && + github.event.workflow_run.head_branch == 'master') permissions: actions: write # needed to delete and re-save caches @@ -26,7 +36,14 @@ jobs: - name: Restore pombast cache uses: actions/cache/restore@v4 with: - path: ~/.cache/pombast + # pombast: status caches; jgo: per-artifact bytecode-scan results; + # ~/.m2: candidate JARs that bump classification downloads to scan. + # Persisting these keeps the daily classification from re-downloading + # and re-scanning every candidate on each run. + path: | + ~/.cache/pombast + ~/.cache/jgo + ~/.m2/repository key: ${{ runner.os }}-pombast-status # The monoqueue library is used by pombast to read GitHub issues. @@ -53,7 +70,10 @@ jobs: if: always() uses: actions/cache/save@v4 with: - path: ~/.cache/pombast + path: | + ~/.cache/pombast + ~/.cache/jgo + ~/.m2/repository key: ${{ runner.os }}-pombast-status - name: Delete old monoqueue cache From 8526f78b877fa66a340bd1a84c2fea4ec72d2541 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 13 Jun 2026 21:50:04 -0500 Subject: [PATCH 208/252] Update CI badge locations * scijava-search: build-main -> build * scripting-groovy: build-main -> build * scripting-kotlin: build-main -> build --- pombast.toml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/pombast.toml b/pombast.toml index c632fb6..f3ea774 100644 --- a/pombast.toml +++ b/pombast.toml @@ -585,9 +585,6 @@ last-vetted = "20230309000000" [components."org.scijava:scijava-plugins-text-plain"] ci-build = "build-main" -[components."org.scijava:scijava-search"] -ci-build = "build-main" - [components."org.scijava:scijava-table"] ci-build = "build-main" @@ -609,9 +606,6 @@ ci-build = "build-main" [components."org.scijava:scripting-clojure"] ci-build = "build-main" -[components."org.scijava:scripting-groovy"] -ci-build = "build-main" - [components."org.scijava:scripting-javascript"] ci-build = "build-main" @@ -622,9 +616,6 @@ last-vetted = "20230309000000" [components."org.scijava:scripting-jython"] ci-build = "build-main" -[components."org.scijava:scripting-kotlin"] -ci-build = "build-main" - [components."org.scijava:scripting-matlab"] ci-build = "build-main" last-vetted = "20230309000000" From 20aca6d774769978cff58c8d4c853c003aaef793 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sun, 14 Jun 2026 19:46:21 -0500 Subject: [PATCH 209/252] Update scripting-java: 1.0.0 -> 1.0.1 This fixes a bug when using the Java script language with Java 11 (and only 11 -- with 8, 17, and 21, it was working with 1.0.0). But we need this fix to smelt imagej-legacy, which is built and tested with Java 11, and makes use of the Java script language in its tests. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6cb47e0..50059ef 100644 --- a/pom.xml +++ b/pom.xml @@ -468,7 +468,7 @@ ${scripting-groovy.version} - 1.0.0 + 1.0.1 ${scripting-java.version} From 27bd2fb9cf3e264f2a0224143556f048dadeea0e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 10:51:27 -0500 Subject: [PATCH 210/252] pombast: skip slow labkit-ui tests --- pombast.toml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pombast.toml b/pombast.toml index f3ea774..32a3de5 100644 --- a/pombast.toml +++ b/pombast.toml @@ -215,7 +215,13 @@ skip-tests = [ # at ij.macro.Interpreter.run(Interpreter.java:162) # at ij.macro.Interpreter.run(Interpreter.java:92) # at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) -"sc.fiji:labkit-ui" = ["sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest"] +"sc.fiji:labkit-ui" = [ + "sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest", # Failing (see above) + "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) + "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) + "sc.fiji.labkit.ui.plugin.SegmentRGBImageTest", # Too slow (35 s) + "sc.fiji.labkit.ui.segmentation.SegmentationToolTest", # Too slow (34 s) +] [components."fr.inra.ijpb:MorphoLibJ_"] ci-build = "build-main" From 30ee18990c7fd5434d3d258e3986317b89cdac43 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 10:53:09 -0500 Subject: [PATCH 211/252] Update minimaven: 2.2.2 -> 2.2.3 This makes MiniMaven work again with Maven Central's HTTPS-only policy. --- pom.xml | 2 +- pombast.toml | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 50059ef..6984b14 100644 --- a/pom.xml +++ b/pom.xml @@ -360,7 +360,7 @@ ${junit-benchmarks.version} - 2.2.2 + 2.2.3 ${minimaven.version} diff --git a/pombast.toml b/pombast.toml index 32a3de5..efcfbc0 100644 --- a/pombast.toml +++ b/pombast.toml @@ -174,10 +174,6 @@ excludes = [ 'org.scijava:scijava-types', ] skip-tests = [ - # java.lang.AssertionError - # at org.scijava.minimaven.BasicTest.testClassifiers(BasicTest.java:216) - "org.scijava:minimaven", - # Error while checking the CLIJ2 installation: null "sc.fiji:labkit-pixel-classification", ] @@ -551,9 +547,6 @@ last-vetted = "20171225120000" ci-build = false last-vetted = "20180905120000" -[components."org.scijava:minimaven"] -last-vetted = "20230309000000" - [components."org.scijava:scijava-cache"] ci-build = "build-main" last-vetted = "20230309000000" From 1fa7fe217a65dba0bec1b1d7ecf97d178dbad85e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 12:14:49 -0500 Subject: [PATCH 212/252] Update bigdataviewer-core: 10.6.7 -> 10.6.11 This updates BDV to use N5 at version 4. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6984b14..26435e3 100644 --- a/pom.xml +++ b/pom.xml @@ -1058,7 +1058,7 @@ - 10.6.7 + 10.6.11 ${bigdataviewer-core.version} From 63d3770298a5eb0e465b875b49c9d43b2e87f1ce Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 14:22:16 -0500 Subject: [PATCH 213/252] pombast: re-enable now-passing labkit-ui test --- pombast.toml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/pombast.toml b/pombast.toml index efcfbc0..3fbc615 100644 --- a/pombast.toml +++ b/pombast.toml @@ -199,20 +199,7 @@ skip-tests = [ # but the fix is only available in n5-zarr 2.0.0-alpha-1, and we # do not want to update the SciJava BOM to the alpha version. -# In sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test: -# Macro Error: "probability map for blobs.tif" not found in line 4 -# selectImage ( <"probability map for blobs.tif"> ) ; -# java.lang.RuntimeException: Macro canceled -# at ij.macro.Interpreter.error(Interpreter.java:1403) -# at ij.macro.Functions.selectImage(Functions.java:3225) -# at ij.macro.Functions.doFunction(Functions.java:136) -# at ij.macro.Interpreter.doStatement(Interpreter.java:280) -# at ij.macro.Interpreter.doStatements(Interpreter.java:266) -# at ij.macro.Interpreter.run(Interpreter.java:162) -# at ij.macro.Interpreter.run(Interpreter.java:92) -# at sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest.test(CalculateProbabilityMapWithLabkitIJ1PluginTest.java:65) "sc.fiji:labkit-ui" = [ - "sc.fiji.labkit.ui.plugin.CalculateProbabilityMapWithLabkitIJ1PluginTest", # Failing (see above) "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) "sc.fiji.labkit.ui.plugin.SegmentRGBImageTest", # Too slow (35 s) From f3d254484d3087b4b2ebc8582694acae1df2afff Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 18:03:15 -0500 Subject: [PATCH 214/252] pombast: skip n5 aws-s3 and universe tests for now Hopefully only temporarily! --- pombast.toml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pombast.toml b/pombast.toml index 3fbc615..1b4a98d 100644 --- a/pombast.toml +++ b/pombast.toml @@ -176,6 +176,17 @@ excludes = [ skip-tests = [ # Error while checking the CLIJ2 installation: null "sc.fiji:labkit-pixel-classification", + + # TEMP: Until n5-aws-sw test failures are resolved; see also: + # https://github.com/scijava/pom-scijava/pull/304#issuecomment-4684120110 + # Errors are of the form: + # Unable to execute HTTP request: Connect to localhost:9000 + # [localhost/127.0.0.1] failed: Connection refused (Connection refused) + "org.janelia.saalfeldlab:n5-aws-s3", + + # TEMP: Until n5-universe test failures are resolved; see also: + # https://github.com/scijava/pom-scijava/pull/304#issuecomment-4684417746 + "org.janelia.saalfeldlab:n5-universe", ] [remove-tests] From 79d4ab7c429fe6321089889c84be23acb41614c5 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 20:38:08 -0500 Subject: [PATCH 215/252] Remove bigdataviewer-vistools It merged into bigdataviewer-core as of 10.5.0. See: bigdataviewer/bigdataviewer-core@156cd8a80831c63eac8df81e232420581b17e7a9 --- pom.xml | 9 --------- pombast.toml | 3 --- 2 files changed, 12 deletions(-) diff --git a/pom.xml b/pom.xml index 26435e3..f397f11 100644 --- a/pom.xml +++ b/pom.xml @@ -1065,10 +1065,6 @@ 4.0.0 ${bigdataviewer-server.version} - - 1.0.0-beta-36 - ${bigdataviewer-vistools.version} - 6.4.1 ${bigdataviewer_fiji.version} @@ -3781,11 +3777,6 @@ bigdataviewer-server ${sc.fiji.bigdataviewer-server.version} - - sc.fiji - bigdataviewer-vistools - ${sc.fiji.bigdataviewer-vistools.version} - sc.fiji bigdataviewer_fiji diff --git a/pombast.toml b/pombast.toml index 1b4a98d..9a94e20 100644 --- a/pombast.toml +++ b/pombast.toml @@ -973,9 +973,6 @@ last-vetted = "20230309000000" [components."sc.fiji:bigdataviewer-server"] ci-build = "build-main" -[components."sc.fiji:bigdataviewer-vistools"] -ci-build = "build-main" - [components."sc.fiji:bigdataviewer_fiji"] ci-build = "build-main" From d459e6b3a3154021cce3ebefd0996e25bfb6f445 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 15 Jun 2026 20:45:12 -0500 Subject: [PATCH 216/252] Update bigvolumeviewer: 0.4.1 -> 0.5.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f397f11..18a0a51 100644 --- a/pom.xml +++ b/pom.xml @@ -1074,7 +1074,7 @@ ${bigdataviewer-n5.version} - 0.4.1 + 0.5.0 ${bigvolumeviewer.version} From 50ebc9bcc099883ed312e761e874614df44e98dd Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 17 Jun 2026 14:58:14 -0500 Subject: [PATCH 217/252] pombast: skip tests for org.bonej:bonej-plugins I filed a PR addressing the issue: https://github.com/bonej-org/BoneJ2/pull/414 But until it is merged and release, let's skip the problematic tests. --- pombast.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pombast.toml b/pombast.toml index 9a94e20..52c60b3 100644 --- a/pombast.toml +++ b/pombast.toml @@ -356,6 +356,8 @@ ci-build = "build-main" [components."org.bonej:bonej-plugins"] java-version = 11 +# TEMP: Until a BoneJ release exists incorporating bonej-org/BoneJ2#414. +properties = { "skipTests" = "true" } ci-build = "build-main" [components."org.bonej:bonej-utilities"] From 0b2c9bc904dd4ee658e6623b73b86d4f141f1067 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Wed, 17 Jun 2026 15:09:28 -0400 Subject: [PATCH 218/252] Bump n5-related component versions * imglib2-algorithm: 0.18.1 -> 0.18.3 * imglib2-realtransform: 4.0.4 -> 4.0.5 * imglib2-label-multisets: 0.15.1 -> 0.15.2 * n5-aws-s3: 5.0.0 -> 5.0.1 * n5-universe: 3.0.1 -> 3.0.2 * multiview-simulation: 0.2.0 -> 0.3.1 The updated n5-aws-s3 and n5-universe libraries now skip any tests for which prereqs are not met locally. Signed-off-by: Curtis Rueden --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 18a0a51..296a44e 100644 --- a/pom.xml +++ b/pom.xml @@ -626,7 +626,7 @@ ${imglib2.version} - 0.18.1 + 0.18.3 ${imglib2-algorithm.version} @@ -658,7 +658,7 @@ ${imglib2-mesh.version} - 4.0.4 + 4.0.5 ${imglib2-realtransform.version} @@ -1155,7 +1155,7 @@ - 0.15.1 + 0.15.2 ${imglib2-label-multisets.version} @@ -1163,7 +1163,7 @@ ${n5.version} - 5.0.0 + 5.0.1 ${n5-aws-s3.version} @@ -1187,7 +1187,7 @@ ${n5-imglib2.version} - 3.0.1 + 3.0.2 ${n5-universe.version} @@ -1239,7 +1239,7 @@ 2.6.1 9.0.0 - 0.2.0 + 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} ${multiview-simulation.version} From d0e609e8198e7508ecd4783d6c0ff15c9f93690d Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 17 Jun 2026 23:17:32 -0500 Subject: [PATCH 219/252] pombast: enable smelt of new scijava components The pombast software now handles components deployed as part of a multi-module reactor, so the new scijava components can finally be smelted properly. --- pombast.toml | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/pombast.toml b/pombast.toml index 52c60b3..14bd20c 100644 --- a/pombast.toml +++ b/pombast.toml @@ -141,37 +141,6 @@ excludes = [ 'org.scijava:jep', 'org.scijava:junit-benchmarks', 'org.scijava:vecmath', - # TEMP: Skip components within multi-module reactors. - # Neither pombast nor release-version.sh understand multi- - # module repositories; release-version.sh needs to learn how - # to tag and release individual components from multi-module - # repos, so that when pombast shallow clones the repo at that - # tag and invokes a build, it will be building only the - # released component as it does with single-component repos. - 'org.scijava:scijava-collections', - 'org.scijava:scijava-common3', - 'org.scijava:scijava-concurrent', - 'org.scijava:scijava-discovery-test', - 'org.scijava:scijava-discovery', - 'org.scijava:scijava-function', - 'org.scijava:scijava-legacy', - 'org.scijava:scijava-meta', - 'org.scijava:scijava-ops-api', - 'org.scijava:scijava-ops-benchmarks', - 'org.scijava:scijava-ops-engine', - 'org.scijava:scijava-ops-ext-parser', - 'org.scijava:scijava-ops-flim', - 'org.scijava:scijava-ops-image', - 'org.scijava:scijava-ops-indexer', - 'org.scijava:scijava-ops-opencv', - 'org.scijava:scijava-ops-spi', - 'org.scijava:scijava-ops-tutorial', - 'org.scijava:scijava-priority', - 'org.scijava:scijava-progress', - 'org.scijava:scijava-struct', - 'org.scijava:scijava-taglets', - 'org.scijava:scijava-testutil', - 'org.scijava:scijava-types', ] skip-tests = [ # Error while checking the CLIJ2 installation: null From 4bdb6dcfccebd18ab7b7ec16d70a2ce16814e0bf Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 17 Jun 2026 23:19:21 -0500 Subject: [PATCH 220/252] pombast: update n5-related test workarounds Some tests are fixed, others are now broken... good times! --- pombast.toml | 57 +++++++++++++++++++++++++++++++--------------------- 1 file changed, 34 insertions(+), 23 deletions(-) diff --git a/pombast.toml b/pombast.toml index 14bd20c..a41778b 100644 --- a/pombast.toml +++ b/pombast.toml @@ -145,17 +145,6 @@ excludes = [ skip-tests = [ # Error while checking the CLIJ2 installation: null "sc.fiji:labkit-pixel-classification", - - # TEMP: Until n5-aws-sw test failures are resolved; see also: - # https://github.com/scijava/pom-scijava/pull/304#issuecomment-4684120110 - # Errors are of the form: - # Unable to execute HTTP request: Connect to localhost:9000 - # [localhost/127.0.0.1] failed: Connection refused (Connection refused) - "org.janelia.saalfeldlab:n5-aws-s3", - - # TEMP: Until n5-universe test failures are resolved; see also: - # https://github.com/scijava/pom-scijava/pull/304#issuecomment-4684417746 - "org.janelia.saalfeldlab:n5-universe", ] [remove-tests] @@ -166,18 +155,40 @@ skip-tests = [ # In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: # java.util.NoSuchElementException: No value present -"org.janelia.saalfeldlab:n5-ij" = ["org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests"] - -# Avoid notNull assertion error at -# org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests.testEmptyBase(MetadataTests.java:346) -"org.janelia.saalfeldlab:n5-universe" = ["org.janelia.saalfeldlab.n5.universe.metadata.MetadataTests"] - -# In org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest.cacheBehaviorTest: -# arrays first differed at element [0]; expected:<[a]> but was:<[c]> -"org.janelia.saalfeldlab:n5-zarr" = ["org.janelia.saalfeldlab.n5.zarr.ZarrCachedFSTest"] -# Note: The above test is fixed with saalfeldlab/n5-zarr@e7edcec3, -# but the fix is only available in n5-zarr 2.0.0-alpha-1, and we -# do not want to update the SciJava BOM to the alpha version. +#"org.janelia.saalfeldlab:n5-ij" = ["org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests"] + +# In org.janelia.saalfeldlab.n5.s3.AmazonS3UtilsTest.testUriParsing: +# SdkClient Unable to load region from any of the providers in the chain +# software.amazon.awssdk.regions.providers.DefaultAwsRegionProviderChain@427475a2: +# [software.amazon.awssdk.regions.providers.SystemSettingsRegionProvider@768b79db: +# Unable to load region from system settings. Region must be specified either +# via environment variable (AWS_REGION) or system property (aws.region)., +# software.amazon.awssdk.regions.providers.AwsProfileRegionProvider@3b59d246: +# No region provided in profile: default, +# software.amazon.awssdk.regions.providers.InstanceProfileRegionProvider@11b0cf30: +# Unable to contact EC2 metadata service.] +"org.janelia.saalfeldlab:n5-aws-s3" = ["org.janelia.saalfeldlab.n5.s3.AmazonS3UtilsTest"] + +# Skip n5-universe'slow tests. +"org.janelia.saalfeldlab:n5-universe" = [ + "org.janelia.saalfeldlab.n5.universe.storage.zarr.ZarrStorageTests", # Time elapsed: 1753 s + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr2.Zarr2HttpFactoryTest", # Time elapsed: 947.2 s + "org.janelia.saalfeldlab.n5.universe.storage.n5.N5StorageTests", # Time elapsed: 843.5 s + "org.janelia.saalfeldlab.n5.universe.storage.n5.N5HttpFactoryTest", # Time elapsed: 832.3 s + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3HttpFactoryTest", # Time elapsed: 785.5 s + + # And these are all dependent on the above removed classes. :-( + "org.janelia.saalfeldlab.n5.universe.BackendStorageFormatTests", + "org.janelia.saalfeldlab.n5.universe.storage.n5.N5AmazonS3FactoryTest", + "org.janelia.saalfeldlab.n5.universe.storage.n5.N5FileSystemTest", + "org.janelia.saalfeldlab.n5.universe.storage.n5.N5GoogleCloudFactoryTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr2.Zarr2AmazonS3FactoryTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr2.Zarr2FileSystemTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr2.Zarr2GoogleCloudFactoryTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3AmazonS3FactoryTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3FileSystemTest", + "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3GoogleCloudFactoryTest", +] "sc.fiji:labkit-ui" = [ "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) From 02a603f268185f99009a4b4472a00e445e2441c7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 17 Jun 2026 23:19:50 -0500 Subject: [PATCH 221/252] pombast: tweak comment --- pombast.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pombast.toml b/pombast.toml index a41778b..2ddb73a 100644 --- a/pombast.toml +++ b/pombast.toml @@ -150,7 +150,7 @@ skip-tests = [ [remove-tests] # CachedOpEnvironmentTest fails intermittently. Of course, it should be -# somehow fixed in imagej-ops. But for now, let's not let it ruin the melt. +# somehow fixed in imagej-ops. But for now, let's not let it ruin the smelt. "net.imagej:imagej-ops" = ["net.imagej.ops.cached.CachedOpEnvironmentTest"] # In org.janelia.saalfeldlab.n5.metadata.ome.ngff.v04.WriteAxesTests.testXYT: From 16ef03b7b4a99365689785557c931178d0901861 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 18 Jun 2026 10:40:57 -0500 Subject: [PATCH 222/252] pombast: update bonej components ci-build path --- pombast.toml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pombast.toml b/pombast.toml index 2ddb73a..1fe1db0 100644 --- a/pombast.toml +++ b/pombast.toml @@ -324,25 +324,20 @@ ci-build = "maven" [components."org.bonej:bonej-legacy-plugins_"] java-version = 11 -ci-build = "build-main" [components."org.bonej:bonej-legacy-util_"] java-version = 11 -ci-build = "build-main" [components."org.bonej:bonej-ops"] java-version = 11 -ci-build = "build-main" [components."org.bonej:bonej-plugins"] java-version = 11 # TEMP: Until a BoneJ release exists incorporating bonej-org/BoneJ2#414. properties = { "skipTests" = "true" } -ci-build = "build-main" [components."org.bonej:bonej-utilities"] java-version = 11 -ci-build = "build-main" [components."org.codehaus.groovy:groovy"] last-vetted = "20250101000000" From eb6afaa9e9b02c29e7d3a6960a890c6e3b1c6fb8 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Thu, 18 Jun 2026 22:05:36 -0500 Subject: [PATCH 223/252] pombast: update config for 2026-06-18 revision --- pombast.toml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pombast.toml b/pombast.toml index 1fe1db0..abdcd23 100644 --- a/pombast.toml +++ b/pombast.toml @@ -3,8 +3,9 @@ default-java-version = 8 repositories = ["scijava.public=https://maven.scijava.org/content/groups/public"] [status] +output = "../status.scijava.org/index.html" +smelt = "../status.scijava.org/smelt.json" rules = "rules.xml" -html = "../status.scijava.org/index.html" header = "pombast/header-status.html" footer = "pombast/footer-status.html" nexus-base = "https://maven.scijava.org" @@ -25,7 +26,7 @@ cuttable = [ ] [team] -html = "../status.scijava.org/team.html" +output = "../status.scijava.org/team.html" header = "pombast/header-team.html" footer = "pombast/footer-team.html" includes = [ @@ -45,6 +46,7 @@ includes = [ ] [badges] +output = "../status.scijava.org/badges.json" includes = [ "de.nanoimaging:*", "fr.inra.ijpb:*", @@ -113,6 +115,7 @@ excludes = [ ] [smelt] +output = "../status.scijava.org/smelt.json" includes = [ "ca.mcgill:*", "de.nanoimaging:*", From 5ca84e680c52fc2732a79b4796be2f9c94001b8a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:21:52 -0500 Subject: [PATCH 224/252] Update multiview-reconstruction: 9.0.0 -> 9.0.1 Realigned with n5 v4! --- pom.xml | 2 +- pombast.toml | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 296a44e..bc2673d 100644 --- a/pom.xml +++ b/pom.xml @@ -1238,7 +1238,7 @@ 2.6.1 - 9.0.0 + 9.0.1 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} diff --git a/pombast.toml b/pombast.toml index abdcd23..584cd56 100644 --- a/pombast.toml +++ b/pombast.toml @@ -310,9 +310,6 @@ last-vetted = "20230309000000" [components."net.imglib2:imglib2-mesh"] java-version = 11 -[components."net.preibisch:multiview-reconstruction"] -java-version = 11 - [components."net.preibisch:multiview-simulation"] ci-build = "build-main" From 0f9f94cf7a14ce4bacaa7581870b5ee461d0abb5 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:22:36 -0500 Subject: [PATCH 225/252] pombast: mega-melt-template -> melt-template The "mega" is a less important distinction now that the pombast infrastructure is in place. It's the melt operation of pombast, so for consistency, the template can be melt-template.xml. --- pombast.toml | 2 +- pombast/{mega-melt-template.xml => melt-template.xml} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename pombast/{mega-melt-template.xml => melt-template.xml} (100%) diff --git a/pombast.toml b/pombast.toml index 584cd56..99514ee 100644 --- a/pombast.toml +++ b/pombast.toml @@ -74,7 +74,7 @@ includes = [ java-version = 21 properties = { "scijava.jvm.version" = "21" } -template = "pombast/mega-melt-template.xml" +template = "pombast/melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. 'org.bytedeco:hdf5', diff --git a/pombast/mega-melt-template.xml b/pombast/melt-template.xml similarity index 100% rename from pombast/mega-melt-template.xml rename to pombast/melt-template.xml From 4c2c73072269256d533e2724655f452e3eaf253b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:23:30 -0500 Subject: [PATCH 226/252] pombast: add FLIMLib artifacts to operations --- pombast.toml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pombast.toml b/pombast.toml index 99514ee..a17fb73 100644 --- a/pombast.toml +++ b/pombast.toml @@ -11,6 +11,7 @@ footer = "pombast/footer-status.html" nexus-base = "https://maven.scijava.org" cuttable = [ "de.nanoimaging:*", + "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -31,6 +32,7 @@ header = "pombast/header-team.html" footer = "pombast/footer-team.html" includes = [ "de.nanoimaging:*", + "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -49,6 +51,7 @@ includes = [ output = "../status.scijava.org/badges.json" includes = [ "de.nanoimaging:*", + "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -119,6 +122,7 @@ output = "../status.scijava.org/smelt.json" includes = [ "ca.mcgill:*", "de.nanoimaging:*", + "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", From bb4d4d09115618b94886427e7666b0d6519dd3b4 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:52:50 -0500 Subject: [PATCH 227/252] pombast: better align included groupIds across ops --- pombast.toml | 102 +++++++++++++++++++++++++-------------------------- 1 file changed, 50 insertions(+), 52 deletions(-) diff --git a/pombast.toml b/pombast.toml index a17fb73..e1bd287 100644 --- a/pombast.toml +++ b/pombast.toml @@ -79,63 +79,61 @@ properties = { "scijava.jvm.version" = "21" } template = "pombast/melt-template.xml" excludes = [ - # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. - 'org.bytedeco:hdf5', - # NB: The following artifacts have messy dependency trees. - # Too many problems to test as part of the melt action. - # See WARNING block in pom-scijava's pom.xml for details. - 'net.imagej:imagej-server', - 'org.apache.spark:spark-core_2.11', - # NB: Skip alternate flavors of other managed components. - 'org.jogamp.gluegen:gluegen', # uberjar flavor of gluegen-rt - 'org.jogamp.jogl:jogl-all-noawt', # slimmed down flavor of jogl-all - # NB: All the SWT platform JARs have the same classes. - # The current platform will be brought in transitively. - 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx', - 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx.x86_64', - 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc', - 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc64', - 'org.eclipse.swt:org.eclipse.swt.gtk.hpux.ia64', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc64', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390x', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64', - 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.sparc', - 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.x86', - 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86', - 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86_64', - # NB: All SLF4J bindings have the same classes. - # We'll rely on logback-classic being present here. - 'org.slf4j:slf4j-jcl', - 'org.slf4j:slf4j-jdk14', - 'org.slf4j:slf4j-nop', - 'org.slf4j:slf4j-simple', - # NB: Cannot include both commons-logging and jcl-over-slf4j; - # see: http://www.slf4j.org/codes.html#jclDelegationLoop - 'org.slf4j:jcl-over-slf4j', + # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. + 'org.bytedeco:hdf5', + # NB: The following artifacts have messy dependency trees. + # Too many problems to test as part of the melt action. + # See WARNING block in pom-scijava's pom.xml for details. + 'net.imagej:imagej-server', + 'org.apache.spark:spark-core_2.11', + # NB: Skip alternate flavors of other managed components. + 'org.jogamp.gluegen:gluegen', # uberjar flavor of gluegen-rt + 'org.jogamp.jogl:jogl-all-noawt', # slimmed down flavor of jogl-all + # NB: All the SWT platform JARs have the same classes. + # The current platform will be brought in transitively. + 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx', + 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx.x86_64', + 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc', + 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc64', + 'org.eclipse.swt:org.eclipse.swt.gtk.hpux.ia64', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc64', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390x', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86', + 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64', + 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.sparc', + 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.x86', + 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86', + 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86_64', + # NB: All SLF4J bindings have the same classes. + # We'll rely on logback-classic being present here. + 'org.slf4j:slf4j-jcl', + 'org.slf4j:slf4j-jdk14', + 'org.slf4j:slf4j-nop', + 'org.slf4j:slf4j-simple', + # NB: Cannot include both commons-logging and jcl-over-slf4j; + # see: http://www.slf4j.org/codes.html#jclDelegationLoop + 'org.slf4j:jcl-over-slf4j', ] [smelt] output = "../status.scijava.org/smelt.json" includes = [ - "ca.mcgill:*", - "de.nanoimaging:*", - "flimlib:*", - "fr.inra.ijpb:*", - "io.scif:*", - "jitk:*", - "mpicbg:*", - "net.imagej:*", - "net.imglib2:*", - "net.preibisch:*", - "org.bonej:*", - "org.janelia.saalfeldlab:*", - "org.janelia:*", - "org.morphonets:*", - "org.scijava:*", - "sc.fiji:*", + "de.nanoimaging:*", + "flimlib:*", + "fr.inra.ijpb:*", + "io.scif:*", + "jitk:*", + "mpicbg:*", + "net.imagej:*", + "net.imglib2:*", + "net.preibisch:*", + "org.bonej:*", + "org.janelia*:*", + "org.morphonets:*", + "org.scijava:*", + "sc.fiji:*", ] excludes = [ # NB: Skip closed-source artifacts. From e2087c8bd3dfed16bf630361e2b514e2ffe9a43b Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:56:17 -0500 Subject: [PATCH 228/252] pombast: standardize on double quote symbols --- pombast.toml | 64 ++++++++++++++++++++++++++-------------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/pombast.toml b/pombast.toml index e1bd287..5c9d1ba 100644 --- a/pombast.toml +++ b/pombast.toml @@ -80,41 +80,41 @@ properties = { "scijava.jvm.version" = "21" } template = "pombast/melt-template.xml" excludes = [ # TEMP: Exclude org.bytedeco:hdf5 until cisd:jhdf5 is gone. - 'org.bytedeco:hdf5', + "org.bytedeco:hdf5", # NB: The following artifacts have messy dependency trees. # Too many problems to test as part of the melt action. # See WARNING block in pom-scijava's pom.xml for details. - 'net.imagej:imagej-server', - 'org.apache.spark:spark-core_2.11', + "net.imagej:imagej-server", + "org.apache.spark:spark-core_2.11", # NB: Skip alternate flavors of other managed components. - 'org.jogamp.gluegen:gluegen', # uberjar flavor of gluegen-rt - 'org.jogamp.jogl:jogl-all-noawt', # slimmed down flavor of jogl-all + "org.jogamp.gluegen:gluegen", # uberjar flavor of gluegen-rt + "org.jogamp.jogl:jogl-all-noawt", # slimmed down flavor of jogl-all # NB: All the SWT platform JARs have the same classes. # The current platform will be brought in transitively. - 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx', - 'org.eclipse.swt:org.eclipse.swt.cocoa.macosx.x86_64', - 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc', - 'org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc64', - 'org.eclipse.swt:org.eclipse.swt.gtk.hpux.ia64', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc64', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.s390x', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86', - 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64', - 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.sparc', - 'org.eclipse.swt:org.eclipse.swt.gtk.solaris.x86', - 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86', - 'org.eclipse.swt:org.eclipse.swt.win32.win32.x86_64', + "org.eclipse.swt:org.eclipse.swt.cocoa.macosx", + "org.eclipse.swt:org.eclipse.swt.cocoa.macosx.x86_64", + "org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc", + "org.eclipse.swt:org.eclipse.swt.gtk.aix.ppc64", + "org.eclipse.swt:org.eclipse.swt.gtk.hpux.ia64", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.ppc64", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.s390", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.s390x", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.x86", + "org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64", + "org.eclipse.swt:org.eclipse.swt.gtk.solaris.sparc", + "org.eclipse.swt:org.eclipse.swt.gtk.solaris.x86", + "org.eclipse.swt:org.eclipse.swt.win32.win32.x86", + "org.eclipse.swt:org.eclipse.swt.win32.win32.x86_64", # NB: All SLF4J bindings have the same classes. # We'll rely on logback-classic being present here. - 'org.slf4j:slf4j-jcl', - 'org.slf4j:slf4j-jdk14', - 'org.slf4j:slf4j-nop', - 'org.slf4j:slf4j-simple', + "org.slf4j:slf4j-jcl", + "org.slf4j:slf4j-jdk14", + "org.slf4j:slf4j-nop", + "org.slf4j:slf4j-simple", # NB: Cannot include both commons-logging and jcl-over-slf4j; # see: http://www.slf4j.org/codes.html#jclDelegationLoop - 'org.slf4j:jcl-over-slf4j', + "org.slf4j:jcl-over-slf4j", ] [smelt] @@ -137,15 +137,15 @@ includes = [ ] excludes = [ # NB: Skip closed-source artifacts. - 'org.bonej:bonej-plus', + "org.bonej:bonej-plus", # NB: Skip scijava forks of third-party projects. # These are very stable, with few/no dependencies, and # don't need to be retested as pom-scijava evolves. - 'org.scijava:j3dcore', - 'org.scijava:j3dutils', - 'org.scijava:jep', - 'org.scijava:junit-benchmarks', - 'org.scijava:vecmath', + "org.scijava:j3dcore", + "org.scijava:j3dutils", + "org.scijava:jep", + "org.scijava:junit-benchmarks", + "org.scijava:vecmath", ] skip-tests = [ # Error while checking the CLIJ2 installation: null @@ -174,7 +174,7 @@ skip-tests = [ # Unable to contact EC2 metadata service.] "org.janelia.saalfeldlab:n5-aws-s3" = ["org.janelia.saalfeldlab.n5.s3.AmazonS3UtilsTest"] -# Skip n5-universe'slow tests. +# Skip n5-universe slow tests. "org.janelia.saalfeldlab:n5-universe" = [ "org.janelia.saalfeldlab.n5.universe.storage.zarr.ZarrStorageTests", # Time elapsed: 1753 s "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr2.Zarr2HttpFactoryTest", # Time elapsed: 947.2 s From 9fe0dbc915f947e14fff4396e0fdd96398d37246 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 13:56:34 -0500 Subject: [PATCH 229/252] pombast: ignore scijava-ops build issues for now New releases are needed... soon. --- pombast.toml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pombast.toml b/pombast.toml index 5c9d1ba..00d9c1e 100644 --- a/pombast.toml +++ b/pombast.toml @@ -136,6 +136,8 @@ includes = [ "sc.fiji:*", ] excludes = [ + # TEMP: Until scijava-ops-image 2.0.0 is released. + "org.scijava:scijava-ops-image", # NB: Skip closed-source artifacts. "org.bonej:bonej-plus", # NB: Skip scijava forks of third-party projects. @@ -195,6 +197,13 @@ skip-tests = [ "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3GoogleCloudFactoryTest", ] +# TEMP: Until scijava-ops-flim 1.0.1 is released. +# FitTest.testGlobalFitImg:214->assertSampleEquals:254 array contents differ at index [0], expected: <2.5887516> but was: <1.2488503> +# FitTest.testGlobalFitImgMultiExp:228->assertSampleEquals:254 array contents differ at index [0], expected: <301.6971> but was: <193.0> +"org.scijava:scijava-ops-flim" = [ + "org.scijava.ops.flim.FitTest", +] + "sc.fiji:labkit-ui" = [ "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) From 11b84bf0d4bb8ba19e851ed49b173438948358fa Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 15:17:34 -0500 Subject: [PATCH 230/252] pombast: fix leading whitespace --- pombast.toml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pombast.toml b/pombast.toml index 00d9c1e..1f4ff47 100644 --- a/pombast.toml +++ b/pombast.toml @@ -150,8 +150,8 @@ excludes = [ "org.scijava:vecmath", ] skip-tests = [ - # Error while checking the CLIJ2 installation: null - "sc.fiji:labkit-pixel-classification", + # Error while checking the CLIJ2 installation: null + "sc.fiji:labkit-pixel-classification", ] [remove-tests] @@ -205,10 +205,10 @@ skip-tests = [ ] "sc.fiji:labkit-ui" = [ - "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) - "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) - "sc.fiji.labkit.ui.plugin.SegmentRGBImageTest", # Too slow (35 s) - "sc.fiji.labkit.ui.segmentation.SegmentationToolTest", # Too slow (34 s) + "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) + "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) + "sc.fiji.labkit.ui.plugin.SegmentRGBImageTest", # Too slow (35 s) + "sc.fiji.labkit.ui.segmentation.SegmentationToolTest", # Too slow (34 s) ] [components."fr.inra.ijpb:MorphoLibJ_"] From 63fd51e405279919c40c3b78994caf6774d1bd8e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 19 Jun 2026 15:17:48 -0500 Subject: [PATCH 231/252] pombast: remove unneeded Java version pins Pombast got smarter about detecting the right Java version to use. --- pombast.toml | 26 ++++---------------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/pombast.toml b/pombast.toml index 1f4ff47..9f4605f 100644 --- a/pombast.toml +++ b/pombast.toml @@ -319,6 +319,10 @@ ci-build = "build-main" last-vetted = "20230309000000" [components."net.imglib2:imglib2-mesh"] +# NOTE: Workaround for: error: Could not load processor class file due to +# 'org/scijava/ops/indexer/OpImplNoteParser has been compiled by a more recent +# version of the Java Runtime (class file version 55.0), this version of the +# Java Runtime only recognizes class file versions up to 52.0'. java-version = 11 [components."net.preibisch:multiview-simulation"] @@ -333,23 +337,10 @@ ci-build = "maven" [components."ome:formats-gpl"] ci-build = "maven" -[components."org.bonej:bonej-legacy-plugins_"] -java-version = 11 - -[components."org.bonej:bonej-legacy-util_"] -java-version = 11 - -[components."org.bonej:bonej-ops"] -java-version = 11 - [components."org.bonej:bonej-plugins"] -java-version = 11 # TEMP: Until a BoneJ release exists incorporating bonej-org/BoneJ2#414. properties = { "skipTests" = "true" } -[components."org.bonej:bonej-utilities"] -java-version = 11 - [components."org.codehaus.groovy:groovy"] last-vetted = "20250101000000" @@ -458,9 +449,6 @@ ci-build = "build-main" [components."org.mockito:mockito-core"] last-vetted = "20250101000000" -[components."org.morphonets:SNT"] -java-version = 21 - [components."org.ojalgo:ojalgo"] last-vetted = "20250101000000" @@ -743,9 +731,6 @@ ci-build = "build-main" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:FilamentDetector"] -java-version = 11 - [components."sc.fiji:FlowJ_"] ci-build = "build-main" last-vetted = "20230309000000" @@ -831,9 +816,6 @@ last-vetted = "20230309000000" ci-build = "build-main" last-vetted = "20230309000000" -[components."sc.fiji:OMEVisual"] -java-version = 11 - [components."sc.fiji:PIV_analyser"] ci-build = "build-main" last-vetted = "20230309000000" From 512e3f9d191a61c4811281cae0af04507fe2a4f7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 22 Jun 2026 13:53:59 -0400 Subject: [PATCH 232/252] Manage Amazon AWS SDK v2 components This is done by importing its official BOM. Which is a bit silly, because all the AWS components are monoversioned in alignment with the BOM itself. But it's what their documentation says to do, so OK! https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/setup-project-maven.html --- pom.xml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index bc2673d..337ced5 100644 --- a/pom.xml +++ b/pom.xml @@ -1372,13 +1372,17 @@ 1.5.0 ${algart-tiff.version} - + 1.12.791 ${aws.version} ${aws.version} ${aws-java-sdk-core.version} ${aws-java-sdk-s3.version} + + + 2.46.15 + 4.3.4 2.7.7 @@ -4427,7 +4431,7 @@ ${net.algart.algart-tiff.version} - + com.amazonaws aws-java-sdk-core @@ -4439,6 +4443,15 @@ ${com.amazonaws.aws-java-sdk-s3.version} + + + software.amazon.awssdk + bom + ${software.amazon.awssdk.bom.version} + pom + import + + antlr From 043e710e2a71cb3b0a2fc93bd18100144a1f49d8 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Mon, 22 Jun 2026 13:55:30 -0400 Subject: [PATCH 233/252] Update BigStitcher components * BigStitcher: 2.6.1 -> 3.0.1 * multiview-reconstruction: 9.0.1 -> 9.0.2 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 337ced5..707c952 100644 --- a/pom.xml +++ b/pom.xml @@ -1237,8 +1237,8 @@ ${clijx-weka_.version} - 2.6.1 - 9.0.1 + 3.0.1 + 9.0.2 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} From 42bc2b3ff004291f7b783e8e288872215d8ffa3a Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 22 Jun 2026 14:07:04 -0500 Subject: [PATCH 234/252] Remove flimlib components They do not smelt successfully with the currently managed ImgLib2, and there is a compatibility issue with FLIMLib >=2.2.0. Some related discussion is at: https://imagesc.zulipchat.com/#narrow/channel/604400-COBA/topic/FLIMLib.20breakage.20between.202.2E1.2E1.20and.202.2E2.2E3/with/605875091 Until these issues are resolved, pom-scijava cannot document compatible versions, because there are none. --- pom.xml | 2 +- pombast.toml | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 707c952..908406b 100644 --- a/pom.xml +++ b/pom.xml @@ -1207,7 +1207,7 @@ 2.1.2 2.0.0 - 2.2.5 + 2.1.1 ${flimj-ops.version} ${flimj-ui.version} ${flimlib.version} diff --git a/pombast.toml b/pombast.toml index 9f4605f..208918f 100644 --- a/pombast.toml +++ b/pombast.toml @@ -11,7 +11,6 @@ footer = "pombast/footer-status.html" nexus-base = "https://maven.scijava.org" cuttable = [ "de.nanoimaging:*", - "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -32,7 +31,6 @@ header = "pombast/header-team.html" footer = "pombast/footer-team.html" includes = [ "de.nanoimaging:*", - "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -51,7 +49,6 @@ includes = [ output = "../status.scijava.org/badges.json" includes = [ "de.nanoimaging:*", - "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -121,7 +118,6 @@ excludes = [ output = "../status.scijava.org/smelt.json" includes = [ "de.nanoimaging:*", - "flimlib:*", "fr.inra.ijpb:*", "io.scif:*", "jitk:*", @@ -197,13 +193,6 @@ skip-tests = [ "org.janelia.saalfeldlab.n5.universe.storage.zarr.zarr3.Zarr3GoogleCloudFactoryTest", ] -# TEMP: Until scijava-ops-flim 1.0.1 is released. -# FitTest.testGlobalFitImg:214->assertSampleEquals:254 array contents differ at index [0], expected: <2.5887516> but was: <1.2488503> -# FitTest.testGlobalFitImgMultiExp:228->assertSampleEquals:254 array contents differ at index [0], expected: <301.6971> but was: <193.0> -"org.scijava:scijava-ops-flim" = [ - "org.scijava.ops.flim.FitTest", -] - "sc.fiji:labkit-ui" = [ "sc.fiji.labkit.ui.GarbageCollectionTest", # Too slow (7 s) "sc.fiji.labkit.ui.plugin.LabkitProbabilityMapForImagesInDirectoryPluginTest", # Too slow (65 s) From bc44c9421c43d6299fd02c822a1eeebf22464ad1 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Mon, 22 Jun 2026 19:50:23 -0500 Subject: [PATCH 235/252] Manage only software.amazon.awssdk:s3, not all 446 The AWS v2 BOM brings in 446 managed components with groupId software.amazon.awssdk. But our ecosystem only uses one of them: s3. If/when that changes, we can manage more of them. --- pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 908406b..78f3985 100644 --- a/pom.xml +++ b/pom.xml @@ -1380,8 +1380,10 @@ ${aws-java-sdk-s3.version} - - 2.46.15 + 2.46.15 + ${awssdk.version} + ${s3.version} + 4.3.4 @@ -4446,10 +4448,8 @@ software.amazon.awssdk - bom - ${software.amazon.awssdk.bom.version} - pom - import + s3 + ${software.amazon.awssdk.s3.version} From 28ac3de79a6d956230ab2f91f92b9f8383ad9b9f Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 23 Jun 2026 11:51:45 -0500 Subject: [PATCH 236/252] Update CI for better separation of concerns Co-authored-by: Claude Opus 4.8 --- .github/melt.sh | 4 ---- .github/publish.sh | 14 +++++++++++--- .github/status.sh | 28 ++++++++++++++++------------ .github/workflows/build.yml | 11 ++++++++--- .github/workflows/status.yml | 6 ++++++ bin/check.sh | 22 ++++++++++++++++++++++ bin/report.sh | 24 ++++++++++++++++++++++++ pombast.toml | 9 ++++----- 8 files changed, 91 insertions(+), 27 deletions(-) delete mode 100755 .github/melt.sh create mode 100755 bin/check.sh create mode 100755 bin/report.sh diff --git a/.github/melt.sh b/.github/melt.sh deleted file mode 100755 index 0785de6..0000000 --- a/.github/melt.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -uv tool install "git+https://github.com/scijava/pombast.git" -pombast melt . || true -pombast smelt --json smelt.json . diff --git a/.github/publish.sh b/.github/publish.sh index be5b074..0e8bd6d 100755 --- a/.github/publish.sh +++ b/.github/publish.sh @@ -12,8 +12,8 @@ datestamp="$(TZ=UTC date +'%Y-%m-%d %H:%M:%S UTC')" message="$1 ($datestamp)" shift -git config --global user.name github-actions -git config --global user.email github-actions@github.com +git config --global user.name "SciJava CI" +git config --global user.email ci@scijava.org dest_dir=site-publish @@ -36,5 +36,13 @@ then else echo "== Committing changes ==" git commit -m "$message" - git push + # Retry against concurrent publishers (the build and status workflows both + # push here), rebasing onto whatever landed in between. + n=0 + until git push + do + n=$((n + 1)) + test "$n" -lt 5 || { echo "push failed after $n attempts" >&2; exit 1; } + git pull --rebase + done fi diff --git a/.github/status.sh b/.github/status.sh index 4e212d3..0ff5595 100755 --- a/.github/status.sh +++ b/.github/status.sh @@ -1,5 +1,9 @@ #!/bin/sh -uv tool install "git+https://github.com/scijava/pombast.git" +# CI orchestrator for the status dashboard: fetch the most recently published +# smelt.json, regenerate the status/badges/team reports from it, and publish +# them to status.scijava.org. The report generation itself lives in +# bin/report.sh so it can be run outside CI too. +set -e # Pull the most recently published smelt results so that `pombast status` can # classify each available version bump by its bytecode-floor blast radius @@ -7,17 +11,17 @@ uv tool install "git+https://github.com/scijava/pombast.git" # rather than https://status.scijava.org/, so we pick up a freshly committed # smelt.json immediately instead of waiting on the asynchronous Pages deploy. # -# Best-effort: if smelt.json is not published yet (or the fetch fails), status -# still runs -- just without the bytecode classification overlay. -smelt_arg="" +# Best-effort: if smelt.json is not published yet (or the fetch fails), +# bin/report.sh still generates the reports -- just without the classification. smelt_url=https://raw.githubusercontent.com/scijava/status.scijava.org/gh-pages/smelt.json -if curl -fsSLO "$smelt_url"; then - smelt_arg="--smelt smelt.json" -else +mkdir -p target/pombast +curl -fsSL -o target/pombast/smelt.json "$smelt_url" || echo "== smelt.json unavailable; running status without classification ==" -fi -pombast status $smelt_arg . -pombast badges -o badges.json . -pombast team . -.github/publish.sh "Update status reports" index.html badges.json team.html +bin/report.sh + +.github/publish.sh "Update status reports" \ + target/pombast/index.html \ + target/pombast/badges.json \ + target/pombast/team.html \ + target/pombast/team.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4624a36..9b31bda 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,6 +11,11 @@ on: # Run weekly on Sunday to keep the Maven cache alive. - cron: '4 5 * * 0' +# Queue runs of the same ref; cancel superseded PR builds (they never publish). +concurrency: + group: build-${{ github.ref }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + jobs: build: runs-on: ubuntu-latest @@ -63,8 +68,8 @@ jobs: ~/.cache/jgo key: ${{ runner.os }}-pombast-build - - name: Run pombast melt+smelt commands - run: .github/melt.sh + - name: Run pombast checks (melt + smelt) + run: bin/check.sh shell: bash - name: Delete old pombast cache @@ -86,5 +91,5 @@ jobs: - name: Publish smelt results if: always() && github.ref == 'refs/heads/master' && github.event_name == 'push' - run: .github/publish.sh "Update smelt results" smelt.json + run: .github/publish.sh "Update smelt results" target/pombast/smelt.json shell: bash diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index 0243292..11d114e 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -12,6 +12,12 @@ on: workflows: [build] types: [completed] +# Serialize status runs (daily cron + each build completion) so two never push +# to the status.scijava.org gh-pages branch at the same time. +concurrency: + group: status-publish + cancel-in-progress: false + jobs: status: runs-on: ubuntu-latest diff --git a/bin/check.sh b/bin/check.sh new file mode 100755 index 0000000..87fe6f1 --- /dev/null +++ b/bin/check.sh @@ -0,0 +1,22 @@ +#!/bin/sh +# Validate a Maven BOM's managed components against each other: +# +# melt -- mega-melt classpath check (duplicate classes, SNAPSHOTs, enforcer) +# smelt -- per-component build + test against the BOM-pinned dependency set +# +# Both phases always run, so a failure in one (e.g. duplicate classes in melt) +# never hides real incompatibilities surfaced by the other. The script exits +# non-zero if either phase found a problem. +# +# Run from a BOM checkout (e.g. a pom-scijava working copy): +# +# bin/check.sh +# +# Outputs land under target/pombast/ (see pombast.toml). +command -v pombast >/dev/null 2>&1 || + uv tool install "git+https://github.com/scijava/pombast.git" + +rc=0 +pombast melt || rc=$? +pombast smelt || rc=$? +exit $rc diff --git a/bin/report.sh b/bin/report.sh new file mode 100755 index 0000000..58b0f25 --- /dev/null +++ b/bin/report.sh @@ -0,0 +1,24 @@ +#!/bin/sh +# Generate the status, badges, and team reports for a Maven BOM, writing them +# under target/pombast/ (see pombast.toml). +# +# Run from a BOM checkout (e.g. a pom-scijava working copy): +# +# bin/report.sh +# +# The status report overlays binary/source compatibility info from +# target/pombast/smelt.json when present. Run bin/check.sh first, or drop a +# published smelt.json into target/pombast/, to populate it; without it, the +# reports are still generated, just without the bytecode classification. +command -v pombast >/dev/null 2>&1 || + uv tool install "git+https://github.com/scijava/pombast.git" + +smelt=target/pombast/smelt.json +if [ -f "$smelt" ]; then + pombast status --smelt "$smelt" +else + echo "== $smelt not found; generating status without bytecode classification ==" + pombast status +fi +pombast badges +pombast team diff --git a/pombast.toml b/pombast.toml index 208918f..96b37b9 100644 --- a/pombast.toml +++ b/pombast.toml @@ -3,8 +3,7 @@ default-java-version = 8 repositories = ["scijava.public=https://maven.scijava.org/content/groups/public"] [status] -output = "../status.scijava.org/index.html" -smelt = "../status.scijava.org/smelt.json" +output = "target/pombast/index.html" rules = "rules.xml" header = "pombast/header-status.html" footer = "pombast/footer-status.html" @@ -26,7 +25,7 @@ cuttable = [ ] [team] -output = "../status.scijava.org/team.html" +output = "target/pombast/team.html" header = "pombast/header-team.html" footer = "pombast/footer-team.html" includes = [ @@ -46,7 +45,7 @@ includes = [ ] [badges] -output = "../status.scijava.org/badges.json" +output = "target/pombast/badges.json" includes = [ "de.nanoimaging:*", "fr.inra.ijpb:*", @@ -115,7 +114,7 @@ excludes = [ ] [smelt] -output = "../status.scijava.org/smelt.json" +output = "target/pombast/smelt.json" includes = [ "de.nanoimaging:*", "fr.inra.ijpb:*", From fbf2e2262ca65f1043b452994c3a1f2f0a1a81a0 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 23 Jun 2026 17:31:47 -0500 Subject: [PATCH 237/252] Purge bigdataviewer-vistools from all components All bigdataviewer-vistools classes merged with bigdataviewer-core as of version 10.5.0. --- pom.xml | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/pom.xml b/pom.xml index 78f3985..13d9e94 100644 --- a/pom.xml +++ b/pom.xml @@ -3147,6 +3147,13 @@ net.imglib2 imglib2-imglyb ${net.imglib2.imglib2-imglyb.version} + + + + sc.fiji + bigdataviewer-vistools + + @@ -3242,6 +3249,13 @@ sc.fiji fiji ${sc.fiji.fiji.version} + + + + sc.fiji + bigdataviewer-vistools + + @@ -3943,6 +3957,13 @@ org.janelia.saalfeldlab n5-viewer_fiji ${org.janelia.saalfeldlab.n5-viewer_fiji.version} + + + + sc.fiji + bigdataviewer-vistools + +
org.janelia.saalfeldlab @@ -4034,11 +4055,25 @@ net.preibisch BigStitcher ${net.preibisch.BigStitcher.version} + + + + sc.fiji + bigdataviewer-vistools + + net.preibisch multiview-reconstruction ${net.preibisch.multiview-reconstruction.version} + + + + sc.fiji + bigdataviewer-vistools + + net.preibisch @@ -4101,6 +4136,13 @@ sc.fiji MaMuT ${sc.fiji.MaMuT.version} + + + + sc.fiji + bigdataviewer-vistools + + From 5c308a5a6baf1a008499d6c47ee8409b00be2006 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Tue, 23 Jun 2026 21:23:36 -0500 Subject: [PATCH 238/252] pombast CI: fix publish, add log artifacts publish.sh checked `git diff --quiet` after staging the files with `git add`, so it always saw a clean working tree and reported "No changes" -- nothing was ever committed to status.scijava.org's gh-pages branch. Check staged changes with `git diff --cached --quiet` instead. Also upload target/pombast logs (mega-melt validation + per-component build logs) and the generated reports as workflow artifacts, so melt and smelt failures can be diagnosed without waiting on a Pages deploy, and set COLUMNS so the Rich tables in the CI logs are legible. Co-Authored-By: Claude Opus 4.8 --- .github/publish.sh | 4 +++- .github/workflows/build.yml | 16 ++++++++++++++++ .github/workflows/status.yml | 14 ++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/.github/publish.sh b/.github/publish.sh index 0e8bd6d..997d0ff 100755 --- a/.github/publish.sh +++ b/.github/publish.sh @@ -30,7 +30,9 @@ do done cd "$dest_dir" -if git diff --quiet . +# Check staged changes (--cached): the files above were already `git add`ed, so +# a plain `git diff` would see an always-clean working tree and never commit. +if git diff --cached --quiet then echo "== No changes ==" else diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9b31bda..1df2f9e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -71,6 +71,22 @@ jobs: - name: Run pombast checks (melt + smelt) run: bin/check.sh shell: bash + env: + COLUMNS: '200' # widen Rich tables so log output is legible + + - name: Upload pombast logs + if: always() + uses: actions/upload-artifact@v4 + with: + name: pombast-logs + # mega-melt validation.log + dependency-tree.log + per-component build + # logs, plus the smelt report. Lets us diagnose melt/smelt failures + # without waiting on a status.scijava.org deploy. + path: | + target/pombast/**/*.log + target/pombast/smelt.json + if-no-files-found: warn + retention-days: 14 - name: Delete old pombast cache if: always() diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index 11d114e..52a49e9 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -64,6 +64,20 @@ jobs: shell: bash env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COLUMNS: '200' # widen Rich tables so log output is legible + + - name: Upload status reports + if: always() + uses: actions/upload-artifact@v4 + with: + name: status-reports + path: | + target/pombast/index.html + target/pombast/badges.json + target/pombast/team.html + target/pombast/team.json + if-no-files-found: warn + retention-days: 14 - name: Delete old pombast status cache if: always() From 9057d2fb355e94bd6b132415096aa07f016fccca Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Thu, 25 Jun 2026 14:13:59 -0400 Subject: [PATCH 239/252] bump BigStitcher ecosystem artifact versions --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 13d9e94..3bf0eb0 100644 --- a/pom.xml +++ b/pom.xml @@ -777,7 +777,7 @@ 1.0.7 ${Correct_3D_Drift.version} - 2.1.8 + 3.0.1 ${Descriptor_based_registration.version} 2.1.2 @@ -937,7 +937,7 @@ 2.0.1 ${Statistical_Region_Merging.version} - 3.1.9 + 3.1.10 ${Stitching.version} ${Stitching_.version} @@ -1195,7 +1195,7 @@ ${n5-viewer_fiji.version} - 2.0.0 + 2.0.1 ${n5-zarr.version} @@ -1237,8 +1237,8 @@ ${clijx-weka_.version} - 3.0.1 - 9.0.2 + 3.0.6 + 9.0.8 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} From ae56e58aa18dda2b289e155bab8d1c791d11a6f5 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 26 Jun 2026 15:12:59 -0500 Subject: [PATCH 240/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3bf0eb0..9f695ef 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 45.0.0-SNAPSHOT + 45.0.1-SNAPSHOT pom SciJava Parent POM From b2e0b5a1ad6390495ea022e41f9dbfcc999303e6 Mon Sep 17 00:00:00 2001 From: Michael Doube Date: Sun, 28 Jun 2026 17:53:49 +0200 Subject: [PATCH 241/252] BoneJ 7.2.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9f695ef..fd5005f 100644 --- a/pom.xml +++ b/pom.xml @@ -1245,7 +1245,7 @@ ${multiview-simulation.version} - 7.2.0 + 7.2.2 ${bonej.version} ${bonej.version} ${bonej.version} From dbd72fc6e9670a69017608bcfe48ecc9d3979074 Mon Sep 17 00:00:00 2001 From: Stephan Preibisch Date: Thu, 2 Jul 2026 13:23:28 +0200 Subject: [PATCH 242/252] Bump multiview-reconstruction 9.0.9, BigStitcher 3.0.7, Descriptor_based_registration 3.0.2 Co-Authored-By: Claude Opus 4.8 (1M context) --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index fd5005f..11f46d4 100644 --- a/pom.xml +++ b/pom.xml @@ -777,7 +777,7 @@ 1.0.7 ${Correct_3D_Drift.version} - 3.0.1 + 3.0.2 ${Descriptor_based_registration.version} 2.1.2 @@ -1237,8 +1237,8 @@ ${clijx-weka_.version} - 3.0.6 - 9.0.8 + 3.0.7 + 9.0.9 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} From 2b4d23bac6a70c9ced1dd1ac3d4230d52c7ac39f Mon Sep 17 00:00:00 2001 From: Stephan Preibisch Date: Fri, 3 Jul 2026 20:59:43 +0200 Subject: [PATCH 243/252] Bump multiview-reconstruction 9.0.11, BigStitcher 3.0.8, Descriptor_based_registration 3.0.3 Co-Authored-By: Claude Opus 4.8 (1M context) --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 11f46d4..e47207d 100644 --- a/pom.xml +++ b/pom.xml @@ -777,7 +777,7 @@ 1.0.7 ${Correct_3D_Drift.version} - 3.0.2 + 3.0.3 ${Descriptor_based_registration.version} 2.1.2 @@ -1237,8 +1237,8 @@ ${clijx-weka_.version} - 3.0.7 - 9.0.9 + 3.0.8 + 9.0.11 0.3.1 ${BigStitcher.version} ${multiview-reconstruction.version} From e9a74b86c2196c61bebad1694c80561d5cbf9e47 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 3 Jul 2026 16:05:25 -0500 Subject: [PATCH 244/252] Update component versions * imagej-updater: 2.0.1 -> 2.0.3 * KymographBuilder: 3.0.0 -> 3.0.2 To align with versions already shipped in Fiji-Latest. --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e47207d..5214e26 100644 --- a/pom.xml +++ b/pom.xml @@ -612,7 +612,7 @@ ${imagej-ui-swing.version} - 2.0.1 + 2.0.3 ${imagej-updater.version} @@ -853,7 +853,7 @@ 2.0.1 ${Kuwahara_Filter.version} - 3.0.0 + 3.0.2 ${KymographBuilder.version} 4.1.2 From 1e0c34c7445d597e84eb88fbc2ec936e0f1620e8 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 3 Jul 2026 16:09:53 -0500 Subject: [PATCH 245/252] Update net.imagej:imagej: 2.17.0 -> 2.18.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 5214e26..a79cde0 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 45.0.1-SNAPSHOT + 45.1.0-SNAPSHOT pom SciJava Parent POM @@ -523,7 +523,7 @@ ${ij1-patcher.version} - 2.17.0 + 2.18.0 ${imagej2.version} ${imagej.version} From 7449822d8dd7bf7a9fab84414dac574ae6207576 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Wed, 15 Jul 2026 09:10:24 -0500 Subject: [PATCH 246/252] CI: do not run status workflow within forked repos Co-authored-by: Claude Sonnet 5 --- .github/workflows/status.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/status.yml b/.github/workflows/status.yml index 52a49e9..67038f3 100644 --- a/.github/workflows/status.yml +++ b/.github/workflows/status.yml @@ -21,12 +21,16 @@ concurrency: jobs: status: runs-on: ubuntu-latest - # Scheduled runs always proceed. workflow_run runs only when the triggering - # build was a push to master (i.e. one that republished smelt.json). + # Restrict to the canonical repo, since scheduled (cron) triggers fire on + # every fork's default branch too, regardless of push activity there. + # Beyond that: scheduled runs always proceed, while workflow_run runs only + # when the triggering build was a push to master (i.e. one that + # republished smelt.json). if: >- - github.event_name != 'workflow_run' || - (github.event.workflow_run.event == 'push' && - github.event.workflow_run.head_branch == 'master') + github.repository == 'scijava/pom-scijava' && + (github.event_name != 'workflow_run' || + (github.event.workflow_run.event == 'push' && + github.event.workflow_run.head_branch == 'master')) permissions: actions: write # needed to delete and re-save caches From cb337bde166cd77b004aac16f37110c68ca48f54 Mon Sep 17 00:00:00 2001 From: Caleb Hulbert Date: Fri, 17 Jul 2026 14:39:01 -0400 Subject: [PATCH 247/252] Revert "Purge opencensus libraries from the BOM" This reverts commit 7a2c1b3f93d4558b481da360b275ca337219f10c. --- pom.xml | 45 --------------------------------------------- 1 file changed, 45 deletions(-) diff --git a/pom.xml b/pom.xml index a79cde0..b5c6a3b 100644 --- a/pom.xml +++ b/pom.xml @@ -5366,15 +5366,6 @@ com.google.api gax ${com.google.api.gax.version} - - - - io.opencensus - * - - com.google.api @@ -5436,15 +5427,6 @@ com.google.cloud google-cloud-core-http ${com.google.cloud.google-cloud-core-http.version} - - - - io.opencensus - * - - com.google.cloud @@ -5455,29 +5437,11 @@ com.google.cloud google-cloud-resourcemanager ${com.google.cloud.google-cloud-resourcemanager.version} - - - - io.opencensus - * - - com.google.cloud google-cloud-storage ${com.google.cloud.google-cloud-storage.version} - - - - io.opencensus - * - - @@ -5485,15 +5449,6 @@ com.google.http-client google-http-client ${com.google.http-client.google-http-client.version} - - - - io.opencensus - * - - com.google.http-client From b9a90f1f85035c59267ebccac06b0c81b9ce725e Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 17 Jul 2026 17:41:09 -0500 Subject: [PATCH 248/252] Update google-cloud-related component versions * google-cloud-core: 2.33.0 -> 2.72.0 * google-cloud-nio: 0.127.13 -> 0.134.0 * google-cloud-resourcemanager: 1.38.0 -> 1.96.0 * google-cloud-storage: 2.34.0 -> 2.70.0 * gson: 2.10.1 -> 2.14.0 --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index b5c6a3b..2e868c6 100644 --- a/pom.xml +++ b/pom.xml @@ -1792,11 +1792,11 @@ ${auto-value-annotations.version} - 2.33.0 + 2.72.0 ${google-cloud-core.version} - 0.127.13 - 1.38.0 - 2.34.0 + 0.134.0 + 1.96.0 + 2.70.0 ${google-cloud-core.version} ${google-cloud-core-http.version} ${google-cloud-nio.version} @@ -1851,7 +1851,7 @@ ${grpc-xds.version} - 2.10.1 + 2.14.0 ${gson.version} From dd0ac8fd52add67f48ff16a73165ff72f8e03601 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 17 Jul 2026 21:04:03 -0500 Subject: [PATCH 249/252] Update component versions * scifio-labeling: 0.3.2 -> 0.4.0 * n5-google-cloud: 6.0.0 -> 6.0.1 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 2e868c6..eac6c83 100644 --- a/pom.xml +++ b/pom.xml @@ -692,7 +692,7 @@ ${scifio-jai-imageio.version} - 0.3.2 + 0.4.0 ${scifio-labeling.version} @@ -1171,7 +1171,7 @@ ${n5-blosc.version} - 6.0.0 + 6.0.1 ${n5-google-cloud.version} From 17f395c6ec2daeb5adc62c976e91062765a4783c Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 17 Jul 2026 21:29:01 -0500 Subject: [PATCH 250/252] Tell Gradle to shut up about its stupid daemon MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The single-use daemon notification message irritates me greatly. Every time I see it, I get worked up: * I don't want my build system to leave a daemon process lying around post-build (what other build system does this, *especially* by default rather than opt in?), so I pass the --no-daemon flag to prevent that from happening. * I don't care that another transient process is being forked -- other build systems like Maven do this all the time e.g. to invoke javac in its own process, and they don't spam the user about it. At minimum, I would expect there to be some kind of verbosity control, so that I can silence the message. As such, I asked Claude whether it is possible to disable this message by configuring Gradle's logger, and if not, how to go about modifying the source code to add support for such a toggle. Here is what it said: ## Is it already configurable? Not in any targeted way. It is logged at Gradle's lifecycle level, which is the default level. The only existing knobs are the global log-level controls: - --quiet / -q on the CLI, or - org.gradle.logging.level=quiet in gradle.properties Any of those would hide the message — but they suppress all lifecycle output (including BUILD SUCCESSFUL, incubating-feature notices, etc.), so it's far too blunt. There is no per-message toggle for this specific line today. One important architectural fact that shapes the fix: this message is printed by the client/launcher JVM (SingleUseDaemonClient runs in the launcher, it's the thing that forks the daemon). That matters for where a system property is readable — see below. ## Recommendation Gradle itself already has a precedent for exactly this kind of opt-out: WelcomeMessageAction gates its output on the system property org.gradle.internal.launcher.welcomeMessageEnabled. I'd mirror that pattern. There are two levels of effort: ### Option A — minimal, one-file change Downgrade the message from lifecycle to info when a system property is set. In SingleUseDaemonClient.execute(): String recommendation = documentationRegistry.getDocumentationRecommendationFor( "on this", "gradle_daemon", "sec:disabling_the_daemon"); if (Boolean.getBoolean("org.gradle.daemon.singleUseMessage.disabled")) { LOGGER.info(MESSAGE + " {}", recommendation); } else { LOGGER.lifecycle(MESSAGE + " {}", recommendation); } Downgrading to info (rather than deleting the call) keeps the message discoverable with --info/--debug and preserves the existing SingleUseDaemonClientTest expectations if you run at info. Caveat on how you set it: because this runs in the launcher JVM, the property must be a real JVM system property of that process. That means one of: - gradle -Dorg.gradle.daemon.singleUseMessage.disabled=true … - export GRADLE_OPTS="-Dorg.gradle.daemon.singleUseMessage.disabled=true" A plain systemProp entry in gradle.properties will not work here — those are forwarded to the daemon JVM, not applied to the launcher. ### Option B — the "clean" Gradle-idiomatic way If you want it configurable via gradle.properties like org.gradle.welcome, thread a boolean down from BuildActionsFactory.runBuildInSingleUseDaemon (where DaemonParameters — which has parsed gradle.properties — is available) through DaemonClientFactory.createSingleUseDaemonClientServices → SingleUseDaemonClientServices → SingleUseDaemonClient. That's the properly-plumbed version and would let you use a real org.gradle.* build option, but it touches ~4 files and, to be a first-class option, ideally also a BuildOption subclass + serializer entry. It is tempting to file a PR along the lines of Option A, but the fact that it would then not work as expected via gradle.properties would likely then bite people. Properly, the new option should also be added to the documentation and ideally be part of the same PR. So since -q already works to silence the warning, I just opted for that. Sure, it silences a lot more than only the single-use daemon message, but for this use case in pom-scijava, it doesn't matter. Good enough for now, to keep me from having a micro-meltdown on every Maven build. Now if I can just avoid ever noticing the irritating comment line at the top of the POM... See also: - https://github.com/gradle/gradle/issues/2660 - https://github.com/gradle/gradle/issues/11517 - https://github.com/gradle/gradle/issues/25272 --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index eac6c83..534716e 100644 --- a/pom.xml +++ b/pom.xml @@ -7273,6 +7273,7 @@ ${gradle.wrapper} ${basedir}/gradle-scijava + -q --no-daemon --project-cache-dir ../target/gradle/build From 2bcb0f404bd91a7be8d841e58ca54a63169441d1 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Fri, 17 Jul 2026 22:21:52 -0500 Subject: [PATCH 251/252] Bump to next development cycle Signed-off-by: Curtis Rueden --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 534716e..6b838dd 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ pom-scijava - 45.1.0-SNAPSHOT + 45.1.1-SNAPSHOT pom SciJava Parent POM From e72f3e778af454ac9b8f0f0f7aa87e68228847b7 Mon Sep 17 00:00:00 2001 From: Curtis Rueden Date: Sat, 18 Jul 2026 18:22:51 -0500 Subject: [PATCH 252/252] Retry artifacts after 2h, not 24h, for melt/smelt This uses a newly added feature of pombast to specify a settings.xml file to use with relevant pombast actions like melt and smelt (see scijava/pombast@12a42f6b2932a278ce5e17c46efb4d6f5ce636c4). In such a file, we can set the updatePolicy of each repository. It is tempting to pass -U to all of pombast's mvn invocations, forcing rechecks for missing artifacts every single time. But that would be overkill, adding more overhead to each smelt component build, whereas reducing the update window from 24 hours to 2 hours means that we won't recheck for (probably still) missing artifacts for every smelted component that depends on it during a single run, but rather we'll recheck "soon" -- hopefully the next time CI runs ~2 hours later. Why 2 hours? Because the pombast CI smelt run takes ~90 minutes when no previous successes have been cached. Would it be better to somehow reset the last-checked metadata before starting the smelt, so that every CI build behaves as though it's the first one of the day? Perhaps! But for now, let's try the 2h interval and see how it goes. --- pombast.toml | 1 + pombast/settings.xml | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 pombast/settings.xml diff --git a/pombast.toml b/pombast.toml index 96b37b9..d6891f7 100644 --- a/pombast.toml +++ b/pombast.toml @@ -1,6 +1,7 @@ [common] default-java-version = 8 repositories = ["scijava.public=https://maven.scijava.org/content/groups/public"] +settings = "pombast/settings.xml" [status] output = "target/pombast/index.html" diff --git a/pombast/settings.xml b/pombast/settings.xml new file mode 100644 index 0000000..534a5e6 --- /dev/null +++ b/pombast/settings.xml @@ -0,0 +1,22 @@ + + + + + update-interval + + + scijava.public + https://maven.scijava.org/content/groups/public + interval:120 + interval:120 + + + central + https://repo.maven.apache.org/maven2 + interval:120 + + + + + update-interval +