Releases: HALFpipe/HALFpipe
Releases · HALFpipe/HALFpipe
1.2.2
Bug fixes
- Fix issue with BOLD to T1w registration (#230, #238, #239)
- Also detect
exclude.json
files that are placed in thereports/
folder (#228) - Improve error message when the FreeSurfer license file is missing (#231)
- Fix a rare calculation error for
fd_mean
and related image quality metrics (#237, #241) - Fix various warning messages (#247)
- Fix performance issue when collecting inputs for group statistics ()
- Fix a user interface issue where the option
Start over after models
was missing (#259, #260) - Fix an issue where
sub-
prefixes were not recognized correctly when filtering inputs for group statistics (#264) - Fix an issue when writing mixed data type columns to the text files in the
reports/
folder (#274) - Fix warnings for missing quality check information (#276)
- Fix errors when aggregating subjects with different numbers of scans during group statistics (#280)
- Fix error when fMRIPrep skips a BOLD file (#285)
Maintenance
1.2.1
Bug fixes
- Fix issues that occurred after re-scaling
fd_perc
to be percent (#217) - Catch error when
NaN
values occur within the linear algebra code (#215) - Reduce memory usage when running large workflows by only loading the
chunks that will be necessary for the current process (#216) - Improve memory usage prediction for cluster submission scripts (#219)
- Update metadata module with better log messages (#220)
1.2.0
New features and enhancements
- Improve the assignment of field maps to functional scans, print
warnings when detecting an incomplete field map or when a complete
field map is not recognized by fMRIPrep (#115 and #192) - Remove conditions that have no events from the task-based model. This
is important for designs where the conditions depend on subject
performance (#90) - Output additional images during group mode. Voxel-wise descriptive
statistics (#142), typical subject-level variance (#148) - Divide outputs into subfolders to make navigating the files easier
- Output metadata to sidecar files, including resolution, field-of-view
and field map type (#154 and #181) - Add an option to skip dummy/non-steady-state scans and modify event
onsets accordingly (#167, #176, #182 and #187) - Improve performance during workflow creation (#192)
Bug fixes
- Update
fMRIPrep
to fix normalization bug (#51) - Improve memory usage prediction. Fixes
BrokenProcessPool
and
Killed: 137
errors (#125, #156 and #157) - Refactor
Dockerfile
to correctly re-buildmatplotlib
caches
(#107) - Fix assignment of event files to functional scans. Make sure that the
assignment is consistent between what is shown in the user interface
and during workflow creation. Add unit tests (#139) - Fix crashes for datasets deviating from the
BIDS
specification
and remove misleading warnings for incompatible and hidden files - Fix
AssertionError
crash when no group model is specified - Rephrase user interface for loading
.mat
event files. Do not say
that the time unit (seconds or scans) is missing, which was
confusing. - Fix various crashes when running on a cluster
- Fix user interface crash when no categorical variables are defined in
a spreadsheet - Fix loading subject-level results during group model. Get rid of
LoadResult
nodes, instead use a subclass ofNode
(#137) - Use slower but more robust least-squares solve for group statistics
(#141) - Fix performance issue during
t2z_convert
procedure during group
statistics (#143, #144 and #145) - Remove output from heterogeneity group statistics that was causing
performance issues (#146) - Fix confusing
EOFError
message on exit by gracefully stopping
child processes before exit (#130 and #160) - Fix running FreeSurfer with
run_reconall
option (#87) - Add error message when running on an unsupported file system such as
FAT
(#102) - Fix confusing error message when no features are specified (#147)
- Re-scale
fd_perc
output to percent (#186) - Reduce user interface memory usage (#191)
- Fix automated testing hanging on the logging worker (#192)
Maintenance
- Update Python to version 3.8
- Update
templateflow
,pybids
,nibabel
- Pin
dipy
version due to incompatibility withnipype
- Pin
indexed_gzip
version due to incompatibility of newer version
with some files (#85) - Add new Singularity container build workflow (#97 and #138)
- Improve documentation to suggest running Singularity with
--containall
instead of--no-home --cleanenv
- Refactor code to use
defaultdict
to increase readability - Add more type hints
- Rename main branch from
master
tomain
- Add
pre-commit
andpip-tools
to better manage dependencies - Install as many dependencies as possible via
conda
and the rest
viapip
(#164) - Refactor workflow code to allow handling of surface-based functional
images (#161) - In-progress refactor
model
package intoschema
package. Use
dataclasses
for better integration with type checkers (#173, #174
and #178)
1.2.0rc2
1.2.0rc2
1.2.0rc1
1.2.0rc1
1.1.1
Enhancements
- Add user interface checks for slice timing so that errors in configuration can be detected before running
- Reduce memory usage
Bug fixes
- Fix using curly brackets in a tag regex, for example
/data/{subject:[0-9]{5}}.nii.gz
- Fix disabling the high pass filter for task-based feature extraction
- Fix performance issue with importing large BIDS datasets that contain field maps
- Fix matplotlib error (#107)
- Fix performance issue for large datasets (#105)
1.1.0
With many thanks to @jstaph for contributions
New features and enhancements
- Create high-performance computing cluster submission scripts for Torque/PBS
and SGE cluster as well (#71) - Calculate additional statistics such as heterogeneity
(https://doi.org/fzx69f) and a test that data is
missing-completely-at-random via logistic regression (#67) - Always enable ICA-AROMA even when its outputs are not required for feature
extraction so that its report image is always available for quality assessment
(#75) - Support loading presets or plugins that may make it easier to do harmonized
analyses across many sites (#8) - Support adding derivatives of the HRF to task-based GLM design matrices
- Support detecting the amount of available memory when running as a cluster
job, or when running as a container with a memory limit such as when using
Docker on Mac
Maintenance
- Add type hints to code. This allows a type checker like
pyright
to suggest
possible error sources ahead of time, making programming more efficient - Add
openpyxl
andxlsxwriter
dependencies to support reading/writing Excel
XLSX files - Update
numpy
,scipy
andnilearn
versions - Add additional automated tests
Bug fixes
- Fix importing slice timing information from a file after going back to the
prompt via undo (#55) - Fix a warning when loading task event timings from a MAT-file.
NiftiheaderLoader tried to load metadata for it like it would for a NIfTI file
(#56) - Fix
numpy
array broadcasting error when loading data from 3D NIfTI files
that have been somehow marked as being four-dimensional - Fix misunderstanding of the output value
resels
of FSL'ssmoothest
command. The value refers to the size of a resel, not the number of them in
the image. The helper function_critical_z
now taked this into account now.
(nipy/nipype#3316) - Fix naming of output files in
derivatives/halfpipe
andgrouplevel
folder
so that capitalization is consistent with original IDs and names (#57) - Fix the summary display after
BIDS
import to show the number of "subjects"
and not the number of "subs" - Fix getting the required metadata fields for an image type by implementing a
helper function - Fix outputting source files for the quality check web app (#62)
- Fix assigning field maps to specific functional images, which is done by a
mapping between field map taks and functional image tags. The mapping is
automatically inferred for BIDS datasets and manually specified otherwise
(#66) - Force re-calculation of
nipype
workflows afterHALFpipe
update so that
changes from the new version are applied in existing working directories as
well - Do not fail task-based feature extraction if no events are available for a
particular condition for a particular subject (#58) - Force using a recent version of the
indexed_gzip
dependency to avoid error
(#85) - Improve loading delimited data in
loadspreadsheet
function - Fix slice timing calculation in user interface
1.1.0rc1
-
Performance improvements for large datasets
-
Improve running on SGE and Torque/PBS clusters
-
Bug fixes
-
Does not fail even when events are missing for a condition for a participant
-
Check missing-completely-at-random assumption via logistic regression at group level
1.0.1
Release 1.0.1
1.0.0
Merge pull request #42 from HippocampusGirl/rel/1.0.0 Make release 1.0