Skip to content

Commit 3440181

Browse files
authored
Merge pull request #2011 from satra/rel/0.13.0
Rel/0.13.0
2 parents fdfe6ff + 905912e commit 3440181

File tree

11 files changed

+62
-95
lines changed

11 files changed

+62
-95
lines changed

CHANGES

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Upcoming Release
1+
0.13.0 (May 11, 2017)
22
=====================
33

44
* ENH: Multi-stage recon-all directives (https://github.com/nipy/nipype/pull/1991)
@@ -63,7 +63,7 @@ Upcoming Release
6363

6464

6565
0.13.0-rc1 (January 4, 2017)
66-
===============================
66+
============================
6767

6868
* FIX: Compatibility with traits 4.6 (https://github.com/nipy/nipype/pull/1770)
6969
* FIX: Multiproc deadlock (https://github.com/nipy/nipype/pull/1756)

doc/conf.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373

7474
# General information about the project.
7575
project = u'nipype'
76-
copyright = u'2009-16, Neuroimaging in Python team'
76+
copyright = u'2009-17, Neuroimaging in Python team'
7777

7878
# The version info for the project you're documenting, acts as replacement for
7979
# |version| and |release|, also used in various other places throughout the
@@ -82,7 +82,7 @@
8282
# The short X.Y version.
8383
version = nipype.__version__
8484
# The full version, including alpha/beta/rc tags.
85-
release = "0.12.0"
85+
release = "0.13.0"
8686

8787
# The language for content autogenerated by Sphinx. Refer to documentation
8888
# for a list of supported languages.

doc/documentation.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Documentation
99
:Release: |version|
1010
:Date: |today|
1111

12-
Previous versions: `0.12.0 <http://nipype.readthedocs.io/en/0.12.0/>`_ `0.11.0 <http://nipy.org/nipype/0.11.0>`_
12+
Previous versions: `0.12.1 <http://nipype.readthedocs.io/en/0.12.1/>`_ `0.11.0 <http://nipy.org/nipype/0.11.0>`_
1313

1414

1515
.. container:: doc2

doc/quickstart.rst

+10
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,16 @@ Michael Notter's Nipype tutorial. `Available here`__
1919

2020
__ https://miykael.github.io/nipype_tutorial/
2121

22+
How should I ask questions or report bugs?
23+
==========================================
24+
25+
* If you find a bug or a suggestion for improvement report it here: `GitHub Issues <https://github.com/nipy/nipype/issues>`_
26+
* If you have a conceptual or clarification question ask it here: `Neurostars <https://neurostars.org/>`_
27+
* If you want to hangout with developers, you can use either::
28+
29+
`Gitter <https://gitter.im/nipy/nipype>`_
30+
`Slack <https://brainhack.slack.com/messages/C1FR76RAL>`_
31+
2232
Nipype workshop materials
2333
=========================
2434

doc/users/install.rst

+14-65
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
11
.. _install:
22

3-
======================
4-
Download and install
5-
======================
3+
====================
4+
Download and install
5+
====================
66

77
This page covers the necessary steps to install Nipype.
88

9-
Nipype for users
10-
----------------
11-
129
Using docker
1310
~~~~~~~~~~~~
1411

1512
You can follow the `Nipype tutorial <https://miykael.github.io/nipype_tutorial/>`_
1613

14+
or use this docker container: `docker pull nipype/nipype`
15+
1716
Using conda
1817
~~~~~~~~~~~
1918

@@ -75,7 +74,7 @@ path to compile the traits package.
7574
From source
7675
~~~~~~~~~~~
7776

78-
The current release is found here: `<https://github.com/nipy/nipype/releases/latest>`_.
77+
The most recent release is found here: `<https://github.com/nipy/nipype/releases/latest>`_.
7978

8079
The development version: [`zip <http://github.com/nipy/nipype/zipball/master>`__ `tar.gz
8180
<http://github.com/nipy/nipype/tarball/master>`__]
@@ -100,69 +99,19 @@ the tests::
10099
python -c "import nipype; print(nipype.__version__)"
101100
python -c "import nipype; nipype.test()"
102101

103-
Installation for developers
104-
---------------------------
105-
106-
Developers should start `here <../devel/testing_nipype.html>`_.
107-
108-
Recommended Software
109-
--------------------
110-
111-
Strong Recommendations
112-
~~~~~~~~~~~~~~~~~~~~~~
113-
114-
IPython_
115-
Interactive python environment.
116-
117-
Matplotlib_
118-
Plotting library
119-
120-
Sphinx_ 1.1
121-
Required for building the documentation
122-
123-
`Graphviz <http://www.graphviz.org/>`_
124-
Required for building the documentation.
125-
126102
Interface Dependencies
127103
~~~~~~~~~~~~~~~~~~~~~~
128104

129-
You might not need some of the following packages, depending on what exactly you
130-
want to use nipype for. If you do need any of them, install nipype's wrapper package
131-
(``nipype.interfaces``), then install the programs separately onto your computer, just
132-
like you would install any other app.
105+
Nipype provides wrappers around many neuroimaging tools and contains some
106+
algorithms. These tools will need to be installed for Nipype to run. You can
107+
create containers with different versions of these tools installed using
108+
`Neurodocker <https://github.com/kaczmarj/neurodocker>`_
133109

134-
FSL_
135-
4.1.0 or later
136-
137-
matlab_
138-
2008a or later
139-
140-
SPM_
141-
SPM5 or later
142-
143-
FreeSurfer_
144-
FreeSurfer v4.0.0 or later
145-
146-
AFNI_
147-
2009_12_31_1431 or later
148-
149-
Slicer_
150-
3.6 or later
151-
152-
Nipy_
153-
0.4 or later
154-
155-
Nitime_
156-
(optional)
157-
158-
ANTS_
159-
160-
MRtrix_ and MRtrix3_
161-
162-
Camino_
110+
Installation for developers
111+
---------------------------
163112

164-
Camino2Trackvis_
113+
Developers should start `here <../devel/testing_nipype.html>`_.
165114

166-
ConnectomeViewer_
115+
Developers can also use this docker container: `docker pull nipype/nipype:master`
167116

168117
.. include:: ../links_names.txt

nipype/algorithms/confounds.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -308,14 +308,14 @@ class CompCorInputSpec(BaseInterfaceInputSpec):
308308
mask_files = InputMultiPath(File(exists=True),
309309
desc=('One or more mask files that determines '
310310
'ROI (3D). When more that one file is '
311-
'provided `merge_method` or '
311+
'provided `merge_method` or '
312312
'`merge_index` must be provided'))
313313
merge_method = traits.Enum('union', 'intersect', 'none', xor=['mask_index'],
314314
requires=['mask_files'],
315315
desc=('Merge method if multiple masks are '
316-
'present - `union` uses voxels included in'
316+
'present - `union` uses voxels included in'
317317
' at least one input mask, `intersect` '
318-
'uses only voxels present in all input '
318+
'uses only voxels present in all input '
319319
'masks, `none` performs CompCor on '
320320
'each mask individually'))
321321
mask_index = traits.Range(low=0, xor=['merge_method'],
@@ -330,8 +330,8 @@ class CompCorInputSpec(BaseInterfaceInputSpec):
330330
'pre-component extraction'))
331331
regress_poly_degree = traits.Range(low=1, default=1, usedefault=True,
332332
desc='the degree polynomial to use')
333-
header_prefix = traits.Str(desc=('the desired header for the output tsv '
334-
'file (one column). If undefined, will '
333+
header_prefix = traits.Str(desc=('the desired header for the output tsv '
334+
'file (one column). If undefined, will '
335335
'default to "CompCor"'))
336336

337337

@@ -851,8 +851,8 @@ def combine_mask_files(mask_files, mask_method=None, mask_index=None):
851851
if len(mask_files) == 1:
852852
mask_index = 0
853853
else:
854-
raise ValueError(('When more than one mask file is provided, '
855-
'one of merge_method or mask_index must be '
854+
raise ValueError(('When more than one mask file is provided, '
855+
'one of merge_method or mask_index must be '
856856
'set'))
857857
if mask_index < len(mask_files):
858858
mask = nb.load(mask_files[mask_index], mmap=NUMPY_MMAP)

nipype/info.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
# full release. '.dev' as a version_extra string means this is a development
1010
# version
1111
# Remove -dev for release
12-
__version__ = '0.13.0-dev'
12+
__version__ = '0.13.0'
1313

1414

1515
def get_nipype_gitversion():

nipype/interfaces/fsl/ICA_AROMA.py

+15-15
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# -*- coding: utf-8 -*-
22
# emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: nil -*-
33
# vi: set ft=python sts=4 ts=4 sw=4 et:
4-
"""This commandline module provides classes for interfacing with the
5-
`ICA-AROMA.py<https://github.com/rhr-pruim/ICA-AROMA>`_ command line tool.
4+
"""This commandline module provides classes for interfacing with the
5+
`ICA-AROMA.py<https://github.com/rhr-pruim/ICA-AROMA>`_ command line tool.
66
Change directory to provide relative paths for doctests
77
>>> import os
88
>>> filepath = os.path.dirname(os.path.realpath(__file__))
@@ -23,18 +23,18 @@
2323

2424
class ICA_AROMAInputSpec(CommandLineInputSpec):
2525
feat_dir = Directory(exists=True, mandatory=True,
26-
argstr='-feat %s',
26+
argstr='-feat %s',
2727
xor=['in_file', 'mat_file', 'fnirt_warp_file', 'motion_parameters'],
2828
desc='If a feat directory exists and temporal filtering '
2929
'has not been run yet, ICA_AROMA can use the files in '
3030
'this directory.')
31-
in_file = File(exists=True, mandatory=True,
32-
argstr='-i %s', xor=['feat_dir'],
31+
in_file = File(exists=True, mandatory=True,
32+
argstr='-i %s', xor=['feat_dir'],
3333
desc='volume to be denoised')
3434
out_dir = Directory('out', mandatory=True,
35-
argstr='-o %s',
35+
argstr='-o %s',
3636
desc='output directory')
37-
mask = File(exists=True, argstr='-m %s', xor=['feat_dir'],
37+
mask = File(exists=True, argstr='-m %s', xor=['feat_dir'],
3838
desc='path/name volume mask')
3939
dim = traits.Int(argstr='-dim %d',
4040
desc='Dimensionality reduction when running '
@@ -65,31 +65,31 @@ class ICA_AROMAInputSpec(CommandLineInputSpec):
6565
'-both: both aggressive and non-aggressive denoising (two outputs)')
6666

6767
class ICA_AROMAOutputSpec(TraitedSpec):
68-
aggr_denoised_file = File(exists=True,
68+
aggr_denoised_file = File(exists=True,
6969
desc='if generated: aggressively denoised volume')
7070
nonaggr_denoised_file = File(exists=True,
7171
desc='if generated: non aggressively denoised volume' )
72-
out_dir = Directory(exists=True,
72+
out_dir = Directory(exists=True,
7373
desc='directory contains (in addition to the denoised files): '
7474
'melodic.ica + classified_motion_components + '
7575
'classification_overview + feature_scores + melodic_ic_mni)')
76-
76+
7777
class ICA_AROMA(CommandLine):
7878
"""
7979
Interface for the ICA_AROMA.py script.
80-
81-
ICA-AROMA (i.e. 'ICA-based Automatic Removal Of Motion Artifacts') concerns
80+
81+
ICA-AROMA (i.e. 'ICA-based Automatic Removal Of Motion Artifacts') concerns
8282
a data-driven method to identify and remove motion-related independent
8383
components from fMRI data. To that end it exploits a small, but robust
8484
set of theoretically motivated features, preventing the need for classifier
85-
re-training and therefore providing direct and easy applicability.
85+
re-training and therefore providing direct and easy applicability.
8686
8787
See link for further documentation: https://github.com/rhr-pruim/ICA-AROMA
8888
8989
Example
9090
-------
9191
92-
>>> from nipype.interfaces.fsl import ICA_AROMA
92+
>>> from nipype.interfaces.fsl import ICA_AROMA
9393
>>> from nipype.testing import example_data
9494
>>> AROMA_obj = ICA_AROMA.ICA_AROMA()
9595
>>> AROMA_obj.inputs.in_file = 'functional.nii'
@@ -114,5 +114,5 @@ def _list_outputs(self):
114114
outputs['aggr_denoised_file'] = os.path.join(out_dir, 'denoised_func_data_aggr.nii.gz')
115115
if self.inputs.denoise_type in ('nonaggr', 'both'):
116116
outputs['nonaggr_denoised_file'] = os.path.join(out_dir, 'denoised_func_data_nonaggr.nii.gz')
117-
117+
118118
return outputs

nipype/interfaces/fsl/tests/test_auto_MELODIC.py

+8
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,14 @@ def test_MELODIC_inputs():
4343
),
4444
maxit=dict(argstr='--maxit=%d',
4545
),
46+
migp=dict(argstr='--migp',
47+
),
48+
migpN=dict(argstr='--migpN %d',
49+
),
50+
migp_factor=dict(argstr='--migp_factor %d',
51+
),
52+
migp_shuffle=dict(argstr='--migp_shuffle',
53+
),
4654
mix=dict(argstr='--mix=%s',
4755
),
4856
mm_thresh=dict(argstr='--mmthresh=%f',

nipype/interfaces/niftyreg/tests/test_regutils.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ def test_reg_average():
283283
os.path.join(os.getcwd(), 'avg_out.nii.gz'),
284284
ref_file, trans1_file, one_file, trans2_file, two_file,
285285
trans3_file, three_file))
286-
286+
287287
assert argv.decode('utf-8') == expected_argv
288288

289289
# Test Reg Average: demean3

nipype/pipeline/engine/tests/test_utils.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@ def dummy_func(value):
343343
return value + 1
344344

345345

346-
@pytest.mark.skipif(sys.version_info < (3,0),
346+
@pytest.mark.skipif(sys.version_info < (3,0),
347347
reason="the famous segfault #1788")
348348
def test_mapnode_crash(tmpdir):
349349
"""Test mapnode crash when stop_on_first_crash is True"""

0 commit comments

Comments
 (0)