From f3d1317f36e8d25d24f33e782e0d26ff15962f3d Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 16:43:48 -0400 Subject: [PATCH 01/11] DOC: Update changelog --- doc/changelog/1.X.X-changelog | 26 ++++++++++++++++++++++++++ tools/update_changes.sh | 3 ++- 2 files changed, 28 insertions(+), 1 deletion(-) mode change 100644 => 100755 tools/update_changes.sh diff --git a/doc/changelog/1.X.X-changelog b/doc/changelog/1.X.X-changelog index 296e7e5c0e..ef38af2eba 100644 --- a/doc/changelog/1.X.X-changelog +++ b/doc/changelog/1.X.X-changelog @@ -1,3 +1,29 @@ +1.2.1 (August 19, 2019) +======================= + +##### [Full changelog](https://github.com/nipy/nipype/milestone/32?closed=1) + + * FIX: Resolve/rebase paths from/to results files (https://github.com/nipy/nipype/pull/2971) + * FIX: Use ``load_resultfile`` when loading a results pickle (https://github.com/nipy/nipype/pull/2985) + * FIX: Incorrect extension identified when checking ``File`` traits (https://github.com/nipy/nipype/pull/2987) + * FIX: Correctly pickle ``OuputMultiObject`` traits (https://github.com/nipy/nipype/pull/2983) + * FIX: Improve output handling in DWIDenoise and DWIBiasCorrect (https://github.com/nipy/nipype/pull/2978) + * FIX: Docker build (https://github.com/nipy/nipype/pull/2963) + * FIX: Remove '=' signs from EddyQuad argument specifications (https://github.com/nipy/nipype/pull/2941) + * FIX: Set input model to bedpostx for camino.TrackBedpostxProba (https://github.com/nipy/nipype/pull/2947) + * FIX: Allow ``max_sh``not to be set (auto mode) (https://github.com/nipy/nipype/pull/2940) + * ENH: Let ``indirectory`` handle ``nipype.utils.filemanip.Path`` (https://github.com/nipy/nipype/pull/2989) + * ENH: Add resolve/rebase ``BasePath`` traits methods & tests (https://github.com/nipy/nipype/pull/2970) + * ENH: Modify ``Directory`` and ``File`` traits to get along with pathlib (https://github.com/nipy/nipype/pull/2962) + * REF: Update nipype2boutiques script (https://github.com/nipy/nipype/pull/2894) + * TST: Parametrize JoinNode expansion tests over config ``needed_outputs`` (https://github.com/nipy/nipype/pull/2981) + * MAINT: Pin lxml<4.4.0 for Python 3.4 (https://github.com/nipy/nipype/pull/2980) + * MAINT: Refactor ``aggregate_outputs`` for readability (https://github.com/nipy/nipype/pull/2969) + * MAINT: Bump neurodocker version (https://github.com/nipy/nipype/pull/2965) + * MAINT: Various minor improvements to complement previous PR (https://github.com/nipy/nipype/pull/2964) + * MAINT: Sort dependencies alphabetically (https://github.com/nipy/nipype/pull/2961) + + 1.2.0 (May 09, 2019) ==================== diff --git a/tools/update_changes.sh b/tools/update_changes.sh old mode 100644 new mode 100755 index 017c0623f2..1ba3528b1f --- a/tools/update_changes.sh +++ b/tools/update_changes.sh @@ -12,7 +12,8 @@ set -u # Treat unset variables as an error when substituting. set -x # Print command traces before executing command. -CHANGES=../doc/changelog/1.X.X-changelog +ROOT=$( git rev-parse --show-toplevel ) +CHANGES=$ROOT/doc/changelog/1.X.X-changelog # Check whether the Upcoming release header is present head -1 $CHANGES | grep -q Upcoming From 82c4c6c41979913e0667d23c8c24a9e88a58631f Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 16:49:59 -0400 Subject: [PATCH 02/11] MNT: Update mailmap, zenodo --- .mailmap | 3 +++ .zenodo.json | 75 ++++++++++++++++++++++++++++------------------------ 2 files changed, 43 insertions(+), 35 deletions(-) diff --git a/.mailmap b/.mailmap index 02f5d57270..259fbe170d 100644 --- a/.mailmap +++ b/.mailmap @@ -139,6 +139,9 @@ Michael Clark Clark Michael Dayan Michael Michael Dayan Michael Michael Dayan mick-d +Michael Dayan Michael +Michael Joseph mjoseph +Michael Joseph Michael Joseph Michael Philipp Notter Michael Notter Michael Philipp Notter miykael Michael Waskom Michael Waskom diff --git a/.zenodo.json b/.zenodo.json index a7333e6ec4..4e6443b8c7 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -30,16 +30,16 @@ "name": "Jarecka, Dorota", "orcid": "0000-0003-1857-8129" }, - { - "affiliation": "The Laboratory for Investigative Neurophysiology (The LINE), Department of Radiology and Department of Clinical Neurosciences, Lausanne, Switzerland; Center for Biomedical Imaging (CIBM), Lausanne, Switzerland", - "name": "Notter, Michael Philipp", - "orcid": "0000-0002-5866-047X" - }, { "affiliation": "University of Iowa", "name": "Johnson, Hans", "orcid": "0000-0001-9513-2660" }, + { + "affiliation": "The Laboratory for Investigative Neurophysiology (The LINE), Department of Radiology and Department of Clinical Neurosciences, Lausanne, Switzerland; Center for Biomedical Imaging (CIBM), Lausanne, Switzerland", + "name": "Notter, Michael Philipp", + "orcid": "0000-0002-5866-047X" + }, { "name": "Burns, Christopher" }, @@ -81,14 +81,14 @@ { "name": "Modat, Marc" }, - { - "name": "Loney, Fred" - }, { "affiliation": "Developer", "name": "Clark, Daniel", "orcid": "0000-0002-8121-8954" }, + { + "name": "Loney, Fred" + }, { "affiliation": "Department of Electrical and Computer Engineering, Johns Hopkins University", "name": "Dewey, Blake E", @@ -125,16 +125,16 @@ "name": "Clark, Dav", "orcid": "0000-0002-3982-4416" }, - { - "affiliation": "Dartmouth College", - "name": "Visconti di Oleggio Castello, Matteo", - "orcid": "0000-0001-7931-5272" - }, { "affiliation": "UC Berkeley - UCSF Graduate Program in Bioengineering", "name": "Keshavan, Anisha", "orcid": "0000-0003-3554-043X" }, + { + "affiliation": "Dartmouth College", + "name": "Visconti di Oleggio Castello, Matteo", + "orcid": "0000-0001-7931-5272" + }, { "name": "Pinsard, Basile" }, @@ -166,11 +166,6 @@ "name": "Guillon, Je\u0301re\u0301my", "orcid": "0000-0002-2672-7510" }, - { - "affiliation": "Montreal Neurological Institute and Hospital", - "name": "Markello, Ross", - "orcid": "0000-0003-1057-1336" - }, { "affiliation": "The University of Washington eScience Institute", "name": "Rokem, Ariel", @@ -185,6 +180,11 @@ "name": "DuPre, Elizabeth", "orcid": "0000-0003-1358-196X" }, + { + "affiliation": "Montreal Neurological Institute and Hospital", + "name": "Markello, Ross", + "orcid": "0000-0003-1057-1336" + }, { "affiliation": "MIT", "name": "Kaczmarzyk, Jakub", @@ -275,10 +275,6 @@ { "name": "Dubois, Mathieu" }, - { - "name": "Heinsfeld, Anibal S\u00f3lon", - "orcid": "0000-0002-2050-0614" - }, { "affiliation": "Child Mind Institute", "name": "Frohlich, Caroline" @@ -293,12 +289,11 @@ "orcid": "0000-0002-7796-8795" }, { - "name": "Kent, James" + "name": "Heinsfeld, Anibal S\u00f3lon", + "orcid": "0000-0002-2050-0614" }, { - "affiliation": "University of Texas at Austin", - "name": "De La Vega, Alejandro", - "orcid": "0000-0001-9062-3778" + "name": "Kent, James" }, { "name": "Watanabe, Aimi" @@ -316,6 +311,11 @@ "name": "Nichols, B. Nolan", "orcid": "0000-0003-1099-3328" }, + { + "affiliation": "University of Texas at Austin", + "name": "De La Vega, Alejandro", + "orcid": "0000-0001-9062-3778" + }, { "affiliation": "University College London", "name": "Eshaghi, Arman", @@ -389,11 +389,6 @@ { "name": "Haselgrove, Christian" }, - { - "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.", - "name": "Glatard, Tristan", - "orcid": "0000-0003-2620-5883" - }, { "name": "Renfro, Mandy" }, @@ -469,6 +464,11 @@ { "name": "Park, Anne" }, + { + "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.", + "name": "Glatard, Tristan", + "orcid": "0000-0003-2620-5883" + }, { "name": "Poldrack, Russell" }, @@ -485,10 +485,6 @@ "name": "Cooper, Gavin", "orcid": "0000-0002-7186-5293" }, - { - "affiliation": "Institute of Imaging & Computer Vision, RWTH Aachen University, Germany", - "name": "Weninger, Leon" - }, { "name": "Inati, Souheil" }, @@ -501,6 +497,10 @@ "name": "Lukas Snoek", "orcid": "0000-0001-8972-204X" }, + { + "affiliation": "Institute of Imaging & Computer Vision, RWTH Aachen University, Germany", + "name": "Weninger, Leon" + }, { "name": "Marina, Ana" }, @@ -639,6 +639,11 @@ "name": "Meyers, Benjamin", "orcid": "0000-0001-9137-4363" }, + { + "affiliation": "Washington University in St Louis", + "name": "Van, Andrew", + "orcid": "0000-0002-8787-0943" + }, { "name": "Davison, Andrew" }, From 79ee1b3f95987a762fa1ef2ffd2294fd4fff458d Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 16:59:21 -0400 Subject: [PATCH 03/11] MNT: Version 1.2.0 --- doc/conf.py | 2 +- nipype/info.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/conf.py b/doc/conf.py index 4049fe7ee5..2a253eb7aa 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -82,7 +82,7 @@ # The short X.Y version. version = nipype.__version__ # The full version, including alpha/beta/rc tags. -release = "1.2.0" +release = "1.2.1" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/nipype/info.py b/nipype/info.py index d1aeb56f5a..868802d250 100644 --- a/nipype/info.py +++ b/nipype/info.py @@ -11,7 +11,7 @@ # full release. '.dev' as a version_extra string means this is a development # version # Remove -dev for release -__version__ = '1.2.1-dev' +__version__ = '1.2.1' def get_nipype_gitversion(): From 74c34e0830afbf7b7d30bbe3456868d2b8be25ee Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 17:12:59 -0400 Subject: [PATCH 04/11] MNT: Constrain numpy < 1.17 if Python < 3 --- nipype/info.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nipype/info.py b/nipype/info.py index 868802d250..63b4d3673d 100644 --- a/nipype/info.py +++ b/nipype/info.py @@ -107,6 +107,8 @@ def get_nipype_gitversion(): # https://www.opensourceanswers.com/blog/you-shouldnt-use-python-37-for-data-science-right-now.html NUMPY_MIN_VERSION_37 = '1.15.3' NUMPY_BAD_VERSION_27 = '1.16.0' +# Numpy drops 2.7 support in 1.17 +NUMPY_MAX_VERSION_27 = '1.17.0' SCIPY_MIN_VERSION = '0.14' TRAITS_MIN_VERSION = '4.6' DATEUTIL_MIN_VERSION = '2.2' @@ -146,7 +148,9 @@ def get_nipype_gitversion(): 'nibabel>=%s' % NIBABEL_MIN_VERSION, 'numpy>=%s ; python_version > "3.0" and python_version < "3.7"' % NUMPY_MIN_VERSION, 'numpy>=%s ; python_version >= "3.7"' % NUMPY_MIN_VERSION_37, - 'numpy>=%s,!=%s ; python_version == "2.7"' % (NUMPY_MIN_VERSION, NUMPY_BAD_VERSION_27), + 'numpy>=%s,!=%s,<%s ; python_version == "2.7"' % (NUMPY_MIN_VERSION, + NUMPY_BAD_VERSION_27, + NUMPY_MAX_VERSION_27), 'packaging', 'pathlib2; python_version <= "3.4"', 'prov>=%s' % PROV_VERSION, From b1b56ef4655b343cd6293626d95278bd64bc9b61 Mon Sep 17 00:00:00 2001 From: Garikoitz Lerma-Usabiaga Date: Fri, 16 Aug 2019 14:32:29 -0700 Subject: [PATCH 05/11] Update .zenodo.json --- .zenodo.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.zenodo.json b/.zenodo.json index 4e6443b8c7..d6ec94f140 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -501,6 +501,11 @@ "affiliation": "Institute of Imaging & Computer Vision, RWTH Aachen University, Germany", "name": "Weninger, Leon" }, + { + "affiliation": "Stanford University", + "name": "Lerma-Usabiaga, Garikoitz", + "orcid": "0000-0001-9800-4816" + }, { "name": "Marina, Ana" }, From dcf120806a025f6103ccdbba39b1f8814d94e379 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 18:48:57 -0400 Subject: [PATCH 06/11] CI: Update pip to respect python_requires --- .circleci/config.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c2356cebdf..828fcf44f6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -339,13 +339,14 @@ jobs: - run: name: Check pypi preconditions command: | - pip install --upgrade twine future wheel readme_renderer setuptools + pip install --upgrade pip twine future wheel readme_renderer setuptools python setup.py check -r -s python setup.py sdist bdist_wheel - run: name: Validate Python 2 installation command: | pyenv local 2.7.12 + pip install --upgrade pip pip install dist/nipype-*-py2.py3-none-any.whl # Futures should install in Python 2 pip show futures 2>/dev/null | grep "Name: futures" @@ -353,6 +354,7 @@ jobs: name: Validate Python 3 installation command: | pyenv local 3.5.2 + pip install --upgrade pip pip install dist/nipype-*-py2.py3-none-any.whl # Futures should not install in Python 3 test $(pip show futures 2>/dev/null | wc -l) = "0" From 3a37ba000083c86898c8b5fca31b2786933f2ebc Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 18:51:23 -0400 Subject: [PATCH 07/11] MNT: Constrain scipy < 1.3 if Python < 3.5 --- nipype/info.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nipype/info.py b/nipype/info.py index 63b4d3673d..9aaa904580 100644 --- a/nipype/info.py +++ b/nipype/info.py @@ -110,6 +110,8 @@ def get_nipype_gitversion(): # Numpy drops 2.7 support in 1.17 NUMPY_MAX_VERSION_27 = '1.17.0' SCIPY_MIN_VERSION = '0.14' +# Scipy drops 2.7 and 3.4 support in 1.3 +SCIPY_MAX_VERSION_34 = '1.3.0' TRAITS_MIN_VERSION = '4.6' DATEUTIL_MIN_VERSION = '2.2' FUTURE_MIN_VERSION = '0.16.0' @@ -157,7 +159,8 @@ def get_nipype_gitversion(): 'pydot>=%s' % PYDOT_MIN_VERSION, 'pydotplus', 'python-dateutil>=%s' % DATEUTIL_MIN_VERSION, - 'scipy>=%s' % SCIPY_MIN_VERSION, + 'scipy>=%s ; python_version >= "3.5"' % SCIPY_MIN_VERSION, + 'scipy>=%s,<%s ; python_version <= "3.4"' % (SCIPY_MIN_VERSION, SCIPY_MAX_VERSION_34), 'simplejson>=%s' % SIMPLEJSON_MIN_VERSION, 'traits>=%s,!=5.0' % TRAITS_MIN_VERSION, ] From 9c90924651caf139919d03451428f6a5b45eb4c5 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Fri, 16 Aug 2019 21:46:46 -0400 Subject: [PATCH 08/11] MNT: Update Python version classifiers --- nipype/info.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nipype/info.py b/nipype/info.py index 9aaa904580..da010b51fa 100644 --- a/nipype/info.py +++ b/nipype/info.py @@ -59,7 +59,9 @@ def get_nipype_gitversion(): 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'Topic :: Scientific/Engineering' + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'Topic :: Scientific/Engineering' ] description = 'Neuroimaging in Python: Pipelines and Interfaces' From a9b65f30aa22692e02f5d63faae62c67f2ef352e Mon Sep 17 00:00:00 2001 From: Erin Benderoff Date: Fri, 16 Aug 2019 22:57:44 -0400 Subject: [PATCH 09/11] add name to zenodo --- .zenodo.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.zenodo.json b/.zenodo.json index d6ec94f140..a49f9b002f 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -78,6 +78,10 @@ "affiliation": "Shattuck Lab, UCLA Brain Mapping Center", "name": "Wong, Jason" }, + { + "affiliation": "Concordia University", + "name": "Benderoff, Erin" + }, { "name": "Modat, Marc" }, From 735ae5920da4b2cb3ce9046589810af8ece9d6a3 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Sat, 17 Aug 2019 09:15:49 -0400 Subject: [PATCH 10/11] DOC: Update changelog --- doc/changelog/1.X.X-changelog | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/changelog/1.X.X-changelog b/doc/changelog/1.X.X-changelog index ef38af2eba..9ef4474bf1 100644 --- a/doc/changelog/1.X.X-changelog +++ b/doc/changelog/1.X.X-changelog @@ -12,6 +12,7 @@ * FIX: Remove '=' signs from EddyQuad argument specifications (https://github.com/nipy/nipype/pull/2941) * FIX: Set input model to bedpostx for camino.TrackBedpostxProba (https://github.com/nipy/nipype/pull/2947) * FIX: Allow ``max_sh``not to be set (auto mode) (https://github.com/nipy/nipype/pull/2940) + * ENH: Update mrtrix reconst.py EstimateFOD max_sh to be able to accept list (https://github.com/nipy/nipype/pull/2990) * ENH: Let ``indirectory`` handle ``nipype.utils.filemanip.Path`` (https://github.com/nipy/nipype/pull/2989) * ENH: Add resolve/rebase ``BasePath`` traits methods & tests (https://github.com/nipy/nipype/pull/2970) * ENH: Modify ``Directory`` and ``File`` traits to get along with pathlib (https://github.com/nipy/nipype/pull/2962) From 17019b417e87bfb53b9e4cfd3e2e483bc6eaf88c Mon Sep 17 00:00:00 2001 From: Lucinda Sisk Date: Sat, 17 Aug 2019 10:54:39 -0400 Subject: [PATCH 11/11] Update .zenodo.json --- .zenodo.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.zenodo.json b/.zenodo.json index a49f9b002f..ee1771da97 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -432,6 +432,11 @@ { "name": "Hallquist, Michael" }, + { + "affiliation": "Yale University; New Haven, CT, United States", + "name": "Sisk, Lucinda M.", + "orcid": "0000-0003-4900-9770" + }, { "affiliation": "TIB \u2013 Leibniz Information Centre for Science and Technology and University Library, Hannover, Germany", "name": "Leinweber, Katrin",