Whatβs Newο
26.0.0 (April 20, 2026)ο
π Breaking Changesο
Bring packaging in line with NiPreps and adopt BIDS atlas organization by @tsalo in https://github.com/PennLINC/qsirecon/pull/367
π Bug Fixesο
Allow schemes to be classified as βunknownβ by @tsalo in https://github.com/PennLINC/qsirecon/pull/364
Replace np.complex with complex by @tsalo in https://github.com/PennLINC/qsirecon/pull/372
Change shutil.copy to shutil.copyfile by @tsalo in https://github.com/PennLINC/qsirecon/pull/373
Make
--recon-speca required argument by @tsalo in https://github.com/PennLINC/qsirecon/pull/375
Other Changesο
Migrate from flake8 + black + isort to ruff by @tsalo in https://github.com/PennLINC/qsirecon/pull/351
Address easy style issues by @tsalo in https://github.com/PennLINC/qsirecon/pull/352
Fix version string issue by @tsalo in https://github.com/PennLINC/qsirecon/pull/355
Add tox, pre-commit config, and dependabot by @tsalo in https://github.com/PennLINC/qsirecon/pull/353
Address Sphinx build issues by @tsalo in https://github.com/PennLINC/qsirecon/pull/366
Remove undefined
FSFAST_HOMEvariable by @tsalo in https://github.com/PennLINC/qsirecon/pull/376
Full Changelog: https://github.com/PennLINC/qsirecon/compare/1.2.0β¦26.0.0
1.2.0 (February 18, 2026)ο
π Breaking Changesο
Disable dkimicro/wmti in recon specs by @tsalo in https://github.com/PennLINC/qsirecon/pull/268
π Exciting New Featuresο
Calculate MD from TORTOISE tensor fits by @tsalo in https://github.com/PennLINC/qsirecon/pull/315
Raise error if atlases are not collected by @tsalo in https://github.com/PennLINC/qsirecon/pull/256
Add integer downsample option for MRtrix3 tckgen by @kjamison in https://github.com/PennLINC/qsirecon/pull/324
Add MSDKI option to DIPY_Reconstruction action by @tsalo in https://github.com/PennLINC/qsirecon/pull/269
Add missing GQI scalars by @tsalo in https://github.com/PennLINC/qsirecon/pull/326
Add pipeline description to boilerplate by @tsalo in https://github.com/PennLINC/qsirecon/pull/332
Add QSIRecon suffix to boilerplate sections and add boilerplates for smaller workflows by @tsalo in https://github.com/PennLINC/qsirecon/pull/331
Ingress response functions by @tsalo in https://github.com/PennLINC/qsirecon/pull/335
π Bug Fixesο
Account for Query.NONE session IDs in Freesurfer folder detection by @tsalo in https://github.com/PennLINC/qsirecon/pull/271
Add plot_reports param to failing interfaces by @tsalo in https://github.com/PennLINC/qsirecon/pull/286
Fix DSI Studio GQI connectivity by @araikes in https://github.com/PennLINC/qsirecon/pull/277
Fix bug in assignment of formatted LUTs for connectivity steps by @tsalo in https://github.com/PennLINC/qsirecon/pull/278
Fix parameter assignments in Dipy MAPMRI workflow and document params by @tsalo in https://github.com/PennLINC/qsirecon/pull/308
Make missing Freesurfer license error messages more informative by @tsalo in https://github.com/PennLINC/qsirecon/pull/261
Other Changesο
Fix workflow reference in builtin_workflows.rst by @appukuttan-shailesh in https://github.com/PennLINC/qsirecon/pull/285
Add unit metadata to some scalar maps by @tsalo in https://github.com/PennLINC/qsirecon/pull/247
Clean up the Bibtex file by @araikes in https://github.com/PennLINC/qsirecon/pull/290
Add scalar params to JSON files by @tsalo in https://github.com/PennLINC/qsirecon/pull/292
Add parameter metadata extracted from interfaces to boilerplate for tortoise by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/291
Add model metadata with description and URL reference for MAPMRI by @chiuhoward in https://github.com/PennLINC/qsirecon/pull/295
Add new available models pages to documentation by @singlesp in https://github.com/PennLINC/qsirecon/pull/306
Simplify the parameter metadata extraction for JSONs by @tsalo in https://github.com/PennLINC/qsirecon/pull/307
Add API documentation by @tsalo in https://github.com/PennLINC/qsirecon/pull/233
Document hardcoded DKI parameters in YAMLs by @cookpa in https://github.com/PennLINC/qsirecon/pull/302
Add detailed information about DTI to model page by @tien-tong in https://github.com/PennLINC/qsirecon/pull/310
Add DKI model page to docs by @singlesp in https://github.com/PennLINC/qsirecon/pull/309
Add parameter metadata extracted from interfaces to boilerplate for AMICO by @araikes in https://github.com/PennLINC/qsirecon/pull/299
Add GQI model page to docs by @singlesp in https://github.com/PennLINC/qsirecon/pull/311
Add MAP-MRI model page to docs by @tien-tong in https://github.com/PennLINC/qsirecon/pull/313
Add noddi model docs by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/325
Further model docs cleanup by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/327
Add BIDS metadata to SH fits from mrtrix by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/297
Make model page markup consistent by @tsalo in https://github.com/PennLINC/qsirecon/pull/329
DWI only fix by @smeisler in https://github.com/PennLINC/qsirecon/pull/209
Fix container image name in documentation by @hfxcarl in https://github.com/PennLINC/qsirecon/pull/197
Make ABCD recon spec built in by @smeisler in https://github.com/PennLINC/qsirecon/pull/344
Add AGENTS.md and cursor rules by @singlesp in https://github.com/PennLINC/qsirecon/pull/348
update to ubuntu22.04 by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/343
New Contributorsο
@appukuttan-shailesh made their first contribution in https://github.com/PennLINC/qsirecon/pull/285
@kjamison made their first contribution in https://github.com/PennLINC/qsirecon/pull/324
@hfxcarl made their first contribution in https://github.com/PennLINC/qsirecon/pull/197
Full Changelog: https://github.com/PennLINC/qsirecon/compare/1.1.1β¦1.2.0
1.1.1 (August 19, 2025)ο
This release fixes a major bug in QSIReconβs handling of multi-session and multi-run datasets. When processing multiple sessions or runs in a single QSIRecon call, the reconstruction workflow was being modified in place, such that the first session/run was processed correctly, but subsequent sessions/runs were processed with global default values. This bug primarily affected custom reconstruction workflows. The built-in workflows should be largely unaffected.
π Exciting New Featuresο
Parcellate scalars and write out brain mask by @tsalo in https://github.com/PennLINC/qsirecon/pull/251
Use deltas in DIPY interfaces by @tsalo in https://github.com/PennLINC/qsirecon/pull/259
π Bug Fixesο
Upgrade DIPY, pyAFQ by @36000 in https://github.com/PennLINC/qsirecon/pull/235
Fix handling of atlas labels with spaces and test custom atlas handling by @tsalo in https://github.com/PennLINC/qsirecon/pull/248
Remove background label from atlases before calculating connectivity by @tsalo in https://github.com/PennLINC/qsirecon/pull/249
Fix collection of longitudinal anatomical outputs by @tsalo in https://github.com/PennLINC/qsirecon/pull/253
Write out ACPC-space scalars from TORTOISE node if estimate_mapmri is False by @tsalo in https://github.com/PennLINC/qsirecon/pull/254
Prevent workflow spec dictionary from being modified in place during build process by @tsalo in https://github.com/PennLINC/qsirecon/pull/263
Other Changesο
Update boilerplate.bib for mrtrix reference by @chiuhoward in https://github.com/PennLINC/qsirecon/pull/239
Update descriptions of scalar map parameters by @tsalo in https://github.com/PennLINC/qsirecon/pull/225
Generate figure showing scalar maps by @tsalo in https://github.com/PennLINC/qsirecon/pull/246
Remove outdated admonition by @tsalo in https://github.com/PennLINC/qsirecon/pull/257
Add missing workflows to βwhich workflows are appropriateβ table by @tsalo in https://github.com/PennLINC/qsirecon/pull/258
Fix table borders by @tsalo in https://github.com/PennLINC/qsirecon/pull/260
Add unused
plot_reportsinput to_KurtosisReconstructionInputSpecby @tsalo in https://github.com/PennLINC/qsirecon/pull/262
New Contributorsο
@36000 made their first contribution in https://github.com/PennLINC/qsirecon/pull/235
Full Changelog: https://github.com/PennLINC/qsirecon/compare/1.1.0β¦1.1.1
1.1.0 (April 14, 2025)ο
π Exciting New Featuresο
Tissue fraction modulated ICVF and OD maps by @araikes in https://github.com/PennLINC/qsirecon/pull/218
Calculate kurtosis microstructure scalars with new
DKI_reconstructionparameter by @tsalo in https://github.com/PennLINC/qsirecon/pull/223
Other Changesο
Add
smoothingandotsu_thresholdautotrack arguments by @smeisler in https://github.com/PennLINC/qsirecon/pull/219Allow desc entity in recon scalar derivatives by @tsalo in https://github.com/PennLINC/qsirecon/pull/220
New Contributorsο
@araikes made their first contribution in https://github.com/PennLINC/qsirecon/pull/218
Full Changelog: https://github.com/PennLINC/qsirecon/compare/1.0.1β¦1.1.0
1.0.1 (March 12, 2025)ο
π Exciting New Featuresο
Add DSIQ5 extrapolation option by @tsalo in https://github.com/PennLINC/qsirecon/pull/214
π Bug Fixesο
Clip negative values in extrapolation interfaces by @tsalo in https://github.com/PennLINC/qsirecon/pull/213
Other Changesο
Fixes small docs typo: βscelarβ => βscalarβ by @arokem in https://github.com/PennLINC/qsirecon/pull/203
Fix FA description in DSIStudio outputs by @smeisler in https://github.com/PennLINC/qsirecon/pull/198
New Contributorsο
@arokem made their first contribution in https://github.com/PennLINC/qsirecon/pull/203
Full Changelog: https://github.com/PennLINC/qsirecon/compare/1.0.0β¦1.0.1
1.0.0 (March 11, 2025)ο
π Breaking Changesο
Rename QSIPrep to QSIRecon by @tsalo in https://github.com/PennLINC/qsirecon/pull/1
Start removing QSIPrep-specific code and documentation by @tsalo in https://github.com/PennLINC/qsirecon/pull/4
Remove QSIPrep-specific parameters and Config elements by @tsalo in https://github.com/PennLINC/qsirecon/pull/6
Drop Docker wrapper by @tsalo in https://github.com/PennLINC/qsirecon/pull/52
Restructure outputs into BIDS datasets by @tsalo in https://github.com/PennLINC/qsirecon/pull/66
Combine
mfpandmdpentities into singleparamentity by @tsalo in https://github.com/PennLINC/qsirecon/pull/72Replace
--recon-input-pipelinewith--input-typeby @tsalo in https://github.com/PennLINC/qsirecon/pull/68Remove unused
--longitudinalargument by @tsalo in https://github.com/PennLINC/qsirecon/pull/88Make all params and models lower-case by @tsalo in https://github.com/PennLINC/qsirecon/pull/90
Reorganize atlas management based on XCP-D and BIDS-Atlas by @tsalo in https://github.com/PennLINC/qsirecon/pull/123
Rename
--freesurfer-inputto--fs-subjects-dirby @tsalo in https://github.com/PennLINC/qsirecon/pull/152[ENH] Read session-specific anat data by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/151
Remove underscore versions of all parameters by @tsalo in https://github.com/PennLINC/qsirecon/pull/159
Make connectivity field names compatible with MATLAB by @tsalo in https://github.com/PennLINC/qsirecon/pull/166
π Exciting New Featuresο
Add ng, perng, parng, and mapcoeffs to Dipy MAPMRI outputs by @tsalo in https://github.com/PennLINC/qsirecon/pull/55
Add DatasetLinks to dataset_description.json by @tsalo in https://github.com/PennLINC/qsirecon/pull/77
Pass DWI file metadata to reconstruction workflows by @tsalo in https://github.com/PennLINC/qsirecon/pull/154
Add HBCD Release1 recon workflow by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/169
π Bug Fixesο
Write out QSIRecon pipeline-wise reports by @tsalo in https://github.com/PennLINC/qsirecon/pull/7
Write out reports to individual reconstruction derivative folders by @tsalo in https://github.com/PennLINC/qsirecon/pull/53
Add summary reportlets to HTML report by @tsalo in https://github.com/PennLINC/qsirecon/pull/61
Fix QSIRecon Entrypoint by @smeisler in https://github.com/PennLINC/qsirecon/pull/76
Use file lock to avoid concurrent edits to dataset_description.json by @cookpa in https://github.com/PennLINC/qsirecon/pull/91
Compress the tck files by @tsalo in https://github.com/PennLINC/qsirecon/pull/93
Add missing filename patterns by @tsalo in https://github.com/PennLINC/qsirecon/pull/131
Fix infant anatomical ingression by @tsalo in https://github.com/PennLINC/qsirecon/pull/126
Fix extension in ds_fs_5tt_hsvs by @tsalo in https://github.com/PennLINC/qsirecon/pull/165
Fix extension in ds_qsiprep_5tt_hsvs by @tsalo in https://github.com/PennLINC/qsirecon/pull/172
Fix space in ds_qsiprep_5tt_hsvs by @tsalo in https://github.com/PennLINC/qsirecon/pull/175
Make PlotPeaks robust enough that we donβt need βwritable-tempfs in singularity/apptainer by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/174
Other Changesο
Remove internal version of LiterateWorkflow by @tsalo in https://github.com/PennLINC/qsirecon/pull/8
Drop and modify infrastructure files by @tsalo in https://github.com/PennLINC/qsirecon/pull/40
Remove QSIPrep-specific tests by @tsalo in https://github.com/PennLINC/qsirecon/pull/5
Drop unused modules, classes, and functions by @tsalo in https://github.com/PennLINC/qsirecon/pull/11
[CI] Speed up pyafq test by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/57
[DOCS] Reorganize documentation by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/56
Collect templates from TemplateFlow instead of package data by @tsalo in https://github.com/PennLINC/qsirecon/pull/49
Remove unused data files by @tsalo in https://github.com/PennLINC/qsirecon/pull/63
Replace hyperlinks with BibTeX references by @tsalo in https://github.com/PennLINC/qsirecon/pull/67
[DOCS] Add scalar tables by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/80
Move scalar file configs to YAMLs and use a recon scalar workflow by @tsalo in https://github.com/PennLINC/qsirecon/pull/79
[WIP] Make a system for keeping docs and file names in sync by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/86
Convert pipeline configs from JSON to YAML by @tsalo in https://github.com/PennLINC/qsirecon/pull/84
[DOCS] clean up by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/101
Draft pre-init ingression by @tsalo in https://github.com/PennLINC/qsirecon/pull/102
[ENH] Update AMICO by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/115
[FIX] mif2fib by @ameliecr in https://github.com/PennLINC/qsirecon/pull/116
Fix how bundles to be tracked are selected for DSIstudio autotrack by @ameliecr in https://github.com/PennLINC/qsirecon/pull/121
[FIX] workflow connection in dsi_studio_gqi by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/142
[CI] add hsvs test by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/136
[FIX] dsi_studio_gqi workflow connect by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/146
[DOC] Minor addition for skipping connectivity matrices step by @chiuhoward in https://github.com/PennLINC/qsirecon/pull/150
Add page documenting output structure by @tsalo in https://github.com/PennLINC/qsirecon/pull/156
Add information about QSIPrep/QSIRecon releases by @tsalo in https://github.com/PennLINC/qsirecon/pull/158
[CI] Add tests for reading pre-1.0 outputs from qsiprep by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/155
[ENH] Support outputs from qsiprep 1.0.0rc0 by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/160
[FIX] get rid of logging error #145 by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/161
Add UKB ingression by @smeisler in https://github.com/PennLINC/qsirecon/pull/147
[FIX] set TMPDIR before running plot_peaks by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/163
[ENH] match to qsiprep nipype/nireports versions by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/167
Add in Valβs text for connectivity matrices by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/173
Disable test_main in the CI integration tests by @mattcieslak in https://github.com/PennLINC/qsirecon/pull/177
New Contributorsο
@tsalo made their first contribution in https://github.com/PennLINC/qsirecon/pull/1
@mattcieslak made their first contribution in https://github.com/PennLINC/qsirecon/pull/57
@cookpa made their first contribution in https://github.com/PennLINC/qsirecon/pull/91
@dependabot made their first contribution in https://github.com/PennLINC/qsirecon/pull/100
@ameliecr made their first contribution in https://github.com/PennLINC/qsirecon/pull/116
@chiuhoward made their first contribution in https://github.com/PennLINC/qsirecon/pull/150
Full Changelog: https://github.com/PennLINC/qsirecon/commits/1.0.0