From 09efa263f38b6a50e249c12af75e8bfcf3348fdc Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Sat, 9 Dec 2023 12:06:42 -0500 Subject: [PATCH] Prepare for 0.6.0 release (#362) * Prepare for 0.6.0 release. * Update CITATION.cff. --- .github/dependabot.yml | 7 +- CHANGES.md | 52 ++++++++ CITATION.cff | 12 +- README.rst | 6 +- docs/license.rst | 2 +- docs/links.rst | 3 +- docs/outputs.rst | 293 ++++++++++++++++++++++++++++++++++++----- docs/spaces.rst | 45 +------ docs/usage.rst | 7 +- long_description.rst | 12 +- 10 files changed, 350 insertions(+), 89 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f198400f0..2b5fd1113 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,7 +7,12 @@ version: 2 updates: - package-ecosystem: "github-actions" # See documentation for possible values directory: "/" # Location of package manifests - labels: ["maintenance"] + labels: ["maintenance", "ignore-for-release"] assignees: ["tsalo"] schedule: interval: "weekly" + - package-ecosystem: pip + directory: "/" + labels: ["maintenance", "ignore-for-release"] + schedule: + interval: weekly diff --git a/CHANGES.md b/CHANGES.md index 015f4d9fe..f98798fdf 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,55 @@ +## 0.6.0 + +This release makes substantial changes to *ASLPrep*. +The two main changes are (1) the Schaefer atlases are replaced with the PennLINC team's new 4S atlases, +which combine the Schaefer cortical atlases and several subcortical atlases, +and (2) a major rearchitect of the package based on *fMRIPrep* version 23.2.0a2. +The latter allows *ASLPrep* to run FreeSurfer reconstruction, +write out CIFTI and GIFTI format derivatives, +and correctly apply susceptibility distortion correction with *SDCFlows* +(although SDC support is dependent on the _next_ *SDCFlows* release, so in practice it won't work just yet). + +I'd like to credit Chris Markiewicz (@effigies) for doing the majority of the work in the *fMRIPrep* refactor, +which I was able to copy and adapt for *ASLPrep*. + +Here's a list of parameter changes with this release: + +- Users must point to the actual output directory. + `aslprep` will no longer be appended automatically. +- The parameter `--anat-derivatives` is replaced with `--derivatives`, + which takes one or more paths to *sMRIPrep* or *ASLPrep* derivatives. +- The parameter `--dummy-vols` is now `--dummy-scans` to match *fMRIPrep*. +- The following parameters are newly added: + `--bids-database-dir`, `--level`, `--medial-surface-nan`, `--project-goodvoxels`, + `--cifti-output`, `--no-msm`, `--no-submm-recon`, `--fs-subjects-dir`, + `--fs-no-reconall`, and `--config-file`. + +Output changes: + +- The native-space `aslref` image is now split into `desc-hmc` and `desc-coreg` versions. +- `desc-pvGM_cbf` is renamed to `desc-basilGM_cbf`. +- `desc-pvWM_cbf` is renamed to `desc-basilWM_cbf`. +- `desc-confounds_regressors.tsv` is renamed to `desc-confounds_timeseries.tsv`. +- The transform `from-T1w_to-scanner_mode-image_xfm.txt` is no longer generated. + The inverse is invertible, so the information is still available. +- The transform `from-scanner_to-T1w_mode-image_xfm.txt` is split into + `from-orig_to-aslref_mode-image_xfm.txt` and `from-aslref_to-T1w_mode-image_xfm.txt` files. + +### 🛠 Breaking Changes +* Add AtlasPack atlases by @tsalo in https://github.com/PennLINC/aslprep/pull/330 +* Replace AtlasPack 0.0.5 atlases with AtlasPack 0.1.0 atlases by @tsalo in https://github.com/PennLINC/aslprep/pull/334 +* Remove sdcflows and model ASLPrep on fMRIPrep/next by @tsalo in https://github.com/PennLINC/aslprep/pull/338 + +### 🎉 Exciting New Features +* Write out GIFTI and CIFTI CBF maps by @tsalo in https://github.com/PennLINC/aslprep/pull/361 + +### 🐛 Bug Fixes +* Pin scipy version to 1.10.1 by @tsalo in https://github.com/PennLINC/aslprep/pull/333 +* Raise error if no M0 volume(s)/estimate available and background suppression is enabled by @tsalo in https://github.com/PennLINC/aslprep/pull/337 +* Limit BASIL `--slicedt` argument to ascending slice orders by @tsalo in https://github.com/PennLINC/aslprep/pull/348 + +**Full Changelog**: https://github.com/PennLINC/aslprep/compare/0.5.1...0.6.0 + ## 0.5.1 diff --git a/CITATION.cff b/CITATION.cff index a18826e07..67210e65c 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -59,12 +59,20 @@ authors: family-names: Flounders - given-names: Alexandre R. family-names: Franco + - given-names: Mathias + family-names: Goncalves + affiliation: Stanford University + orcid: 'https://orcid.org/0000-0002-7252-7771' - given-names: Raquel E. family-names: Gur - given-names: Ruben C. family-names: Gur - given-names: Basma family-names: Jaber + - given-names: Christopher J. + family-names: Markiewicz + affiliation: Stanford University + orcid: 'https://orcid.org/0000-0002-6533-164X' - given-names: Corey family-names: McMillian - name: "The ALLFTD Consortium" @@ -116,5 +124,5 @@ keywords: - BIDS-App - Neuroimaging license: BSD-3-Clause -version: 0.3.0 -date-released: '2023-04-07' +version: 0.6.0 +date-released: '2023-12-09' diff --git a/README.rst b/README.rst index a396ecb08..7b00d212c 100644 --- a/README.rst +++ b/README.rst @@ -100,7 +100,11 @@ ASLPrep is largely based on fMRIPrep, as ASL processing is very similar to fMRI fMRIPrep is developed by a larger group and receives more regular feedback on its workflow, so we (the ASLPrep developers) try to update ASLPrep in line with fMRIPrep. -ASLPrep and fMRIPrep are both part of the NiPreps community. +ASLPrep and fMRIPrep are both part of the NiPreps community, but ASLPrep is in a unique situation +because it is owned and maintained by Ted Satterthwaite and his team. +As such, while we do our best to keep ASLPrep in sync with fMRIPrep, differences may arise +due to choices by leadership or, more commonly, necessarily differential processing for different +modalities. There are several crucial differences between ASL and fMRI processing, which must be accounted for in ASLPrep: diff --git a/docs/license.rst b/docs/license.rst index 81ea776a0..5d9277a90 100644 --- a/docs/license.rst +++ b/docs/license.rst @@ -8,5 +8,5 @@ in the *ASLPrep* distribution. All trademarks referenced herein are property of their respective holders. -Copyright (c) 2019-2020, Azeez Adebimpe +Copyright (c) 2019-2023, PennLINC Developers All rights reserved. diff --git a/docs/links.rst b/docs/links.rst index 91e31d184..c85764037 100644 --- a/docs/links.rst +++ b/docs/links.rst @@ -1,8 +1,7 @@ .. _AFNI: https://afni.nimh.nih.gov/ .. _ANTs: https://stnava.github.io/ANTs/ .. _BIDS: http://bids.neuroimaging.io -.. _`BIDS Derivatives`: https://docs.google.com/document/d/17ebopupQxuRwp7U7TFvS6BH03ALJOgGHufxK8ToAvyI -.. _`BIDS Derivatives RC1`: https://docs.google.com/document/d/17ebopupQxuRwp7U7TFvS6BH03ALJOgGHufxK8ToAvyI +.. _`BIDS Derivatives`: https://bids-specification.readthedocs.io/en/stable/derivatives/introduction.html .. _`Connectome Workbench`: https://www.humanconnectome.org/software/connectome-workbench.html .. _Docker: https://www.docker.com/ .. _`Docker Engine`: https://www.docker.com/products/container-runtime diff --git a/docs/outputs.rst b/docs/outputs.rst index 8961670bd..e5a0e4a97 100644 --- a/docs/outputs.rst +++ b/docs/outputs.rst @@ -7,27 +7,74 @@ Outputs of *ASLPrep* *ASLPrep* generates three broad classes of outputs: 1. **Visual QA (quality assessment) reports**: - one :abbr:`HTML (hypertext markup language)` per subject, per session (if applicable), + one :abbr:`HTML (hypertext markup language)` per subject, that allows the user to conduct a thorough visual assessment of the raw and processed data. This also includes quality control measures. 2. **Derivatives (preprocessed data and computed CBF):** the input ASL data ready for - analysis, (e.g., after the various preparation procedures have been applied), - the brain mask, and ASL images after masking has been applied. Other outputs - include computed CBF maps and post-processed data such as denoised and partial + analysis, (i.e., after the various preparation procedures have been applied), + the brain mask, and ASL images after masking has been applied. + Other outputs include computed CBF maps and post-processed data such as denoised and partial volume-corrected CBF. -3. **Confounds and quality control metrics**: a confounds matrix that inlcudes framewise +3. **Confounds and quality control metrics**: a confounds matrix that includes framewise displacement, motion parameters, coregistration and registration quality indices, and CBF quality control metrics. +****** +Layout +****** + +Assuming ASLPrep is invoked with:: + + aslprep / / participant [OPTIONS] + +The outputs will be a `BIDS Derivatives`_ dataset of the form:: + + / + logs/ + sub-