Skip to content

Commit 5f15479

Browse files
Merge branch 'master' into mc_ref_mod
2 parents e32082b + 4a0bd3d commit 5f15479

File tree

1,443 files changed

+79529
-31628
lines changed

Some content is hidden

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

1,443 files changed

+79529
-31628
lines changed

.circle/tests.sh

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
#!/bin/bash
2+
#
3+
# Balance nipype testing workflows across CircleCI build nodes
4+
#
5+
6+
# Setting # $ help set
7+
set -e # Exit immediately if a command exits with a non-zero status.
8+
set -u # Treat unset variables as an error when substituting.
9+
set -x # Print command traces before executing command.
10+
11+
if [ "${CIRCLE_NODE_TOTAL:-}" != "4" ]; then
12+
echo "These tests were designed to be run at 4x parallelism."
13+
exit 1
14+
fi
15+
16+
# These tests are manually balanced based on previous build timings.
17+
# They may need to be rebalanced in the future.
18+
case ${CIRCLE_NODE_INDEX} in
19+
0)
20+
docker run --rm=false -it -e FSL_COURSE_DATA="/data/examples/nipype-fsl_course_data" -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_pytests.sh && \
21+
docker run --rm=false -it -e FSL_COURSE_DATA="/data/examples/nipype-fsl_course_data" -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py27 /usr/bin/run_pytests.sh && \
22+
docker run --rm=false -it -v $WORKDIR:/work -w /src/nipype/doc --entrypoint=/usr/bin/run_builddocs.sh nipype/nipype:py36 /usr/bin/run_builddocs.sh && \
23+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh test_spm Linear /data/examples/ workflow3d && \
24+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh test_spm Linear /data/examples/ workflow4d
25+
exitcode=$?
26+
;;
27+
1)
28+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_spm_dartel Linear /data/examples/ level1 && \
29+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_spm_dartel Linear /data/examples/ l2pipeline
30+
exitcode=$?
31+
;;
32+
2)
33+
docker run --rm=false -it -e NIPYPE_NUMBER_OF_CPUS=4 -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py27 /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ level1 && \
34+
docker run --rm=false -it -e NIPYPE_NUMBER_OF_CPUS=4 -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ l2pipeline
35+
exitcode=$?
36+
;;
37+
3)
38+
docker run --rm=false -it -e NIPYPE_NUMBER_OF_CPUS=4 -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ level1 && \
39+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_fsl_feeds Linear /data/examples/ l1pipeline && \
40+
docker run --rm=false -it -v $HOME/examples:/data/examples:ro -v $WORKDIR:/work -w /work nipype/nipype:py36 /usr/bin/run_examples.sh fmri_fsl_reuse Linear /data/examples/ level1_workflow
41+
exitcode=$?
42+
;;
43+
esac
44+
45+
cp ${WORKDIR}/tests/*.xml ${CIRCLE_TEST_REPORTS}/tests/
46+
47+
# Exit with error if any of the tests failed
48+
if [ "$exitcode" != "0" ]; then exit 1; fi
49+
codecov -f "coverage*.xml" -s "${WORKDIR}/tests/" -R "${HOME}/nipype/" -F unittests -e CIRCLE_NODE_INDEX
50+
codecov -f "smoketest*.xml" -s "${WORKDIR}/tests/" -R "${HOME}/nipype/" -F smoketests -e CIRCLE_NODE_INDEX
51+

.coveragerc

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,2 @@
11
[run]
22
branch = True
3-
source = nipype
4-
include = */nipype/*
5-
omit =
6-
*/nipype/external/*
7-
*/nipype/workflows/*
8-
*/nipype/fixes/*
9-
*/setup.py

