Skip to content

clpipe v1.7.0

Compare
Choose a tag to compare
@wasciutto wasciutto released this 16 Nov 21:44
· 944 commits to master since this release

CLI Updates

clpipe's subcommands have been reorganized / renamed to make them (hopefully) more intuitive. Please note that the original commands (e.g. project_setup, convert2bids, etc.) still remain and probably wouldn't be removed without several versions containing deprecation warnings, perhaps in prelude to clpipe 2.0.0

  • ordering of main clpipe menu now reflects order of processing steps (e.g. setup, bids, preprocess, postprocess)
  • ordering of glm sub-menu now reflects order of processing steps (e.g. setup, fsl_onset_extract, l1_prepare_fsf, etc.)
  • clpipe sub-commands "convert2bids" and "bids_validate" are now part of the clpipe sub-command "bids" as "convert" and "validate," respectively
  • clpipe sub-command "fmriprep_process" renamed to "preprocess" to generalize the step
  • clpipe sub-command "project_setup" shortened to "setup"
  • clpipe sub-command "apply_mumford_workaround" shortened to "apply_mumford"
Usage: clpipe [OPTIONS] COMMAND [ARGS]...

  Welcome to clpipe. Please choose a processing command.

Options:
  -v, --version  Display clpipe's version.
  --help         Show this message and exit.

Commands:
  setup         Set up a clpipe project
  bids          BIDS Commands
  preprocess    Submit BIDS-formatted images to fMRIPrep
  postprocess   Additional preprocessing for connectivity analysis
  postprocess2  Perform additional processing on fMRIPrepped data
  glm           GLM Commands
  status        Check the status of your project
Usage: clpipe glm [OPTIONS] COMMAND [ARGS]...

  GLM Commands

Options:
  --help  Show this message and exit.

Commands:
  setup              Prepare task images and confound files for GLM analysis
  fsl_onset_extract  Convert onset files to FSL's 3 column format
  l1_prepare_fsf     Propagate an .fsf file template for L1 GLM analysis
  launch             Launch all prepared .fsf files for L1 or L2 GLM...
  apply_mumford      Apply the Mumford registration workaround to L1 FEAT...
  l2_prepare_fsf     Propagate an .fsf file template for L2 GLM analysis
  report_outliers    Generate a confound outliers report.

Return of Heudiconv

Heudiconv has returned to clpipe as an alternative to dcm2bids for handling more complicated BIDS conversions that cannot be adequately handled with a conversion_config.json file.

It is accessed through the same command as dcm2bids, clpipe bids convert

Example (note the abbreviate forms of -config_file and submit to -c and -s, respectively):

clpipe bids convert -heudiconv -c path/to/my/config.json -s

The heuristic.py file is given in the same place that your conversion_config file would go in the DICOMToBIDSOptions:

"DICOMToBIDSOptions": {
		...
		"ConversionConfig": "/path/to/project/heuristic.py",
		...

Update to Python 3.7

To support heudiconv v11, an update to Python > 3.7 was necessary. This is also the recommended minimum version for nypipe, a large dependency of clpipe.

Misc Updates

bids convert

  • Fix a bug where values in the configuration file were being updated with values given in the CLI options
  • Command now takes multiple subjects as arguments instead of the previous -subject option. The -subject option now warns users that they can use subject arguments. This brings its functionality in line with how the postprocessing scripts handle subjects.
clpipe bids convert 111 222 -config_file /path/to/project/clpipe_config.json -submit

glm apply_mumford

  • Automatically create reg folder if it doesn't exist (such as when you don't use FEAT for preprocessing)
  • Added debug option
  • Increased verbosity of outputs

glm l1_prepare_fsf

  • Added additional outputs
  • No longer eats uncaught errors when not in debug mode

postproc2

  • Cleaned up folder organization of log files for distributed tasks
  • Defer creation of folders until necessary, to prevent empty folders from being created when an error occurs before processing starts
  • "Debug" option now propagates down to distributed jobs
  • ApplyAROMA implementation "fsl_regfilt_R" is now platform independent (previously the R package installation path was hard-coded to work with UNC longleaf)

Other

  • Fix a bug in bids validate where the submission message was double printed
  • Added output messages / logging to project setup command
  • Updated documentation to use auto-generated click CLI documentation
  • Added documentation page for unified CLI
  • Add a simple bash build script