Skip to content

Commit 8c368c9

Browse files
authored
Merge branch 'master' into maint/nilearn_0_5
2 parents fd52a30 + 5d2fe1d commit 8c368c9

File tree

1,395 files changed

+67231
-90263
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,395 files changed

+67231
-90263
lines changed

.circleci/config.yml

Lines changed: 86 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -56,20 +56,6 @@ _build_main_image_py36: &build_main_image_py36
5656
--build-arg VCS_REF="$(git rev-parse --short HEAD)" \
5757
--build-arg VERSION="${CIRCLE_TAG}" /home/circleci/nipype
5858
59-
_build_main_image_py27: &build_main_image_py27
60-
name: Build main image (py27)
61-
no_output_timeout: 60m
62-
command: |
63-
tools/retry_cmd.sh -n 5 -s 15 \
64-
docker build \
65-
--rm=false \
66-
--tag nipype/nipype:py27 \
67-
--build-arg PYTHON_VERSION_MAJOR=2 \
68-
--build-arg PYTHON_VERSION_MINOR=7 \
69-
--build-arg BUILD_DATE="$(date -u +"%Y-%m-%dT%H:%M:%SZ")" \
70-
--build-arg VCS_REF="$(git rev-parse --short HEAD)" \
71-
--build-arg VERSION="${CIRCLE_TAG}-py27" /home/circleci/nipype
72-
7359
_download_test_data: &_download_test_data
7460
name: Download test data
7561
no_output_timeout: 20m
@@ -113,7 +99,6 @@ _run_codecov_smoke: &_run_codecov_smoke
11399
114100
version: 2
115101
jobs:
116-
117102
compare_base_dockerfiles:
118103
docker:
119104
- image: docker:17.10.0-ce-git
@@ -161,47 +146,33 @@ jobs:
161146
- run: *modify_nipype_version
162147
- run: *get_base_image
163148
- run: *build_main_image_py36
164-
- run: *build_main_image_py27
165149
- run: *_get_codecov
166150
- run: *_download_test_data
167151
- run: *prepare_working_directory
168152
- run:
169-
name: Run pytests (py36)
153+
name: Run pytests
170154
no_output_timeout: 30m
171155
environment: *test_environment
172-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_pytest.sh
173-
- run:
174-
name: Run pytests (py27)
175-
no_output_timeout: 30m
176-
environment: *test_environment
177-
command: bash -ux /home/circleci/nipype/.circleci/test_py2_pytest.sh
156+
command: bash -ux /home/circleci/nipype/.circleci/test_pytest.sh
178157
- run: *_run_codecov_coverage
179158
- store_artifacts: *store_artifacts_kwds
180159
- store_test_results: *store_artifacts_kwds
181-
- run:
182-
name: Build docs (py36)
183-
no_output_timeout: 30m
184-
environment: *test_environment
185-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_docs.sh
186-
- store_artifacts:
187-
path: /home/circleci/work/docs
188160
- run:
189161
name: Save Docker images to workspace if on master
190162
no_output_timeout: 60m
191163
command: |
192164
if [ "$CIRCLE_BRANCH" = "master" -a -z "$CIRCLE_PULL_REQUEST" ]; then
193165
docker save nipype/nipype:base \
194166
nipype/nipype:latest \
195-
nipype/nipype:py27 \
196-
nipype/nipype:py36 | gzip -1 > /tmp/docker/nipype-base-latest-py36-py27.tar.gz \
197-
&& du -h /tmp/docker/nipype-base-latest-py36-py27.tar.gz
167+
nipype/nipype:py36 | gzip -1 > /tmp/docker/nipype-base-latest-py36.tar.gz \
168+
&& du -h /tmp/docker/nipype-base-latest-py36.tar.gz
198169
fi
199170
- persist_to_workspace:
200171
root: /tmp
201172
paths:
202173
- docker
203174

204-
test_py3_fmri_fsl_spm:
175+
test_fmri_fsl_spm:
205176
machine: *machine_kwds
206177
working_directory: /home/circleci/nipype
207178
steps:
@@ -218,24 +189,24 @@ jobs:
218189
- run: *_download_test_data
219190
- run: *prepare_working_directory
220191
- run:
221-
name: Run FSL reuse pipeline (py36)
192+
name: Run FSL reuse pipeline
222193
no_output_timeout: 40m
223194
environment: *test_environment
224-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_fsl_reuse_linear_l1.sh
195+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_fsl_reuse_linear_l1.sh
225196
- run:
226-
name: Run SPM test workflow - 3D inputs (py36)
197+
name: Run SPM test workflow - 3D inputs
227198
no_output_timeout: 40m
228199
environment: *test_environment
229-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_spm_linear_3d.sh
200+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_linear_3d.sh
230201
- run:
231-
name: Run SPM test workflow - 4D inputs (py36)
202+
name: Run SPM test workflow - 4D inputs
232203
no_output_timeout: 40m
233204
environment: *test_environment
234-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_spm_linear_4d.sh
205+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_linear_4d.sh
235206
- run: *_run_codecov_smoke
236207
- store_artifacts: *store_artifacts_kwds
237208