.dockerignore

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# python cache
2+
__pycache__
3+
**/__pycache__
4+
**/*.pyc
5+
*.pyc
6+
7+
# python distribution
8+
build/**/*
9+
build
10+
dist/**/*
11+
dist
12+
nipype.egg-info/**/*
13+
nipype.egg-info
14+
.eggs/**/*
15+
.eggs
16+
src/**/*
17+
src/
18+
19+
# git
20+
.gitignore
21+
.git/**/*
22+
.git
23+
24+
# other
25+
docs/**/*
26+
docs/
27+
.cache/
28+
.circle/**/*
29+
.circle/
30+
circle.yml
31+
rtd_requirements.txt
32+
Vagrantfile
33+
.travis.yml
34+
.mailmap
35+
36+
# Previous coverage results
37+
.coverage

.github/ISSUE_TEMPLATE.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
### Summary
2+
3+
### Actual behavior
4+
5+
### Expected behavior
6+
7+
### How to replicate the behavior
8+
9+
### Script/Workflow details
10+
11+
Please put URL to code or code here (if not too long).
12+
13+
### Platform details:
14+
15+
Please paste the output of: `python -c "import nipype; print(nipype.get_info()); print(nipype.__version__)"`
16+
17+
### Execution environment
18+
19+
Choose one
20+
- Container [Tag: ???]
21+
- My python environment inside container [Base Tag: ???]
22+
- My python environment outside container

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
Pull-request guidelines (Remove this section after reading):
2+
3+
1. If you would like to list yourself as a Nipype contributor and your name is not mentioned please modify .zenodo.json file.
4+
2. By submitting this request you acknowledge that your contributions are available under the Apache 2 license.
5+
3. Use a descriptive prefix for your PR: ENH (enhancement), FIX, TST, DOC, STY, REF (refactor), WIP (Work in progress)
6+
4. The person who accepts/merges your PR will include an update to the CHANGES file: prefix: description (URL of pull request)
7+
5. Run `make check-before-commit` before submitting the PR.
8+
9+
----- REMOVE TILL HERE -----
10+
11+
Fixes # .
12+
13+
Changes proposed in this pull request
14+
-
15+
-

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,25 @@
55
/nipype/build
66
/nipype/nipype.egg-info
77
/doc/_build
8+
/doc/preproc
89
/doc/users/examples
910
/doc/api/generated
1011
*.pyc
1112
*.so
1213
.project
1314
.settings
1415
.pydevproject
16+
.eggs
1517
.idea/
1618
/documentation.zip
1719
.DS_Store
1820
nipype/testing/data/von-ray_errmap.nii.gz
1921
nipype/testing/data/von_errmap.nii.gz
22+
crash*.pklz
23+
.coverage
24+
htmlcov/
25+
__pycache__/
26+
*~
27+
.*.swp
28+
.ipynb_checkpoints/
29+
.ruby-version

.mailmap

