Skip to content

Commit 9880669

Browse files
committed
Merge branch 'master' into dev/2.0
2 parents dbfaf7e + 2b124a9 commit 9880669

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+971
-748
lines changed

.circleci/config.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
_machine_kwds: &machine_kwds
2-
image: circleci/classic:201710-02
2+
image: circleci/classic:201808-01
33

44
_store_artifacts_kwds: &store_artifacts_kwds
55
path: /home/circleci/work/tests
@@ -325,6 +325,16 @@ jobs:
325325
command: |
326326
pyenv local 3.5.2
327327
pip install dist/nipype-*-py3-none-any.whl
328+
- run:
329+
name: Validate Python 3.7 installation
330+
command: |
331+
pyenv local 3.7.0
332+
pip install --upgrade pip
333+
# Pre-install a version of numpy that will not pass
334+
pip install numpy==1.15.0
335+
pip install dist/nipype-*-py3-none-any.whl
336+
# Numpy should be upgraded to >= 1.15.3
337+
test "$(pip show numpy | grep Version)" \> "Version: 1.15.2"
328338
- store_artifacts:
329339
path: /home/circleci/nipype/dist
330340

.zenodo.json

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -89,32 +89,32 @@
8989
"name": "Clark, Daniel",
9090
"orcid": "0000-0002-8121-8954"
9191
},
92-
{
93-
"affiliation": "Department of Electrical and Computer Engineering, Johns Hopkins University",
94-
"name": "Dewey, Blake E",
95-
"orcid": "0000-0003-4554-5058"
96-
},
9792
{
9893
"affiliation": "National Institute of Mental Health",
9994
"name": "Nielson, Dylan M.",
10095
"orcid": "0000-0003-4613-6643"
10196
},
97+
{
98+
"affiliation": "Department of Electrical and Computer Engineering, Johns Hopkins University",
99+
"name": "Dewey, Blake E",
100+
"orcid": "0000-0003-4554-5058"
101+
},
102102
{
103103
"name": "Madison, Cindee"
104104
},
105105
{
106106
"affiliation": "Molecular Imaging Research Center, CEA, France",
107107
"name": "Bougacha, Salma"
108108
},
109+
{
110+
"affiliation": "National Institutes of Health",
111+
"name": "Clark, Michael G. "
112+
},
109113
{
110114
"affiliation": "Dartmouth College",
111115
"name": "Visconti di Oleggio Castello, Matteo",
112116
"orcid": "0000-0001-7931-5272"
113117
},
114-
{
115-
"affiliation": "National Institutes of Health",
116-
"name": "Clark, Michael G. "
117-
},
118118
{
119119
"affiliation": "Mayo Clinic, Neurology, Rochester, MN, USA",
120120
"name": "Dayan, Michael",
@@ -199,14 +199,14 @@
199199
"name": "Gilles de Hollander",
200200
"orcid": "0000-0003-1988-5091"
201201
},
202+
{
203+
"name": "Mordom, David"
204+
},
202205
{
203206
"affiliation": "Australian eHealth Research Centre, Commonwealth Scientific and Industrial Research Organisation; University of Queensland",
204207
"name": "Gillman, Ashley",
205208
"orcid": "0000-0001-9130-1092"
206209
},
207-
{
208-
"name": "Mordom, David"
209-
},
210210
{
211211
"name": "Buchanan, Colin"
212212
},
@@ -218,11 +218,6 @@
218218
"name": "Pauli, Wolfgang M.",
219219
"orcid": "0000-0002-0966-0254"
220220
},
221-
{
222-
"affiliation": "Duke University",
223-
"name": "Iqbal, Shariq",
224-
"orcid": "0000-0003-2766-8425"
225-
},
226221
{
227222
"affiliation": "Nathan s Kline institute for psychiatric research",
228223
"name": "Sikka, Sharad"
@@ -235,6 +230,11 @@
235230
{
236231
"name": "Forbes, Jessica"
237232
},
233+
{
234+
"affiliation": "Duke University",
235+
"name": "Iqbal, Shariq",
236+
"orcid": "0000-0003-2766-8425"
237+
},
238238
{
239239
"name": "Schwartz, Yannick"
240240
},
@@ -278,11 +278,6 @@
278278
"name": "Eshaghi, Arman",
279279
"orcid": "0000-0002-6652-3512"
280280
},
281-
{
282-
"affiliation": "Harvard University - Psychology",
283-
"name": "Kastman, Erik",
284-
"orcid": "0000-0001-7221-9042"
285-
},
286281
{
287282
"name": "Ginsburg, Daniel"
288283
},
@@ -291,6 +286,11 @@
291286
"name": "Schaefer, Alexander",
292287
"orcid": "0000-0001-6488-4739"
293288
},
289+
{
290+
"affiliation": "Harvard University - Psychology",
291+
"name": "Kastman, Erik",
292+
"orcid": "0000-0001-7221-9042"
293+
},
294294
{
295295
"affiliation": "Washington University in St Louis",
296296
"name": "Acland, Benjamin",
@@ -312,9 +312,6 @@
312312
"affiliation": "Child Mind Institute",
313313
"name": "Giavasis, Steven"
314314
},
315-
{
316-
"name": "Haselgrove, Christian"
317-
},
318315
{
319316
"name": "Correa, Carlos"
320317
},
@@ -336,6 +333,9 @@
336333
{
337334
"name": "Blair, Ross"
338335
},
336+
{
337+
"name": "Haselgrove, Christian"
338+
},
339339
{
340340
"affiliation": "1 McGill Centre for Integrative Neuroscience (MCIN), Ludmer Centre for Neuroinformatics and Mental Health, Montreal Neurological Institute (MNI), McGill University, Montr\u00e9al, 3801 University Street, WB-208, H3A 2B4, Qu\u00e9bec, Canada. 2 University of Lyon, CNRS, INSERM, CREATIS., Villeurbanne, 7, avenue Jean Capelle, 69621, France.",
341341
"name": "Glatard, Tristan",
@@ -385,6 +385,11 @@
385385
"name": "Chetverikov, Andrey",
386386
"orcid": "0000-0003-2767-6310"
387387
},
388+
{
389+
"affiliation": "GIGA Institute",
390+
"name": "Grignard, Martin",
391+
"orcid": "0000-0001-5549-1861"
392+
},
388393
{
389394
"name": "Salvatore, John"
390395
},
@@ -451,12 +456,6 @@
451456
"name": "Durnez, Joke",
452457
"orcid": "0000-0001-9030-2202"
453458
},
454-
{
455-
"name": "Mertz, Fred"
456-
},
457-
{
458-
"name": "Haehn, Daniel"
459-
},
460459
{
461460
"affiliation": "Technische Universit\u00e4t Dresden, Faculty of Medicine, Department of Child and Adolescent Psychiatry",
462461
"name": "Geisler, Daniel",
@@ -481,6 +480,9 @@
481480
"name": "Molina-Romero, Miguel",
482481
"orcid": "0000-0001-8054-0426"
483482
},
483+
{
484+
"name": "Haehn, Daniel"
485+
},
484486
{
485487
"name": "Weinstein, Alejandro"
486488
},

