Home · Quickstart · Documentation · Citation · NiPy

# Changes in Nipype

## Release 0.11.0 (September 15, 2015)

- API: Change how hash values are computed (https://github.com/nipy/nipype/pull/1174)

- ENH: New algorithm: mesh.WarpPoints applies displacements fields to point sets

    (https://github.com/nipy/nipype/pull/889).

- ENH: New interfaces for MRTrix3 (https://github.com/nipy/nipype/pull/1126)

- ENH: New option in afni.3dRefit - zdel, ydel, zdel etc. (https://github.com/nipy/nipype/pull/1079)

- FIX: ants.Registration composite transform outputs are no longer returned as lists (https://github.com/nipy/nipype/pull/1183)

- BUG: ANTs Registration interface failed with multi-modal inputs

    (https://github.com/nipy/nipype/pull/1176) (https://github.com/nipy/nipype/issues/1175)

- ENH: dipy.TrackDensityMap interface now accepts a reference image (https://github.com/nipy/nipype/pull/1091)

- FIX: Bug in XFibres5 (https://github.com/nipy/nipype/pull/1168)

- ENH: Attempt to use hard links for data sink.

    (https://github.com/nipy/nipype/pull/1161)

- FIX: Updates to SGE Plugins

    (https://github.com/nipy/nipype/pull/1129)

- ENH: Add ants JointFusion() node with testing

    (https://github.com/nipy/nipype/pull/1160)

- ENH: Add –float option for antsRegistration calls

    (https://github.com/nipy/nipype/pull/1159)

- ENH: Added interface to simulate DWIs using the multi-tensor model

    (https://github.com/nipy/nipype/pull/1085)

- ENH: New interface for FSL fslcpgeom utility (https://github.com/nipy/nipype/pull/1152)

- ENH: Added SLURMGraph plugin for submitting jobs to SLURM with dependencies (https://github.com/nipy/nipype/pull/1136)

- FIX: Enable absolute path definitions in DCMStack (https://github.com/nipy/nipype/pull/1089,

    replaced by https://github.com/nipy/nipype/pull/1093)

- ENH: New mesh.MeshWarpMaths to operate on surface-defined warpings

    (https://github.com/nipy/nipype/pull/1016)

- FIX: Refactor P2PDistance, change name to ComputeMeshWarp, add regression tests,

    fix bug in area weighted distance, and added optimizations (https://github.com/nipy/nipype/pull/1016)

- ENH: Add an option not to resubmit Nodes that finished running when using SGEGraph (https://github.com/nipy/nipype/pull/1002)

- FIX: FUGUE is now properly listing outputs. (https://github.com/nipy/nipype/pull/978)

- ENH: Improved FieldMap-Based (FMB) workflow for correction of susceptibility distortions in EPI seqs.

    (https://github.com/nipy/nipype/pull/1019)

- FIX: In the FSLXcommand _list_outputs function fixed for loop range (https://github.com/nipy/nipype/pull/1071)

- ENH: Dropped support for now 7 years old Python 2.6 (https://github.com/nipy/nipype/pull/1069)

- FIX: terminal_output is not mandatory anymore (https://github.com/nipy/nipype/pull/1070)

- ENH: Added “nipype_cmd” tool for running interfaces from the command line (https://github.com/nipy/nipype/pull/795)

- FIX: Fixed Camino output naming (https://github.com/nipy/nipype/pull/1061)

- ENH: Add the average distance to ErrorMap (https://github.com/nipy/nipype/pull/1039)

- ENH: Inputs with name_source can be now chained in cascade (https://github.com/nipy/nipype/pull/938)

- ENH: Improve JSON interfaces: default settings when reading and consistent output creation

    when writing (https://github.com/nipy/nipype/pull/1047)

- FIX: AddCSVRow problems when using infields (https://github.com/nipy/nipype/pull/1028)

- FIX: Removed unused ANTS registration flag (https://github.com/nipy/nipype/pull/999)

- FIX: Amend create_tbss_non_fa() workflow to match FSL’s tbss_non_fa command. (https://github.com/nipy/nipype/pull/1033)

- FIX: remove unused mandatory flag from spm normalize (https://github.com/nipy/nipype/pull/1048)

- ENH: Update ANTSCorticalThickness interface (https://github.com/nipy/nipype/pull/1013)

- FIX: Edge case with sparsemodels and PEP8 cleanup (https://github.com/nipy/nipype/pull/1046)

- ENH: New io interfaces for JSON files reading/writing (https://github.com/nipy/nipype/pull/1020)

- ENH: Enhanced openfmri script to support freesurfer linkage (https://github.com/nipy/nipype/pull/1037)

- BUG: matplotlib is supposed to be optional (https://github.com/nipy/nipype/pull/1003)

- FIX: Fix split_filename behaviour when path has no file component (https://github.com/nipy/nipype/pull/1035)

- ENH: Updated FSL dtifit to include option for grad non-linearities (https://github.com/nipy/nipype/pull/1032)

- ENH: Updated Camino tracking interfaces, which can now use FSL bedpostx output.

    New options also include choice of tracker, interpolator, stepsize and curveinterval for angle threshold (https://github.com/nipy/nipype/pull/1029)

- FIX: Interfaces redirecting X crashed if $DISPLAY not defined (https://github.com/nipy/nipype/pull/1027)

- FIX: Bug crashed ‘make api’ (https://github.com/nipy/nipype/pull/1026)

- ENH: Updated antsIntroduction to handle RA and RI registrations (https://github.com/nipy/nipype/pull/1009)

- ENH: Updated N4BiasCorrection input spec to include weight image and spline order. Made

    argument formatting consistent. Cleaned ants.segmentation according to PEP8. (https://github.com/nipy/nipype/pull/990/files)

- ENH: SPM12 Normalize interface (https://github.com/nipy/nipype/pull/986)

- FIX: Utility interface test dir (https://github.com/nipy/nipype/pull/986)

- FIX: IPython engine directory reset after crash (https://github.com/nipy/nipype/pull/987)

- ENH: Resting state fMRI example with NiPy realignment and no SPM (https://github.com/nipy/nipype/pull/992)

- FIX: Corrected Freesurfer SegStats _list_outputs to avoid error if summary_file is

    undefined (issue #994)(https://https://github.com/nipy/nipype/pull/996)

- FIX: OpenfMRI support and FSL 5.0.7 changes (https://github.com/nipy/nipype/pull/1006)

- FIX: Output prefix in SPM Normalize with modulation (https://github.com/nipy/nipype/pull/1023)

- ENH: Usability improvements in cluster environments (https://github.com/nipy/nipype/pull/1025)

- ENH: ANTs JointFusion() (https://github.com/nipy/nipype/pull/1042)

- ENH: Added csvReader() utility (https://github.com/nipy/nipype/pull/1044)

- FIX: typo in nipype.interfaces.freesurfer.utils.py Tkregister2 (https://github.com/nipy/nipype/pull/1083)

- FIX: SSHDataGrabber outputs now return full path to the grabbed/downloaded files. (https://github.com/nipy/nipype/pull/1086)

- FIX: Add QA output for TSNR to resting workflow (https://github.com/nipy/nipype/pull/1088)

- FIX: Change N4BiasFieldCorrection to use short tag for dimensionality (backward compatible) (https://github.com/nipy/nipype/pull/1096)

- ENH: Added -newgrid input to Warp in AFNI (3dWarp wrapper) (https://github.com/nipy/nipype/pull/1128)

- FIX: Fixed AFNI Copy interface to use positional inputs as required (https://github.com/nipy/nipype/pull/1131)

- ENH: Added a check in Dcm2nii to check if nipype created the config.ini file and remove if true (https://github.com/nipy/nipype/pull/1132)

- ENH: Use a while loop to wait for Xvfb (up to a max wait time “xvfb_max_wait” in config file, default 10)

    (https://github.com/nipy/nipype/pull/1142)

## Release 0.10.0 (October 10, 2014)

- ENH: New miscelaneous interfaces: SplitROIs (mapper), MergeROIs (reducer)

    to enable parallel processing of very large images.

- ENH: Updated FSL interfaces: BEDPOSTX and XFibres, former interfaces are still

    available with the version suffix: BEDPOSTX4 and XFibres4. Added gpu versions of BEDPOSTX: BEDPOSTXGPU, BEDPOSTX5GPU, and BEDPOSTX4GPU

- ENH: Added experimental support for MIPAV algorithms thorugh JIST plugins

- ENH: New dipy interfaces: Denoise, Resample

- ENH: New Freesurfer interfaces: Tkregister2 (for conversion of fsl style matrices to freesurfer format), MRIPretess

- ENH: New FSL interfaces: WarpPoints, WarpPointsToStd, EpiReg, ProbTrackX2, WarpUtils, ConvertWarp

- ENH: New miscelaneous interfaces: AddCSVRow, NormalizeProbabilityMapSet, AddNoise

- ENH: New AFNI interfaces: Eval, Means, SVMTest, SVMTrain

- ENH: FUGUE interface has been refactored to use the name_template system, 3 examples

    added to doctests, some bugs solved.

- API: Interfaces to external packages are no longer available in the top-level

    `nipype` namespace, and must be imported directly (e.g. `from nipype.interfaces import fsl`).

- ENH: Support for elastix via a set of new interfaces: Registration, ApplyWarp,

    AnalyzeWarp, PointsWarp, and EditTransform

- ENH: New ANTs interface: ApplyTransformsToPoints, LaplacianThickness

- ENH: New Diffusion Toolkit interface: TrackMerge

- ENH: New MRtrix interface: FilterTracks

- ENH: New metrics group in algorithms. Now Distance, Overlap, and FuzzyOverlap

    are found in nipype.algorithms.metrics instead of misc. Overlap interface extended to allow files containing multiple ROIs and volume physical units.

- ENH: New interface in algorithms.metrics: ErrorMap (a voxel-wise diff map).

- ENH: New FreeSurfer workflow: create_skullstripped_recon_flow()

- ENH: Deep revision of workflows for correction of dMRI artifacts. New dmri_preprocessing

    example.

- ENH: New data grabbing interface that works over SSH connections, SSHDataGrabber

- ENH: New color mode for write_graph

- ENH: You can now force MapNodes to be run serially

- ENH: Added ANTS based openfmri workflow

- ENH: MapNode now supports flattening of nested lists

- ENH: Support for headless mode using Xvfb

- ENH: nipype_display_crash has a debugging mode

- FIX: MRTrix tracking algorithms were ignoring mask parameters.

- FIX: FNIRT registration pathway and associated OpenFMRI example script

- FIX: spm12b compatibility for Model estimate

- FIX: Batch scheduler controls the number of maximum jobs properly

- FIX: Update for FSL 5.0.7 which deprecated Contrast Manager

## Release 0.9.2 (January 31, 2014)

- FIX: DataFinder was broken due to a typo
- FIX: Order of DataFinder outputs was not guaranteed, it’s human sorted now
- ENH: New interfaces: Vnifti2Image, VtoMat

## Release 0.9.1 (December 25, 2013)

- FIX: installation issues

## Release 0.9.0 (December 20, 2013)

- ENH: SelectFiles: a streamlined version of DataGrabber

- ENH: new tools for defining workflows: JoinNode, synchronize and itersource

- ENH: W3C PROV support with optional RDF export built into Nipype

- ENH: Added support for Simple Linux Utility Resource Management (SLURM)

- ENH: AFNI interfaces refactor, prefix, suffix are replaced by

    “flexible_%s_templates”

- ENH: New SPM interfaces:
    - spm.ResliceToReference,
    - spm.DicomImport
- ENH: New AFNI interfaces:
    - afni.AFNItoNIFTI
    - afni.TCorr1D
- ENH: Several new interfaces related to Camino were added:
    - camino.SFPICOCalibData
    - camino.Conmat
    - camino.QBallMX
    - camino.LinRecon
    - camino.SFPeaks

    One outdated interface no longer part of Camino was removed: - camino.Conmap

- ENH: Three new mrtrix interfaces were added:
    - mrtrix.GenerateDirections
    - mrtrix.FindShPeaks
    - mrtrix.Directions2Amplitude
- ENH: New FSL interfaces:
    - fsl.PrepareFieldmap
    - fsl.TOPUP
    - fsl.ApplyTOPUP
    - fsl.Eddy
- ENH: New misc interfaces:
    - FuzzyOverlap,
    - P2PDistance

- ENH: New workflows: nipype.workflows.dmri.fsl.epi.[fieldmap_correction&topup_correction]

- ENH: Added simplified outputname generation for command line interfaces.

- ENH: Allow ants use a single mask image

- ENH: Create configuration option for parameterizing directories with hashes

- ENH: arrange nodes by topological sort with disconnected subgraphs

- ENH: uses the nidm iri namespace for uuids

- ENH: remove old reporting webpage

- ENH: Added support for Vagrant

- API: ‘name’ is now a positional argument for Workflow, Node, and MapNode constructors

- API: SPM now defaults to SPM8 or SPM12b job format

- API: DataGrabber and SelectFiles use human (or natural) sort now

- FIX: Several fixes related to Camino interfaces:
    - ProcStreamlines would ignore many arguments silently (target, waypoint, exclusion ROIS, etc.)
    - DTLUTGen would silently round the “step”, “snr” and “trace” parameters to integers
    - PicoPDFs would not accept more than one lookup table
    - PicoPDFs default pdf did not correspond to Camino default
    - Track input model names were outdated (and would generate an error)
    - Track numpds parameter could not be set for deterministic tractography
    - FA created output files with erroneous extension

- FIX: Deals properly with 3d files in SPM Realign

- FIX: SPM with MCR fixed

- FIX: Cleaned up input and output spec metadata

- FIX: example openfmri script now makes the contrast spec a hashed input

- FIX: FILMGLS compatibility with FSL 5.0.5

- FIX: Freesurfer recon-all resume now avoids setting inputs

- FIX: File removal from node respects file associations img/hdr/mat, BRIK/HEAD

## Release 0.8.0 (May 8, 2013)

- ENH: New interfaces: nipy.Trim, fsl.GLM, fsl.SigLoss, spm.VBMSegment, fsl.InvWarp,

    dipy.TensorMode

- ENH: Allow control over terminal output for commandline interfaces

- ENH: Added preliminary support for generating Python code from Workflows.

- ENH: New workflows for dMRI and fMRI pre-processing: added motion artifact correction

    with rotation of the B-matrix, and susceptibility correction for EPI imaging using fieldmaps. Updated eddy_correct pipeline to support both dMRI and fMRI, and new parameters.

- ENH: Minor improvements to FSL’s FUGUE and FLIRT interfaces

- ENH: Added optional dilation of parcels in cmtk.Parcellate

- ENH: Interpolation mode added to afni.Resample

- ENH: Function interface can accept a list of strings containing import statements

    that allow external functions to run without their imports defined in the function body

- ENH: Allow node configurations to override master configuration

- FIX: SpecifyModel works with 3D files correctly now.

## Release 0.7.0 (Dec 18, 2012)

- ENH: Add basic support for LSF plugin.

- ENH: New interfaces: ICC, Meshfix, ants.Register, C3dAffineTool, ants.JacobianDeterminant,

    afni.AutoTcorrelate, DcmStack

- ENH: New workflows: ants template building (both using ‘ANTS’ and the new ‘antsRegistration’)

- ENH: New examples: how to use ANTS template building workflows (smri_ants_build_tmeplate),

    how to set SGE specific options (smri_ants_build_template_new)

- ENH: added no_flatten option to Merge

- ENH: added versioning option and checking to traits

- ENH: added deprecation metadata to traits

- ENH: Slicer interfaces were updated to version 4.1

## Release 0.6.0 (Jun 30, 2012)

- API: display variable no longer encoded as inputs in commandline interfaces

- ENH: input hash not modified when environment DISPLAY is changed

- ENH: support for 3d files for TSNR calculation

- ENH: Preliminary support for graph submission with SGE, PBS and Soma Workflow

- ENH: New interfaces: MySQLSink, nipy.Similarity, WatershedBEM, MRIsSmooth,

    NetworkBasedStatistic, Atropos, N4BiasFieldCorrection, ApplyTransforms, fs.MakeAverageSubject, epidewarp.fsl, WarpTimeSeriesImageMultiTransform, AVScale, mri_ms_LDA

- ENH: simple interfaces for spm

- FIX: CompCor component calculation was erroneous

- FIX: filename generation for AFNI and PRELUDE

- FIX: improved slicer module autogeneration

- FIX: added missing options for BBRegsiter

- FIX: functionality of remove_unnecessary_ouputs cleaned up

- FIX: local hash check works with appropriate inputs

- FIX: Captures all stdout from commandline programs

- FIX: Afni outputs should inherit from TraitedSpec

## Release 0.5.3 (Mar 23, 2012)

- FIX: SPM model generation when output units is in scans

## Release 0.5.2 (Mar 14, 2012)

- API: Node now allows specifying node level configuration for SGE/PBS clusters
- API: Logging to file is disabled by default
- API: New location of log file -> .nipype/nipype.cfg
- ENH: Changing logging options via config works for distributed processing
- FIX: Unittests on debian (logging and ipython)

## Release 0.5 (Mar 10, 2012)

- API: FSL defaults to Nifti when OUTPUTTYPE environment variable not found

- API: By default inputs are removed from Node working directory

- API: InterfaceResult class is now versioned and stores class type not instance

- API: Added FIRST interface

- API: Added max_jobs paramter to plugin_args. limits the number of jobs

    executing at any given point in time

- API: crashdump_dir is now a config execution option

- API: new config execution options for controlling hash checking, execution and

    logging behavior when running in distributed mode.

- API: Node/MapNode has new attribute that allows it to run on master thread.

- API: IPython plugin now invokes IPython 0.11 or greater

- API: Canned workflows are now all under a different package structure

- API: SpecifyModel event_info renamed to event_files

- API: DataGrabber is always being rerun (unless overwrite is set to False on

    Node level)

- API: “stop_on_first_rerun” does not stop for DataGrabber (unless overwrite is

    set to True on Node level)

- API: Output prefix can be set for spm nodes (SliceTiming, Realign, Coregister,

    Normalize, Smooth)

- ENH: Added fsl resting state workflow based on behzadi 2007 CompCorr method.

- ENH: TSNR node produces mean and std-dev maps; allows polynomial detrending

- ENH: IdentityNodes are removed prior to execution

- ENH: Added Michael Notter’s beginner’s guide

- ENH: Added engine support for status callback functions

- ENH: SPM create warped node

- ENH: All underlying interfaces (including python ones) are now optional

- ENH: Added imperative programming option with Nodes and caching

- ENH: Added debug mode to configuration

- ENH: Results can be stored and loaded without traits exceptions

- ENH: Added concurrent log handler for distributed writing to log file

- ENH: Reporting can be turned off using config

- ENH: Added stats files to FreeSurferOutput

- ENH: Support for Condor through qsub emulation

- ENH: IdentityNode with iterable expansion takes place after remaining Identity

    Node removal

- ENH: Crashfile display script added

- ENH: Added FmriRealign4d node wrapped from nipy

- ENH: Added TBSS workflows and examples

- ENH: Support for openfmri data processing

- ENH: Package version check

- FIX: Fixed spm preproc workflow to cater to multiple functional runs

- FIX: Workflow outputs displays nodes with empty outputs

- FIX: SUSAN workflow works without usans

- FIX: SGE fixed for reading custom templates

- FIX: warping in SPM realign, Dartel and interpolation parameters

- FIX: Fixed voxel size parameter in freesurfer mri_convert

- FIX: 4D images in spm coregister

- FIX: Works around matlab tty bug

- FIX: Overwriting connection raises exception

- FIX: Outputs are loaded from results and not stored in memory for during

    distributed operation

- FIX: SPM threshold uses SPM.mat name and improved error detection

- FIX: Removing directory contents works even when a node has no outputs

- FIX: DARTEL workflows will run only when SPM 8 is available

- FIX: SPM Normalize estimate field fixed

- FIX: hashmethod argument now used for calculating hash of old file

- FIX: Modelgen now allows FSL style event files

## Release 0.4.1 (Jun 16, 2011)

- Minor bugfixes

## Release 0.4 (Jun 11, 2011)

- API: Timestamp hashing does not use ctime anymore. Please update your hashes by

    running workflows with updatehash=True option NOTE: THIS IS THE DEFAULT CONFIG NOW, so unless you updatehash, workflows will rerun

- API: Workflow run function no longer supports (inseries, createdirsonly).

    Functions used in connect string must be pickleable

- API: SPM EstimateContrast: ignore_derivs replaced by use_derivs

- API: All interfaces: added new config option ignore_exception

- API: SpecifModel no longer supports (concatenate_runs, output_specs). high_pass_filter

    cutoff is mandatory (even if its set to np.inf). Additional interfaces SpecifySPMModel and SpecifySparseModel support other types of data.

- API: fsl.DTIFit input “save” is now called “save_tensor”

- API: All inputs of IdentityInterfaces are mandatory by default. You can turn

    this off by specifying mandatory_inputs=False to the constructor.

- API: fsl FILMGLS input “autocorr_estimate” is now called “autocorr_estimate_only”

- API: fsl ContrastMgr now requires access to specific files (no longer accepts

    the result directory)

- API: freesurfer.GLMFit input “surf” is now a boolean with three corresponding

    inputs – subject_id, hemi, and surf_geo

- ENH: All commandline interfaces display stdout and stderr

- ENH: All interfaces raise exceptions on error with an option to suppress

- ENH: Supports a plugin interface for execution (current support for multiprocessing,

    IPython, SGE, PBS)

- ENH: MapNode runs in parallel under IPython, SGE, MultiProc, PBS

- ENH: Optionally allows keeping only required outputs

- ENH: New interface: utility.Rename to change the name of files, optionally

    using python string-formatting with inputs or regular expressions matching

- ENH: New interface: freesurfer.ApplyMask (mri_mask)

- ENH: New FSL interface – SwapDimensions (fslswapdim)

- ENH: Sparse models allow regressor scaling and temporal derivatives

- ENH: Added support for the component parts of FSL’s TBSS workflow (TBSSSkeleton

    and DistanceMap)

- ENH: dcm2nii interface exposes bvals, bvecs, reoriented and cropped images

- ENH: Added several higher-level interfaces to the fslmaths command:
    - ChangeDataType, Threshold, MeanImage, IsotropicSmooth, ApplyMask, TemporalFilter DilateImage, ErodeImage, SpatialFilter, UnaryMaths, BinaryMaths, MultiImageMaths

- ENH: added support for networx 1.4 and improved iterable expansion

- ENH: Replaced BEDPOSTX and EddyCurrent with nipype pipelines

- ENH: Ability to create a hierarchical dot file

- ENH: Improved debugging information for rerunning nodes

- ENH: Added ‘stop_on_first_rerun’ option

- ENH: Added support for Camino

- ENH: Added support for Camino2Trackvis

- ENH: Added support for Connectome Viewer

- BF: dcm2nii interface handles gzipped files correctly

- BF: FNIRT generates proper outputs

- BF: fsl.DTIFit now properly collects tensor volume

- BF: updatehash now removes old result hash file

## Release 0.3.4 (Jan 12, 2011)

- API: hash values for float use a string conversion up to the 10th decimal place.

- API: Iterables in output path will always be generated as _var1_val1_var2_val2 pairs

- ENH: Added support to nipy: GLM fit, contrast estimation and calculating mask from EPI

- ENH: Added support for manipulating surface files in Freesurfer:
    - projecting volume images onto the surface
    - smoothing along the surface
    - transforming a surface image from one subject to another
    - using tksurfer to save pictures of the surface

- ENH: Added support for flash processing using FreeSurfer

- ENH: Added support for flirt matrix in BBRegister

- ENH: Added support for FSL convert_xfm

- ENH: hashes can be updated again without rerunning all nodes.

- ENH: Added multiple regression design for FSL

- ENH: Added SPM based Analyze to Nifti converter

- ENH: Added increased support for PyXNAT

- ENH: Added support for MCR-based binary version of SPM

- ENH: Added SPM node for calculating various threshold statistics

- ENH: Added distance and dissimilarity measurements

- BF: Diffusion toolkit gets installed

- BF: Changed FNIRT interface to accept flexible lists (rather than 4-tuples)

    on all options specific to different subsampling levels

## Release 0.3.3 (Sep 16, 2010)

- API: subject_id in ModelSpec is now deprecated
- API: spm.Threshold - does not need mask, beta, RPV anymore - takes only one image (stat_image - mind the name change) - works with SPM2 SPM.mat - returns additional map - pre topological FDR
- ENH: Added support for Diffusion toolkit
- ENH: Added support for FSL slicer and overlay
- ENH: Added support for dcm2nii
- BF: DataSink properly handles lists of lists now
- BF: DataGrabber has option for raising Exception on getting empty lists
- BF: Traits logic for ‘requires’ metadata
- BF: allows workflows to be relocatable
- BF: nested workflows with connections don’t raise connection not found error
- BF: multiple workflows with identical nodenames and iterables do not create nestsed workflows

## Release 0.3.2 (Aug 03, 2010)

### Enhancements

> - all outputs from nodes are now pickled as part of workflow processing
> - added git developer docs

### Bugs fixed

- FreeSurfer
  - Fixed bugs in SegStats doctest

## Release 0.3.1 (Jul 29, 2010)

### Bugs fixed

- FreeSurfer
  - Fixed bugs in glmfit and concatenate
  - Added group t-test to freesurfer tutorial

## Release 0.3 (Jul 27, 2010)

### Incompatible changes

- Complete redesign of the Interface class - heavy use of Traits.
- Changes in the engine API - added Workflow and MapNode. Compulsory name argument.

### Features added

- General:
  - Type checking of inputs and outputs using Traits from ETS.
  - Support for nested workflows.
  - Preliminary Slicer and AFNI support.
  - New flexible DataGrabber node.
  - AtlasPick and Threshold nodes.
  - Preliminary support for XNAT.
  - Doubled number of the tutorials.
- FSL:
  - Added DTI processing nodes (note that TBSS nodes are still experimental).
  - Recreated FEAT workflow.
- SPM:
  - Added New Segment and many other nodes.
  - Redesigned second level analysis.