238-
test_py3_fmri_spm_dartel_multiproc:
209+
test_fmri_spm_dartel_multiproc:
239210
machine: *machine_kwds
240211
working_directory: /home/circleci/nipype
241212
steps:
@@ -252,15 +223,15 @@ jobs:
252223
- run: *_download_test_data
253224
- run: *prepare_working_directory
254225
- run:
255-
name: Run SPM DARTEL Level 1 pipeline (py36)
226+
name: Run SPM DARTEL Level 1 pipeline
256227
no_output_timeout: 1h
257228
environment: *test_environment
258-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_spm_dartel_multiproc_l1.sh
229+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_dartel_multiproc_l1.sh
259230
- run:
260-
name: Run SPM DARTEL Level 2 pipeline (py36)
231+
name: Run SPM DARTEL Level 2 pipeline
261232
no_output_timeout: 30m
262233
environment: *test_environment
263-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_spm_dartel_multiproc_l2.sh
234+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_dartel_multiproc_l2.sh
264235
- run: *_run_codecov_smoke
265236
- store_artifacts: *store_artifacts_kwds
266237

@@ -277,25 +248,24 @@ jobs:
277248
- run: *modify_nipype_version
278249
- run: *get_base_image
279250
- run: *build_main_image_py36
280-
- run: *build_main_image_py27
281251
- run: *_get_codecov
282252
- run: *_download_test_data
283253
- run: *prepare_working_directory
284254
- run:
285-
name: Run SPM Nested Level 1 pipeline (py36)
255+
name: Run SPM Nested Level 1 pipeline
286256
no_output_timeout: 1h
287257
environment: *test_environment
288-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_spm_nested_multiproc_l1.sh
258+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_nested_multiproc_l1.sh
289259
- run:
290-
name: Run SPM Nested Level 2 pipeline (py27)
260+
name: Run SPM Nested Level 2 pipeline
291261
no_output_timeout: 30m
292262
environment: *test_environment
293-
command: bash -ux /home/circleci/nipype/.circleci/test_py2_fmri_spm_nested_multiproc_l2.sh
263+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_spm_nested_multiproc_l2.sh
294264
- run:
295-
name: Run FSL FEEDS pipeline (py36)
265+
name: Run FSL FEEDS pipeline
296266
no_output_timeout: 40m
297267
environment: *test_environment
298-
command: bash -ux /home/circleci/nipype/.circleci/test_py3_fmri_fsl_feeds_linear_l1.sh
268+
command: bash -ux /home/circleci/nipype/.circleci/test_fmri_fsl_feeds_linear_l1.sh
299269
- run: *_run_codecov_smoke
300270
- store_artifacts: *store_artifacts_kwds
301271