README.rst

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ NIPYPE: Neuroimaging in Python: Pipelines and Interfaces
1111
.. image:: https://codecov.io/gh/nipy/nipype/branch/master/graph/badge.svg
1212
:target: https://codecov.io/gh/nipy/nipype
1313

14-
.. image:: https://www.codacy.com/project/badge/182f27944c51474490b369d0a23e2f32
15-
:target: https://www.codacy.com/app/krzysztof-gorgolewski/nipy_nipype
14+
.. image:: https://api.codacy.com/project/badge/Grade/452bfc0d4de342c99b177d2c29abda7b
15+
:target: https://www.codacy.com/app/nipype/nipype?utm_source=github.com&utm_medium=referral&utm_content=nipy/nipype&utm_campaign=Badge_Grade
1616

1717
.. image:: https://img.shields.io/pypi/v/nipype.svg
1818
:target: https://pypi.python.org/pypi/nipype/
@@ -34,8 +34,9 @@ NIPYPE: Neuroimaging in Python: Pipelines and Interfaces
3434
:target: http://gitter.im/nipy/nipype
3535
:alt: Chat
3636

37-
.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.581704.svg
38-
:target: https://doi.org/10.5281/zenodo.581704
37+
.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.596855.svg
38+
:target: https://doi.org/10.5281/zenodo.596855
39+
:alt: Citable DOI
3940

