From 1cc9ba038097a6b5f8ea7a0bcb5f5f652471ff4e Mon Sep 17 00:00:00 2001 From: Jeremi Levesque Date: Thu, 26 Feb 2026 23:31:04 -0500 Subject: [PATCH] Update freewater, noddi and diffusivitypriors --- .../reconst/diffusivitypriors/main.nf | 2 +- .../diffusivitypriors/tests/main.nf.test.snap | 12 ++-- modules/nf-neuro/reconst/freewater/main.nf | 7 ++- .../reconst/freewater/tests/main.nf.test.snap | 28 ++++----- modules/nf-neuro/reconst/noddi/main.nf | 7 ++- .../reconst/noddi/tests/main.nf.test.snap | 24 ++++---- .../reconst_fw_noddi/tests/main.nf.test.snap | 58 +++++++++---------- 7 files changed, 74 insertions(+), 64 deletions(-) diff --git a/modules/nf-neuro/reconst/diffusivitypriors/main.nf b/modules/nf-neuro/reconst/diffusivitypriors/main.nf index 2025ffb8..cc15c982 100644 --- a/modules/nf-neuro/reconst/diffusivitypriors/main.nf +++ b/modules/nf-neuro/reconst/diffusivitypriors/main.nf @@ -2,7 +2,7 @@ process RECONST_DIFFUSIVITYPRIORS { tag "$meta.id" label 'process_single' - container "scilus/scilpy:dev" // TODO: Replace this container with an official one once available. + container "scilus/scilpy:2.2.2_cpu" input: tuple val(meta), path(fa), path(ad), path(rd), path(md) diff --git a/modules/nf-neuro/reconst/diffusivitypriors/tests/main.nf.test.snap b/modules/nf-neuro/reconst/diffusivitypriors/tests/main.nf.test.snap index 0cd8c39a..183b1000 100644 --- a/modules/nf-neuro/reconst/diffusivitypriors/tests/main.nf.test.snap +++ b/modules/nf-neuro/reconst/diffusivitypriors/tests/main.nf.test.snap @@ -137,25 +137,25 @@ ] ], [ - "versions.yml:md5,81f780d3d557fd27e4724ea81fbe6f1a" + "versions.yml:md5,9614f69f1fd8319213a31140c654ed84" ] ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.6" + "nextflow": "25.10.2" }, - "timestamp": "2025-11-14T15:18:34.825370539" + "timestamp": "2026-02-26T23:05:20.206018637" }, "reconst - diffusivitypriors - stub-run": { "content": [ [ - "versions.yml:md5,81f780d3d557fd27e4724ea81fbe6f1a" + "versions.yml:md5,9614f69f1fd8319213a31140c654ed84" ] ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.6" + "nextflow": "25.10.2" }, - "timestamp": "2025-11-14T15:18:39.245577816" + "timestamp": "2026-02-26T23:05:24.880867377" } } \ No newline at end of file diff --git a/modules/nf-neuro/reconst/freewater/main.nf b/modules/nf-neuro/reconst/freewater/main.nf index 975d27f8..1d065150 100644 --- a/modules/nf-neuro/reconst/freewater/main.nf +++ b/modules/nf-neuro/reconst/freewater/main.nf @@ -3,7 +3,7 @@ process RECONST_FREEWATER { tag "$meta.id" label 'process_low' - container "scilus/scilpy:2.2.0_cpu" + container "scilus/scilpy:2.2.2_cpu" input: tuple val(meta), path(dwi), path(bval), path(bvec), path(mask), path(kernels), val(para_diff), val(iso_diff), val(perp_diff_min), val(perp_diff_max) @@ -65,6 +65,11 @@ process RECONST_FREEWATER { def prefix = task.ext.prefix ?: "${meta.id}" """ + # Set home directory. This is problematic if the container is run + # with non-root user which does not create a home directory, whilst + # AMICO attempts to write in the home directory, raising an error. + export HOME=/tmp + scil_freewater_maps -h mkdir kernels touch "${prefix}__dwi_fw_corrected.nii.gz" diff --git a/modules/nf-neuro/reconst/freewater/tests/main.nf.test.snap b/modules/nf-neuro/reconst/freewater/tests/main.nf.test.snap index 829ae064..19694404 100644 --- a/modules/nf-neuro/reconst/freewater/tests/main.nf.test.snap +++ b/modules/nf-neuro/reconst/freewater/tests/main.nf.test.snap @@ -2,32 +2,32 @@ "reconst - freewater - stub-run": { "content": [ [ - "versions.yml:md5,b7348842aae4271b2d6831f596bae6f3" + "versions.yml:md5,8655aa3f6156a402b21af91cf01c0ed4" ] ], "meta": { - "nf-test": "0.9.0", - "nextflow": "25.04.7" + "nf-test": "0.9.3", + "nextflow": "25.10.2" }, - "timestamp": "2025-09-23T18:05:08.029531192" + "timestamp": "2026-02-26T23:24:39.878161525" }, "reconst - freewater_no_mask_compute_only": { "content": [ [ - "versions.yml:md5,b7348842aae4271b2d6831f596bae6f3" + "versions.yml:md5,8655aa3f6156a402b21af91cf01c0ed4" ], 11 ], "meta": { - "nf-test": "0.9.0", - "nextflow": "25.04.7" + "nf-test": "0.9.3", + "nextflow": "25.10.2" }, - "timestamp": "2025-09-23T18:54:46.117963036" + "timestamp": "2026-02-26T23:11:42.042994441" }, "reconst - freewater": { "content": [ [ - "versions.yml:md5,b7348842aae4271b2d6831f596bae6f3" + "versions.yml:md5,8655aa3f6156a402b21af91cf01c0ed4" ], 11, "test__dwi_fw_corrected.nii.gz", @@ -38,14 +38,14 @@ ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.8" + "nextflow": "25.10.2" }, - "timestamp": "2026-01-06T21:48:42.006348" + "timestamp": "2026-02-26T23:07:11.489341481" }, "reconst - freewater - with priors": { "content": [ [ - "versions.yml:md5,b7348842aae4271b2d6831f596bae6f3" + "versions.yml:md5,8655aa3f6156a402b21af91cf01c0ed4" ], 11, "test__dwi_fw_corrected.nii.gz", @@ -56,8 +56,8 @@ ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.8" + "nextflow": "25.10.2" }, - "timestamp": "2026-01-06T21:50:50.568852" + "timestamp": "2026-02-26T23:08:05.039059796" } } \ No newline at end of file diff --git a/modules/nf-neuro/reconst/noddi/main.nf b/modules/nf-neuro/reconst/noddi/main.nf index 3db191fd..d64d1898 100644 --- a/modules/nf-neuro/reconst/noddi/main.nf +++ b/modules/nf-neuro/reconst/noddi/main.nf @@ -2,7 +2,7 @@ process RECONST_NODDI { tag "$meta.id" label 'process_medium' - container "scilus/scilpy:2.2.0_cpu" + container "scilus/scilpy:2.2.2_cpu" input: tuple val(meta), path(dwi), path(bval), path(bvec), path(mask), path(kernels), val(para_diff), val(iso_diff) @@ -87,6 +87,11 @@ process RECONST_NODDI { def prefix = task.ext.prefix ?: "${meta.id}" """ + # Set home directory. This is problematic if the container is run + # with non-root user which does not create a home directory, whilst + # AMICO attempts to write in the home directory, raising an error. + export HOME=/tmp + scil_NODDI_maps -h scil_volume_math -h diff --git a/modules/nf-neuro/reconst/noddi/tests/main.nf.test.snap b/modules/nf-neuro/reconst/noddi/tests/main.nf.test.snap index f66f56e2..9eeb2e10 100644 --- a/modules/nf-neuro/reconst/noddi/tests/main.nf.test.snap +++ b/modules/nf-neuro/reconst/noddi/tests/main.nf.test.snap @@ -7,15 +7,15 @@ "test__ecvf.nii.gz", "test__odi.nii.gz", [ - "versions.yml:md5,3c8accc418234ecdbf36f805b000818c" + "versions.yml:md5,d52a676c51564a0311f5029ba67aaf29" ], 145 ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.8" + "nextflow": "25.10.2" }, - "timestamp": "2026-01-07T12:49:41.217264" + "timestamp": "2026-02-26T23:18:48.788717523" }, "reconst - noddi - with priors": { "content": [ @@ -25,39 +25,39 @@ "test__ecvf.nii.gz", "test__odi.nii.gz", [ - "versions.yml:md5,3c8accc418234ecdbf36f805b000818c" + "versions.yml:md5,d52a676c51564a0311f5029ba67aaf29" ], 145 ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.8" + "nextflow": "25.10.2" }, - "timestamp": "2026-01-07T12:52:14.874089" + "timestamp": "2026-02-26T23:19:46.00348974" }, "reconst - noddi - save_kernels - no mask": { "content": [ [ - "versions.yml:md5,3c8accc418234ecdbf36f805b000818c" + "versions.yml:md5,d52a676c51564a0311f5029ba67aaf29" ], 145 ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.6" + "nextflow": "25.10.2" }, - "timestamp": "2025-12-11T15:12:31.541942034" + "timestamp": "2026-02-26T23:17:51.450449021" }, "reconst - noddi - stub-run": { "content": [ [ - "versions.yml:md5,3c8accc418234ecdbf36f805b000818c" + "versions.yml:md5,d52a676c51564a0311f5029ba67aaf29" ] ], "meta": { "nf-test": "0.9.3", - "nextflow": "25.04.6" + "nextflow": "25.10.2" }, - "timestamp": "2025-11-13T16:58:51.218060667" + "timestamp": "2026-02-26T23:27:46.254323732" } } \ No newline at end of file diff --git a/subworkflows/nf-neuro/reconst_fw_noddi/tests/main.nf.test.snap b/subworkflows/nf-neuro/reconst_fw_noddi/tests/main.nf.test.snap index df675353..e37fc8e7 100644 --- a/subworkflows/nf-neuro/reconst_fw_noddi/tests/main.nf.test.snap +++ b/subworkflows/nf-neuro/reconst_fw_noddi/tests/main.nf.test.snap @@ -165,8 +165,8 @@ ] ], "versions": [ - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", - "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0" + "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -174,7 +174,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:36:39.598881865" + "timestamp": "2026-02-26T23:29:23.820516886" }, "reconst_fw_noddi - noddi & freewater - custom priors": { "content": [ @@ -548,12 +548,12 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", - "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0" + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3", + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -561,7 +561,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:36:07.605628754" + "timestamp": "2026-02-26T23:28:51.64962634" }, "reconst_fw_noddi - noddi & freewater": { "content": [ @@ -774,10 +774,10 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,70017630e95110c203240f3be07c716b", "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", - "versions.yml:md5,9fe765550b2a3f33e52de7bdd91daf0b" + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -785,7 +785,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:35:40.018200469" + "timestamp": "2026-02-26T23:28:24.016168121" }, "reconst_fw_noddi - noddi & freewater - average priors": { "content": [ @@ -998,11 +998,11 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", "versions.yml:md5,21ec0c32bc11dca0c4ccc95fdf1a2690", - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,70017630e95110c203240f3be07c716b", "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", - "versions.yml:md5,9fe765550b2a3f33e52de7bdd91daf0b" + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -1010,7 +1010,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:35:54.886878716" + "timestamp": "2026-02-26T23:28:38.89054199" }, "reconst_fw_noddi - noddi": { "content": [ @@ -1061,8 +1061,8 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", - "versions.yml:md5,9fe765550b2a3f33e52de7bdd91daf0b" + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,70017630e95110c203240f3be07c716b" ] } ], @@ -1070,7 +1070,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:35:10.744721888" + "timestamp": "2026-02-26T23:27:55.253043493" }, "reconst_fw_noddi - freewater": { "content": [ @@ -1238,9 +1238,9 @@ ] ], "versions": [ - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", + "versions.yml:md5,70017630e95110c203240f3be07c716b", "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", - "versions.yml:md5,9fe765550b2a3f33e52de7bdd91daf0b" + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -1248,7 +1248,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:35:25.549988741" + "timestamp": "2026-02-26T23:28:09.646051384" }, "reconst_fw_noddi - noddi - custom priors": { "content": [ @@ -1299,7 +1299,7 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95" + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2" ] } ], @@ -1307,7 +1307,7 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:36:27.080369611" + "timestamp": "2026-02-26T23:29:11.365231081" }, "reconst_fw_noddi - noddi & freewater - custom priors subject-bound": { "content": [ @@ -1520,9 +1520,9 @@ ] ], "versions": [ - "versions.yml:md5,0576c1fdab3c59610cd67015e8146f95", - "versions.yml:md5,689b2c4f00690ac95de93f6175661a17", - "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0" + "versions.yml:md5,62b008e3bc1925b77790071d9e96a1a2", + "versions.yml:md5,9afc90b08b74fc84e879e1d2d0d7c7d0", + "versions.yml:md5,d1764b00cbc88145b08362c8ae9762b3" ] } ], @@ -1530,6 +1530,6 @@ "nf-test": "0.9.3", "nextflow": "25.10.2" }, - "timestamp": "2026-02-26T15:36:20.35765599" + "timestamp": "2026-02-26T23:29:04.257198065" } } \ No newline at end of file