@@ -310,7 +280,7 @@ jobs:
310280
name: Load saved Docker images.
311281
no_output_timeout: 60m
312282
command: |
313-
docker load < /tmp/docker/nipype-base-latest-py36-py27.tar.gz
283+
docker load < /tmp/docker/nipype-base-latest-py36.tar.gz
314284
- run:
315285
name: Push to DockerHub
316286
no_output_timeout: 120m
@@ -319,7 +289,6 @@ jobs:
319289
docker push nipype/nipype:base
320290
docker push nipype/nipype:latest
321291
docker push nipype/nipype:py36
322-
docker push nipype/nipype:py27
323292
- run:
324293
name: Move pruned Dockerfile to /tmp/docker/cache directory
325294
command: |
@@ -339,33 +308,24 @@ jobs:
339308
- run:
340309
name: Check pypi preconditions
341310
command: |
311+
pyenv local 3.6.5
342312
pip install --upgrade pip twine future wheel readme_renderer setuptools
343313
python setup.py sdist bdist_wheel
344314
twine check dist/*
345-
- run:
346-
name: Validate Python 2 installation
347-
command: |
348-
pyenv local 2.7.12
349-
pip install --upgrade pip
350-
pip install dist/nipype-*-py2.py3-none-any.whl
351-
# Futures should install in Python 2
352-
pip show futures 2>/dev/null | grep "Name: futures"
353315
- run:
354316
name: Validate Python 3 installation
355317
command: |
356-
pyenv local 3.5.2
318+
pyenv local 3.6.5
357319
pip install --upgrade pip
358-
pip install dist/nipype-*-py2.py3-none-any.whl
359-
# Futures should not install in Python 3
360-
test $(pip show futures 2>/dev/null | wc -l) = "0"
320+
pip install dist/nipype-*-py3-none-any.whl
361321
- run:
362322
name: Validate Python 3.7 installation
363323
command: |
364324
pyenv local 3.7.0
365325
pip install --upgrade pip
366326
# Pre-install a version of numpy that will not pass
367327
pip install numpy==1.15.0
368-
pip install dist/nipype-*-py2.py3-none-any.whl
328+
pip install dist/nipype-*-py3-none-any.whl
369329
# Numpy should be upgraded to >= 1.15.3
370330
test "$(pip show numpy | grep Version)" \> "Version: 1.15.2"
371331
- run:
@@ -388,7 +348,8 @@ jobs:
388348
- run:
389349
name: Deploy to PyPI
390350
command: |
391-
pip install --upgrade twine future wheel readme_renderer setuptools
351+
pyenv local 3.6.5
352+
pip install --upgrade twine wheel readme_renderer setuptools
392353
python setup.py check -r -s
393354
python setup.py sdist bdist_wheel
394355
twine upload dist/*
@@ -425,33 +386,85 @@ jobs:
425386
ssh-add ~/.ssh/id_ed25519
426387
/home/circleci/nipype/tools/feedstock.sh
427388
389+
build_docs:
390+
docker:
391+
- image: python:3.7.4
392+
working_directory: /tmp/src/nipype
393+
environment:
394+
- FSLOUTPUTTYPE: 'NIFTI'
395+
steps:
396+
- checkout
397+
- run:
398+
name: Check Python version and upgrade pip
399+
command: |
400+
python --version
401+
python -m pip install -U pip
402+
- run:
403+
name: Install graphviz
404+
command: |
405+
apt-get update
406+
apt-get install -y graphviz
407+
- run:
408+
name: Install Requirements (may contain pinned versions)
409+
command: python -m pip install -r doc/requirements.txt
410+
- run:
411+
name: Install NiPype
412+
command: python -m pip install ".[doc]"
413+
- run:
414+
name: Build documentation
415+
command: make -C doc html
416+
- store_artifacts:
417+
path: /tmp/src/nipype/doc/_build/html
418+
428419
workflows:
429420
version: 2
430421
build_test_deploy:
431422
jobs:
423+
- build_docs:
424+
filters:
425+
tags:
426+
only: /.*/
432427
- pypi_precheck:
433428
filters:
434429
branches:
435-
only: /rel\/.*/
430+
only: /(rel|dev)\/.*/
436431
tags:
437432
only: /.*/
438433
- compare_base_dockerfiles:
439434
filters:
435+
branches:
436+
ignore:
437+
- /docs?\/.*/
440438
tags:
441439
only: /.*/
442440
- test_pytest:
443441
filters:
442+
branches:
443+
ignore:
444+
- /docs?\/.*/
444445
tags:
445446
only: /.*/
446447
requires:
447448
- compare_base_dockerfiles
448-
- test_py3_fmri_fsl_spm:
449+
- test_fmri_fsl_spm:
450+
filters:
451+
branches:
452+
ignore:
453+
- /docs?\/.*/
449454
requires:
450455
- compare_base_dockerfiles
451-
- test_py3_fmri_spm_dartel_multiproc:
456+
- test_fmri_spm_dartel_multiproc:
457+
filters:
458+
branches:
459+
ignore:
460+
- /docs?\/.*/
452461
requires:
453462
- compare_base_dockerfiles
454463
- test_fmri_spm_nested_fsl_feeds:
464+
filters:
465+
branches:
466+
ignore:
467+
- /docs?\/.*/
455468
requires:
456469
- compare_base_dockerfiles
457470
- deploy_dockerhub:
@@ -461,8 +474,8 @@ workflows:
461474
requires:
462475
- test_pytest
463476
- test_fmri_spm_nested_fsl_feeds
464-
- test_py3_fmri_fsl_spm
465-
- test_py3_fmri_spm_dartel_multiproc
477+
- test_fmri_fsl_spm
478+
- test_fmri_spm_dartel_multiproc
466479
- deploy_pypi:
467480
filters:
468481
branches:
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
#!/bin/bash
22

3-
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e NIPYPE_NUMBER_OF_CPUS=4 -e NIPYPE_RESOURCE_MONITOR=1 "${DOCKER_IMAGE}:py27" /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ l2pipeline
3+
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e NIPYPE_NUMBER_OF_CPUS=4 -e NIPYPE_RESOURCE_MONITOR=1 "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ l2pipeline

.circleci/test_py2_pytest.sh

Lines changed: 0 additions & 3 deletions
This file was deleted.

.circleci/test_py3_docs.sh

Lines changed: 0 additions & 3 deletions
This file was deleted.
File renamed without changes.

.dockerignore

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,12 @@ src/
2222
.git
2323

2424
# other
25-
docs/**/*
26-
docs/
25+
doc/**/*
26+
doc/
2727
.cache/
2828
.circle/**/*
2929
.circle/
3030
circle.yml
31-
rtd_requirements.txt
3231
Vagrantfile
3332
.travis.yml
3433
.mailmap

.et

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{ "bad_versions" : [ "1.2.1",
2+
"1.2.3",
3+
"1.3.0"]
4+
}

0 commit comments

Comments
 (0)