4041
Current neuroimaging software offer users an incredible opportunity to
4142
analyze data using a variety of different algorithms. However, this has

doc/_templates/navbar.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
1+
<link rel="stylesheet" href="https://www.google.com/cse/style/look/default.css" type="text/css" />
22
<style type="text/css">
33
a.navbar {
44
color: {{ theme_linkcolor }};

doc/changelog/1.X.X-changelog

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,44 @@
1+
1.1.7 (December 17, 2018)
2+
=========================
3+
4+
* FIX: Copy node list before generating a flat graph (https://github.com/nipy/nipype/pull/2828)
5+
* FIX: Update pytest req'd version to 3.6 (https://github.com/nipy/nipype/pull/2827)
6+
* FIX: Set ResourceMonitor.fname to an absolute path (https://github.com/nipy/nipype/pull/2824)
7+
* FIX: Order of SPM.NewSegment channel_info boolean tuple is (Field, Corrected) (https://github.com/nipy/nipype/pull/2817)
8+
* FIX: Indices were swapped for memory and cpu profile data (https://github.com/nipy/nipype/pull/2816)
9+
* FIX: ``status_callback`` not called with ``stop_on_first_crash`` (https://github.com/nipy/nipype/pull/2810)
10+
* FIX: Change undefined ScriptError on LFS plugin to IOError (https://github.com/nipy/nipype/pull/2803)
11+
* ENH: Add NaN failure mode to CompCor interfaces (https://github.com/nipy/nipype/pull/2819)
12+
* ENH: Enable cnr_maps and residuals outputs for FSL eddy (https://github.com/nipy/nipype/pull/2750)
13+
* ENH: Improve ``str2bool`` + doctests (https://github.com/nipy/nipype/pull/2807)
14+
* TST: Improve py.test configuration of doctests (https://github.com/nipy/nipype/pull/2802)
15+
* DOC: Update DOI badge to point to all versions (https://github.com/nipy/nipype/pull/2804)
16+
* MAINT: Offload interfaces with help formatting (https://github.com/nipy/nipype/pull/2797)
17+
* MAINT: Reduce minimal code redundancy in filemanip.get_dependencies (https://github.com/nipy/nipype/pull/2782)
18+
* MAINT: Delayed imports to reduce import time (https://github.com/nipy/nipype/pull/2809)
19+
20+
21+
1.1.6 (November 26, 2018)
22+
=========================
23+
24+
##### [Full changelog](https://github.com/nipy/nipype/milestone/27?closed=1)
25+
26+
* FIX: MapNodes fail when ``MultiProcPlugin`` passed by instance (https://github.com/nipy/nipype/pull/2786)
27+
* FIX: --fineTune arguments order for MeshFix command (https://github.com/nipy/nipype/pull/2780)
28+
* ENH: Add mp_context plugin arg for MultiProc (https://github.com/nipy/nipype/pull/2778)
29+
* ENH: Create a crashfile even if 'stop_on_first_crash' is set (https://github.com/nipy/nipype/pull/2774)
30+
* ENH: Add ExtractedBrainN4 output to ANTs CorticalThickness interface (https://github.com/nipy/nipype/pull/2784)
31+
* STY: Combine split import (https://github.com/nipy/nipype/pull/2801)
32+
* DOC: use https in css stylesheet url (https://github.com/nipy/nipype/pull/2779)
33+
* MAINT: Outsource ``get_filecopy_info()`` from interfaces (https://github.com/nipy/nipype/pull/2798)
34+
* MAINT: Import only Sequence to avoid DeprecationWarning (https://github.com/nipy/nipype/pull/2793)
35+
* MAINT: One less DeprecationWarning (configparser) (https://github.com/nipy/nipype/pull/2794)
36+
* MAINT: DeprecationWarning: use ``HasTraits.trait_set`` instead (https://github.com/nipy/nipype/pull/2792)
37+
* MAINT: Stop using deprecated ``logger.warn()`` (https://github.com/nipy/nipype/pull/2788)
38+
* MAINT: Move ``interfaces.base.run_command`` to ``nipype.utils.subprocess`` (https://github.com/nipy/nipype/pull/2777)
39+
* MAINT: Force numpy>=1.15.4 when Python>=3.7 (https://github.com/nipy/nipype/pull/2775)
40+
41+
142
1.1.5 (November 08, 2018)
243
=========================
344

doc/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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 = "1.1.5"
85+
release = "1.1.7"
8686

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

doc/documentation.rst

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

12-
Previous versions: `1.1.5 <http://nipype.readthedocs.io/en/1.1.5/>`_ `1.1.4 <http://nipype.readthedocs.io/en/1.1.4/>`_
12+
Previous versions: `1.1.7 <http://nipype.readthedocs.io/en/1.1.7/>`_ `1.1.6 <http://nipype.readthedocs.io/en/1.1.6/>`_
1313

1414

1515
.. container:: doc2

nipype/algorithms/confounds.py

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import nibabel as nb
1111
import numpy as np
1212
from numpy.polynomial import Legendre
13-
from scipy import linalg
1413

1514
from .. import config, logging
1615
from ..external.due import BibTeX
@@ -323,7 +322,7 @@ def _run_interface(self, runtime):
323322
tr = self.inputs.series_tr
324323

325324
if self.inputs.normalize and tr is None:
326-
IFLOGGER.warn('FD plot cannot be normalized if TR is not set')
325+
IFLOGGER.warning('FD plot cannot be normalized if TR is not set')
327326

328327
self._results['out_figure'] = op.abspath(self.inputs.out_figure)
329328
fig = plot_confound(
@@ -409,6 +408,11 @@ class CompCorInputSpec(BaseInterfaceInputSpec):
409408
low=0,
410409
usedefault=True,
411410
desc='Number of volumes at start of series to ignore')
411+
failure_mode = traits.Enum(
412+
'error', 'NaN',
413+
usedefault=True,
414+
desc='When no components are found or convergence fails, raise an error '
415+
'or silently return columns of NaNs.')
412416

413417

414418
class CompCorOutputSpec(TraitedSpec):
@@ -1182,13 +1186,20 @@ def compute_noise_components(imgseries, mask_images, num_components,
11821186

11831187
# "The covariance matrix C = MMT was constructed and decomposed into its
11841188
# principal components using a singular value decomposition."
1185-
u, _, _ = linalg.svd(M, full_matrices=False)
1189+
try:
1190+
u, _, _ = np.linalg.svd(M, full_matrices=False)
1191+
except np.linalg.LinAlgError:
1192+
if self.inputs.failure_mode == 'error':
1193+
raise
1194+
u = np.ones((M.shape[0], num_components), dtype=np.float32) * np.nan
11861195
if components is None:
11871196
components = u[:, :num_components]
11881197
else:
11891198
components = np.hstack((components, u[:, :num_components]))
11901199
if components is None and num_components > 0:
1191-
raise ValueError('No components found')
1200+
if self.inputs.failure_mode == 'error':
1201+
raise ValueError('No components found')
1202+
components = np.ones((M.shape[0], num_components), dtype=np.float32) * np.nan
11921203
return components, basis
11931204

11941205

@@ -1263,7 +1274,7 @@ def _full_rank(X, cmax=1e15):
12631274
c = smax / smin
12641275
if c < cmax:
12651276
return X, c
1266-
IFLOGGER.warn('Matrix is singular at working precision, regularizing...')
1277+
IFLOGGER.warning('Matrix is singular at working precision, regularizing...')
12671278
lda = (smax - cmax * smin) / (cmax - 1)
12681279
s = s + lda
12691280
X = np.dot(U, np.dot(np.diag(s), V))

nipype/algorithms/icc.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
import os
33
import numpy as np
44
from numpy import ones, kron, mean, eye, hstack, dot, tile
5+
from numpy.linalg import pinv
56
import nibabel as nb
6-
from scipy.linalg import pinv
77
from ..interfaces.base import BaseInterfaceInputSpec, TraitedSpec, \
88
BaseInterface, traits, File
99
from ..utils import NUMPY_MMAP

nipype/algorithms/mesh.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -418,5 +418,5 @@ class P2PDistance(ComputeMeshWarp):
418418

419419
def __init__(self, **inputs):
420420
super(P2PDistance, self).__init__(**inputs)
421-
IFLOGGER.warn('This interface has been deprecated since 1.0, please '
422-
'use ComputeMeshWarp')
421+
IFLOGGER.warning('This interface has been deprecated since 1.0, please '
422+
'use ComputeMeshWarp')

0 commit comments

Comments
 (0)