Lines changed: 102 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,106 @@
1+
Aimi Watanabe <[email protected]> stymy <[email protected]>
2+
Aimi Watanabe <[email protected]> stymy <[email protected]>
3+
Alexander Schaefer <[email protected]> Alexander Schaefer <[email protected]>
4+
Alexander Schaefer <[email protected]> alexschaefer83 <[email protected]>
5+
Alexander Schaefer <[email protected]> aschaefer <aschaefer@aschaefer-U36SD.(none)>
6+
Alexandre M. Savio <[email protected]> Alexandre M. S <[email protected]>
7+
Alexandre M. Savio <[email protected]> Alexandre M. S <[email protected]>
8+
Alexandre M. Savio <[email protected]> Alexandre Manhaes Savio <[email protected]>
9+
Anisha Keshavan <[email protected]> Anisha Keshavan <[email protected]>
10+
Anisha Keshavan <[email protected]> akeshavan <[email protected]>
111
Ariel Rokem <[email protected]> arokem <[email protected]>
2-
Cindee Madison <[email protected]> cindeem <>
3-
Cindee Madison <[email protected]> cindeem
4-
Chris Filo Gorgolewski <[email protected]> filo <filo@filo-Precision-M6500>
12+
Ariel Rokem <[email protected]> arokem <[email protected]>
13+
Arman Eshaghi <[email protected]> armaneshaghi <[email protected]>
14+
Ashely Gillman <[email protected]> Ashley Gillman <[email protected]>
15+
Ashely Gillman <[email protected]> ashgillman <[email protected]>
16+
Basille Pinsard <[email protected]> bpinsard <[email protected]>
17+
Basille Pinsard <[email protected]> bpinsard <[email protected]>
18+
Ben Cipollini <[email protected]> Ben Cipollini <[email protected]>
19+
Benjamin Yvernault <[email protected]> Benjamin Yvernault <[email protected]>
20+
Benjamin Yvernault <[email protected]> byvernault <[email protected]>
21+
Blake Dewey <[email protected]> Blake Dewey <[email protected]>
22+
Blake Dewey <[email protected]> blakedewey <[email protected]>
23+
Blake Dewey <[email protected]> blakedewey <[email protected]>
24+
Brendan Moloney <[email protected]> moloney <[email protected]>
25+
Chris Filo Gorgolewski <[email protected]> Chris Filo Gorgolewski <filo@filo-Precision-M6500.(none)>
26+
Chris Filo Gorgolewski <[email protected]> Chris Filo Gorgolewski <[email protected]>
27+
Chris Filo Gorgolewski <[email protected]> Chris Filo Gorgolewski <[email protected]>
28+
Chris Filo Gorgolewski <[email protected]> Chris Gorgolewski <[email protected]>
529
Chris Filo Gorgolewski <[email protected]> Krzysztof Gorgolewski <[email protected]>
6-
Erik Ziegler <[email protected]> erikz <[email protected]>
7-
Michael Waskom <[email protected]> mwaskom <[email protected]> Michael Waskom <[email protected]> mwaskom <[email protected]>
30+
Chris Filo Gorgolewski <[email protected]> filo <filo@filo-Precision-M6500>
31+
Chris Filo Gorgolewski <[email protected]> filo <filo@filo-dtc-laptop>
32+
Chris Filo Gorgolewski <[email protected]> filo <filo@filolaptop>
33+
Christopher J. Markiewicz <[email protected]> Chris Markiewicz <[email protected]>
34+
Christopher J. Markiewicz <[email protected]> Christopher J. Johnson <[email protected]>
35+
Christopher J. Markiewicz <[email protected]> Christopher J. Markiewicz <[email protected]>
36+
Christopher J. Markiewicz <[email protected]> Christopher J. Markiewicz <[email protected]>
37+
Cindee Madison <[email protected]> cindeem
38+
Cindee Madison <[email protected]> cindeem <>
39+
Colin Buchanan <[email protected]> Colin Buchanan <cbuchanan@cray4.(none)>
40+
Colin Buchanan <[email protected]> colinbuchanan <[email protected]>
41+
Daniel Clark <[email protected]> dclark87 <[email protected]>
42+
Daniel Ginsburg <[email protected]> danginsburg <[email protected]>
43+
Daniel McNamee <[email protected]> danmc <[email protected]>
44+
David Ellis <[email protected]> David Ellis <[email protected]>
45+
David Ellis <[email protected]> David Ellis <[email protected]>
46+
David Welch <[email protected]> David Welch <[email protected]>
47+
48+
49+
Erik Ziegler <[email protected]> Erik Ziegler <[email protected]>
50+
Erik Ziegler <[email protected]> erik <erik@erik-ubuntu.(none)>
51+
Erik Ziegler <[email protected]> erikz <[email protected]>
52+
Erik Ziegler <[email protected]> swederik <[email protected]>
53+
Fernando Pérez-García <[email protected]> Fernando <[email protected]>
54+
55+
Franz Liem <[email protected]> fliem <franz.liem>
856
Gael Varoquaux <[email protected]> GaelVaroquaux
957
Gael Varoquaux <[email protected]> GaelVaroquaux <[email protected]>
10-
Daniel Ginsburg <[email protected]> danginsburg <[email protected]>
11-
Colin Buchanan <[email protected]> colinbuchanan <[email protected]>
58+
Gavin Cooper <[email protected]> gjcooper <[email protected]>
59+
Hans Johnson <[email protected]> Hans Johnson <[email protected]>
60+
Hans Johnson <[email protected]> hjmjohnson <[email protected]>
61+
Horea Christian <[email protected]> Horea Christian <[email protected]>
62+
Isaac Schwabacher <[email protected]> ischwabacher <[email protected]>
63+
64+
65+
66+
Jason Wong <[email protected]> Jason W <[email protected]>
67+
Jason Wong <[email protected]> Jason W <[email protected]>
68+
Jason Wong <[email protected]> jason-wg <[email protected]>
69+
Jens Kleesiek <[email protected]> JensNRAD <[email protected]>
70+
Joerg Stadler <[email protected]> Joerg Stadler <[email protected]>
71+
Joerg Stadler <[email protected]> Jörg Stadler <[email protected]>
72+
Joke Durnez <[email protected]> jokedurnez <[email protected]>
73+
Josh Warner <[email protected]> Josh Warner (Mac) <[email protected]>
74+
Kai Schlamp <[email protected]> medihack <[email protected]>Jessica Forbes <[email protected]> jessicaforbes <[email protected]>
75+
Leonie Lampe <[email protected]> Leonie Lmape <[email protected]>
76+
Mathias Goncalves <[email protected]> mathiasg <[email protected]>
77+
Michael Dayan <[email protected]> Michael <[email protected]>
78+
Michael Dayan <[email protected]> Michael <[email protected]>
79+
Michael Dayan <[email protected]> mick-d <mid2021@CHUCK.(none)>
80+
Michael Clark <[email protected]> Clark <[email protected]>
81+
Michael Notter <[email protected]> miykael <[email protected]>
82+
Michael Waskom <[email protected]> Michael Waskom <[email protected]>
83+
Michael Waskom <[email protected]> Michael Waskom <[email protected]>
84+
Michael Waskom <[email protected]> mwaskom <[email protected]>
85+
Michael Waskom <[email protected]> mwaskom <[email protected]>
86+
Michael Waskom <[email protected]> mwaskom <[email protected]>
87+
Oscar Esteban <[email protected]> Oscar Esteban <code@oscaresteban>
88+
Oscar Esteban <[email protected]> oesteban <[email protected]>
89+
Russell Poldrack <[email protected]> Russ Poldrack <[email protected]>
90+
Russell Poldrack <[email protected]> poldrack <[email protected]>
91+
Satrajit Ghosh <[email protected]> Satrajit Ghosh <[email protected]>
92+
Shariq Iqbal <[email protected]> shariqiqbal2810 <[email protected]>
93+
Shariq Iqbal <[email protected]> shariqiqbal2810 <[email protected]>
94+
Shoshana Berleant <[email protected]> Shoshana Berleant <nope>
95+
Shoshana Berleant <[email protected]> Shoshana Berleant <[email protected]>
96+
Simon R <[email protected]> Simon Rothmeier <[email protected]>
97+
98+
99+
Steven Giavasis <[email protected]> Steven Giavasis <[email protected]>
100+
Steven Giavasis <[email protected]> sgiavasis <[email protected]>
101+
Steven Giavasis <[email protected]> sgiavasis <[email protected]>
102+
Tristan Glatard <[email protected]> Tristan Glatard <[email protected]>
103+
Victor Saase <[email protected]> vsaase <[email protected]>
104+
William Triplett <[email protected]> William Triplett <[email protected]>
105+
Yaroslav Halchenko <[email protected]> Yaroslav Halchenko <[email protected]>
106+

.travis.yml

Lines changed: 39 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,49 @@
11
cache:
2-
- apt
2+
apt: true
3+
34
language: python
45
python:
56
- 2.7
7+
- 3.4
8+
- 3.5
9+
- 3.6
610
env:
7-
- INSTALL_DEB_DEPENDECIES=true
8-
- INSTALL_DEB_DEPENDECIES=false
11+
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler"
12+
- INSTALL_DEB_DEPENDECIES=false NIPYPE_EXTRAS="doc,tests,fmri,profiler"
13+
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler,duecredit"
914
before_install:
10-
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh
11-
-O miniconda.sh; else wget http://repo.continuum.io/miniconda/Miniconda3-3.6.0-Linux-x86_64.sh
12-
-O miniconda.sh; fi
13-
- chmod +x miniconda.sh
14-
- "./miniconda.sh -b"
15-
- export PATH=/home/travis/miniconda/bin:$PATH
16-
- if $INSTALL_DEB_DEPENDECIES; then sudo rm -rf /dev/shm; fi
17-
- if $INSTALL_DEB_DEPENDECIES; then sudo ln -s /run/shm /dev/shm; fi
18-
- if $INSTALL_DEB_DEPENDECIES; then bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh);
19-
fi
20-
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq --no-install-recommends
21-
fsl afni elastix; fi
22-
- if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -qq fsl-atlases;
23-
fi
24-
- if $INSTALL_DEB_DEPENDECIES; then source /etc/fsl/fsl.sh; fi
15+
- function apt_inst {
16+
if $INSTALL_DEB_DEPENDECIES; then sudo rm -rf /dev/shm; fi &&
17+
if $INSTALL_DEB_DEPENDECIES; then sudo ln -s /run/shm /dev/shm; fi &&
18+
bash <(wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh) &&
19+
sudo apt-get -y update &&
20+
sudo apt-get -y install xvfb fusefat graphviz &&
21+
if $INSTALL_DEB_DEPENDECIES; then travis_retry sudo apt-get install -y -qq
22+
fsl afni elastix fsl-atlases; fi &&
23+
if $INSTALL_DEB_DEPENDECIES; then
24+
source /etc/fsl/fsl.sh;
25+
source /etc/afni/afni.sh;
26+
export FSLOUTPUTTYPE=NIFTI_GZ; fi }
27+
- function conda_inst {
28+
export CONDA_HOME=$HOME/conda &&
29+
wget https://repo.continuum.io/miniconda/Miniconda${TRAVIS_PYTHON_VERSION:0:1}-latest-Linux-x86_64.sh
30+
-O /home/travis/.cache/conda.sh &&
31+
bash /home/travis/.cache/conda.sh -b -p ${CONDA_HOME} &&
32+
export PATH=${CONDA_HOME}/bin:$PATH &&
33+
hash -r &&
34+
conda config --set always_yes yes --set changeps1 no &&
35+
conda update -q conda &&
36+
conda install python=${TRAVIS_PYTHON_VERSION} &&
37+
conda config --add channels conda-forge &&
38+
conda install -y nipype icu &&
39+
rm -r ${CONDA_HOME}/lib/python${TRAVIS_PYTHON_VERSION}/site-packages/nipype*; }
40+
# Add install of vtk and mayavi to test mesh (disabled): conda install -y vtk mayavi
41+
- travis_retry apt_inst
42+
- travis_retry conda_inst
2543
install:
26-
- conda update --yes conda
27-
- conda create -n testenv --yes pip python=$TRAVIS_PYTHON_VERSION
28-
- source activate testenv
29-
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then pip install ordereddict; fi
30-
- conda install --yes numpy scipy nose traits networkx dateutil
31-
- pip install nibabel
32-
- pip install python-coveralls
33-
- pip install nose-cov
34-
- pip install https://github.com/RDFLib/rdflib/archive/master.zip
35-
- pip install https://github.com/trungdong/prov/archive/rdf.zip
36-
- python setup.py install
44+
- travis_retry pip install -e .[$NIPYPE_EXTRAS]
3745
script:
38-
- nosetests --with-doctest --with-cov --cov nipype --cov-config .coveragerc --logging-level=INFO
39-
after_success:
40-
- coveralls --config_file .coveragerc
46+
- py.test -v --doctest-modules nipype
4147
deploy:
4248
provider: pypi
4349
user: satra
@@ -47,4 +53,4 @@ deploy:
4753
tags: true
4854
repo: nipy/nipype
4955
branch: master
50-
distributions: "sdist bdist_wheel"
56+
distributions: "sdist"

0 commit comments

Comments
 (0)