From f710996597651b51acaffe6ca9931ba1a89da64a Mon Sep 17 00:00:00 2001 From: oesteban Date: Thu, 2 Jan 2020 11:46:53 -0800 Subject: [PATCH 1/3] FIX: Can't seem to import workflows from niflows in CircleCI Master is broken -- this PR relocates the pip install of ``niflow-nipype1-workflows`` so that it happens AFTER nipype was installed. --- docker/generate_dockerfiles.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docker/generate_dockerfiles.sh b/docker/generate_dockerfiles.sh index d6d880bfc5..01a8e62781 100755 --- a/docker/generate_dockerfiles.sh +++ b/docker/generate_dockerfiles.sh @@ -94,7 +94,7 @@ function generate_main_dockerfile() { conda_install='python=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR} libxml2 libxslt matplotlib mkl "numpy!=1.16.0" paramiko pandas psutil scikit-learn scipy traits rdflib' \ - pip_install="pytest-xdist niflow-nipype1-workflows" \ + pip_install="pytest-xdist" \ activate=true \ --copy docker/files/run_builddocs.sh docker/files/run_examples.sh \ docker/files/run_pytests.sh nipype/external/fsl_imglob.py /usr/bin/ \ @@ -110,6 +110,8 @@ function generate_main_dockerfile() { --miniconda use_env=neuro \ pip_opts="-e" \ pip_install="/src/nipype[all] https://github.com/bids-standard/pybids/tarball/0.7.0" \ + --miniconda use_env=neuro \ + pip_install="niflow-nipype1-workflows" \ --workdir /work \ --label org.label-schema.build-date='$BUILD_DATE' \ org.label-schema.name="NIPYPE" \ From 721207cc59e9ccc6b606a2acad4f87a4235fdfdc Mon Sep 17 00:00:00 2001 From: oesteban Date: Thu, 2 Jan 2020 12:40:47 -0800 Subject: [PATCH 2/3] fix: update imports nipype.workflows -> niflow.nipyp1.workflows --- examples/dmri_connectivity_advanced.py | 8 ++++---- examples/dmri_dtk_dti.py | 2 +- examples/dmri_dtk_odf.py | 2 +- examples/dmri_fsl_dti.py | 2 +- examples/dmri_group_connectivity_camino.py | 4 ++-- examples/dmri_group_connectivity_mrtrix.py | 4 ++-- examples/dmri_preprocessing.py | 4 ++-- examples/dmri_tbss_nki.py | 4 ++-- examples/fmri_ants_openfmri.py | 2 +- examples/fmri_fsl_feeds.py | 2 +- examples/fmri_fsl_reuse.py | 2 +- examples/fmri_spm_dartel.py | 2 +- examples/frontiers_paper/smoothing_comparison.py | 2 +- examples/nipype_tutorial.ipynb | 2 +- examples/smri_ants_build_template.py | 2 +- examples/smri_antsregistration_build_template.py | 2 +- examples/smri_fsreconall.py | 2 +- examples/tessellation_tutorial.py | 4 ++-- nipype/interfaces/fsl/epi.py | 2 +- nipype/sphinxext/plot_workflow.py | 4 ++-- 20 files changed, 29 insertions(+), 29 deletions(-) diff --git a/examples/dmri_connectivity_advanced.py b/examples/dmri_connectivity_advanced.py index 1c97eab5cb..c25f1fe488 100755 --- a/examples/dmri_connectivity_advanced.py +++ b/examples/dmri_connectivity_advanced.py @@ -58,12 +58,12 @@ import inspect import os import os.path as op # system functions -from nipype.workflows.dmri.fsl.dti import create_eddy_correct_pipeline -from nipype.workflows.dmri.camino.connectivity_mapping import select_aparc_annot +from niflow.nipype1.workflows.dmri.fsl.dti import create_eddy_correct_pipeline +from niflow.nipype1.workflows.dmri.camino.connectivity_mapping import select_aparc_annot from nipype.utils.misc import package_check import warnings -from nipype.workflows.dmri.connectivity.nx import create_networkx_pipeline, create_cmats_to_csv_pipeline -from nipype.workflows.smri.freesurfer import create_tessellation_flow +from niflow.nipype1.workflows.dmri.connectivity.nx import create_networkx_pipeline, create_cmats_to_csv_pipeline +from niflow.nipype1.workflows.smri.freesurfer import create_tessellation_flow try: package_check('cmp') diff --git a/examples/dmri_dtk_dti.py b/examples/dmri_dtk_dti.py index 2946e305cc..cd02d16391 100755 --- a/examples/dmri_dtk_dti.py +++ b/examples/dmri_dtk_dti.py @@ -26,7 +26,7 @@ import nipype.interfaces.utility as util # utility import nipype.pipeline.engine as pe # pypeline engine import os # system functions -from nipype.workflows.dmri.fsl.dti import create_eddy_correct_pipeline +from niflow.nipype1.workflows.dmri.fsl.dti import create_eddy_correct_pipeline """ Confirm package dependencies are installed. (This is only for the tutorial, rarely would you put this in your own code.) diff --git a/examples/dmri_dtk_odf.py b/examples/dmri_dtk_odf.py index 14367668b6..42a3b0e03a 100755 --- a/examples/dmri_dtk_odf.py +++ b/examples/dmri_dtk_odf.py @@ -26,7 +26,7 @@ import nipype.interfaces.utility as util # utility import nipype.pipeline.engine as pe # pypeline engine import os # system functions -from nipype.workflows.dmri.fsl.dti import create_eddy_correct_pipeline +from niflow.nipype1.workflows.dmri.fsl.dti import create_eddy_correct_pipeline """ Confirm package dependencies are installed. (This is only for the tutorial, rarely would you put this in your own code.) diff --git a/examples/dmri_fsl_dti.py b/examples/dmri_fsl_dti.py index 1ac833a98d..ffd114d2b3 100755 --- a/examples/dmri_fsl_dti.py +++ b/examples/dmri_fsl_dti.py @@ -25,7 +25,7 @@ import nipype.interfaces.utility as util # utility import nipype.pipeline.engine as pe # pypeline engine import os # system functions -from nipype.workflows.dmri.fsl.dti import create_eddy_correct_pipeline,\ +from niflow.nipype1.workflows.dmri.fsl.dti import create_eddy_correct_pipeline,\ create_bedpostx_pipeline """ Confirm package dependencies are installed. (This is only for the diff --git a/examples/dmri_group_connectivity_camino.py b/examples/dmri_group_connectivity_camino.py index b244adee86..8dbceb606c 100644 --- a/examples/dmri_group_connectivity_camino.py +++ b/examples/dmri_group_connectivity_camino.py @@ -57,8 +57,8 @@ import nipype.interfaces.freesurfer as fs # freesurfer import os.path as op # system functions import cmp -from nipype.workflows.dmri.camino.group_connectivity import create_group_connectivity_pipeline -from nipype.workflows.dmri.connectivity.group_connectivity import ( +from niflow.nipype1.workflows.dmri.camino.group_connectivity import create_group_connectivity_pipeline +from niflow.nipype1.workflows.dmri.connectivity.group_connectivity import ( create_merge_networks_by_group_workflow, create_merge_group_networks_workflow, create_average_networks_by_group_workflow) diff --git a/examples/dmri_group_connectivity_mrtrix.py b/examples/dmri_group_connectivity_mrtrix.py index e709b9ade9..cbe7ef7003 100644 --- a/examples/dmri_group_connectivity_mrtrix.py +++ b/examples/dmri_group_connectivity_mrtrix.py @@ -57,8 +57,8 @@ import nipype.interfaces.freesurfer as fs # freesurfer import os.path as op # system functions import cmp -from nipype.workflows.dmri.mrtrix.group_connectivity import create_group_connectivity_pipeline -from nipype.workflows.dmri.connectivity.group_connectivity import ( +from niflow.nipype1.workflows.dmri.mrtrix.group_connectivity import create_group_connectivity_pipeline +from niflow.nipype1.workflows.dmri.connectivity.group_connectivity import ( create_merge_network_results_by_group_workflow, create_merge_group_network_results_workflow, create_average_networks_by_group_workflow) diff --git a/examples/dmri_preprocessing.py b/examples/dmri_preprocessing.py index 9b0ad53be3..1efc4e2e05 100644 --- a/examples/dmri_preprocessing.py +++ b/examples/dmri_preprocessing.py @@ -32,13 +32,13 @@ from nipype.interfaces import ants """ Load specific nipype's workflows for preprocessing of dMRI data: -:class:`nipype.workflows.dmri.preprocess.epi.all_peb_pipeline`, +:class:`niflow.nipype1.workflows.dmri.preprocess.epi.all_peb_pipeline`, as data include a *b0* volume with reverse encoding direction (*P>>>A*, or *y*), in contrast with the general acquisition encoding that is *A>>>P* or *-y* (in RAS systems). """ -from nipype.workflows.dmri.fsl.artifacts import all_fsl_pipeline, remove_bias +from niflow.nipype1.workflows.dmri.fsl.artifacts import all_fsl_pipeline, remove_bias """ Map field names into individual subject runs """ diff --git a/examples/dmri_tbss_nki.py b/examples/dmri_tbss_nki.py index 5f2f3d5a01..d14b74dda9 100755 --- a/examples/dmri_tbss_nki.py +++ b/examples/dmri_tbss_nki.py @@ -10,8 +10,8 @@ """ -from nipype.workflows.dmri.fsl.dti import create_eddy_correct_pipeline -from nipype.workflows.dmri.fsl.tbss import create_tbss_non_FA, create_tbss_all +from niflow.nipype1.workflows.dmri.fsl.dti import create_eddy_correct_pipeline +from niflow.nipype1.workflows.dmri.fsl.tbss import create_tbss_non_FA, create_tbss_all """ Tell python where to find the appropriate functions. """ diff --git a/examples/fmri_ants_openfmri.py b/examples/fmri_ants_openfmri.py index 73aa2d66b7..4852f03e1c 100755 --- a/examples/fmri_ants_openfmri.py +++ b/examples/fmri_ants_openfmri.py @@ -38,7 +38,7 @@ from nipype.interfaces.io import FreeSurferSource import nipype.interfaces.utility as niu from nipype.interfaces.utility import Merge, IdentityInterface -from nipype.workflows.fmri.fsl import (create_featreg_preproc, +from niflow.nipype1.workflows.fmri.fsl import (create_featreg_preproc, create_modelfit_workflow, create_fixed_effects_flow) diff --git a/examples/fmri_fsl_feeds.py b/examples/fmri_fsl_feeds.py index f7b0aaf91d..5a90bf9213 100755 --- a/examples/fmri_fsl_feeds.py +++ b/examples/fmri_fsl_feeds.py @@ -22,7 +22,7 @@ from nipype.interfaces import fsl # fsl from nipype.pipeline import engine as pe # pypeline engine from nipype.algorithms import modelgen as model # model generation -from nipype.workflows.fmri.fsl import ( +from niflow.nipype1.workflows.fmri.fsl import ( create_featreg_preproc, create_modelfit_workflow, create_reg_workflow) from nipype.interfaces.base import Bunch """ diff --git a/examples/fmri_fsl_reuse.py b/examples/fmri_fsl_reuse.py index 7b24dc24b8..5375f8a780 100755 --- a/examples/fmri_fsl_reuse.py +++ b/examples/fmri_fsl_reuse.py @@ -28,7 +28,7 @@ import nipype.algorithms.modelgen as model # model generation import nipype.algorithms.rapidart as ra # artifact detection -from nipype.workflows.fmri.fsl import (create_featreg_preproc, +from niflow.nipype1.workflows.fmri.fsl import (create_featreg_preproc, create_modelfit_workflow, create_fixed_effects_flow) """ diff --git a/examples/fmri_spm_dartel.py b/examples/fmri_spm_dartel.py index 9c66ea7aac..815ce5a62d 100755 --- a/examples/fmri_spm_dartel.py +++ b/examples/fmri_spm_dartel.py @@ -21,7 +21,7 @@ import nipype.interfaces.io as nio # Data i/o import nipype.interfaces.spm as spm # spm -import nipype.workflows.fmri.spm as spm_wf # spm +import niflow.nipype1.workflows.fmri.spm as spm_wf # spm import nipype.interfaces.fsl as fsl # fsl from nipype.interfaces import utility as niu # Utilities import nipype.pipeline.engine as pe # pypeline engine diff --git a/examples/frontiers_paper/smoothing_comparison.py b/examples/frontiers_paper/smoothing_comparison.py index c4a31dad39..696e8a94b8 100644 --- a/examples/frontiers_paper/smoothing_comparison.py +++ b/examples/frontiers_paper/smoothing_comparison.py @@ -16,7 +16,7 @@ import nipype.interfaces.utility as util import nipype.pipeline.engine as pe # pypeline engine import nipype.algorithms.modelgen as model # model specification -import nipype.workflows.fmri.fsl as fsl_wf +import niflow.nipype1.workflows.fmri.fsl as fsl_wf from nipype.interfaces.base import Bunch import os # system functions diff --git a/examples/nipype_tutorial.ipynb b/examples/nipype_tutorial.ipynb index 9a7678dfd1..90a06a631e 100644 --- a/examples/nipype_tutorial.ipynb +++ b/examples/nipype_tutorial.ipynb @@ -1615,7 +1615,7 @@ "cell_type": "code", "collapsed": false, "input": [ - "from nipype.workflows.fmri.fsl.preprocess import create_susan_smooth\n", + "from niflow.nipype1.workflows.fmri.fsl.preprocess import create_susan_smooth\n", "\n", "smooth = create_susan_smooth()\n", "smooth.inputs.inputnode.in_files = opap('output/realigned/_subject_id_sub044/rbold_out.nii')\n", diff --git a/examples/smri_ants_build_template.py b/examples/smri_ants_build_template.py index a75c0f6783..53f3981428 100644 --- a/examples/smri_ants_build_template.py +++ b/examples/smri_ants_build_template.py @@ -23,7 +23,7 @@ import nipype.interfaces.io as io import nipype.pipeline.engine as pe # pypeline engine -from nipype.workflows.smri.ants import ANTSTemplateBuildSingleIterationWF +from niflow.nipype1.workflows.smri.ants import ANTSTemplateBuildSingleIterationWF """ 2. Download T1 volumes into home directory """ diff --git a/examples/smri_antsregistration_build_template.py b/examples/smri_antsregistration_build_template.py index ecc214265c..e84fc5b509 100644 --- a/examples/smri_antsregistration_build_template.py +++ b/examples/smri_antsregistration_build_template.py @@ -22,7 +22,7 @@ import nipype.interfaces.io as io import nipype.pipeline.engine as pe # pypeline engine -from nipype.workflows.smri.ants import antsRegistrationTemplateBuildSingleIterationWF +from niflow.nipype1.workflows.smri.ants import antsRegistrationTemplateBuildSingleIterationWF """ 2. Download T1 volumes into home directory """ diff --git a/examples/smri_fsreconall.py b/examples/smri_fsreconall.py index 6a9fc5446b..16d0b4c9f3 100644 --- a/examples/smri_fsreconall.py +++ b/examples/smri_fsreconall.py @@ -20,7 +20,7 @@ import nipype.pipeline.engine as pe import nipype.interfaces.io as nio -from nipype.workflows.smri.freesurfer import create_reconall_workflow +from niflow.nipype1.workflows.smri.freesurfer import create_reconall_workflow from nipype.interfaces.freesurfer.utils import MakeAverageSubject from nipype.interfaces.utility import IdentityInterface """ diff --git a/examples/tessellation_tutorial.py b/examples/tessellation_tutorial.py index 832ad9cad2..58bae095cc 100644 --- a/examples/tessellation_tutorial.py +++ b/examples/tessellation_tutorial.py @@ -7,7 +7,7 @@ Introduction ============ -This script, tessellation_tutorial.py, demonstrates the use of create_tessellation_flow from nipype.workflows.smri.freesurfer, and it can be run with:: +This script, tessellation_tutorial.py, demonstrates the use of create_tessellation_flow from niflow.nipype1.workflows.smri.freesurfer, and it can be run with:: python tessellation_tutorial.py @@ -39,7 +39,7 @@ import nipype.interfaces.io as nio # Data i/o import os import os.path as op -from nipype.workflows.smri.freesurfer import create_tessellation_flow +from niflow.nipype1.workflows.smri.freesurfer import create_tessellation_flow """ Directories =========== diff --git a/nipype/interfaces/fsl/epi.py b/nipype/interfaces/fsl/epi.py index 42d28cc013..e5dbe6de19 100644 --- a/nipype/interfaces/fsl/epi.py +++ b/nipype/interfaces/fsl/epi.py @@ -1417,7 +1417,7 @@ def __init__(self, **inputs): warnings.warn( ( "Deprecated: Please use " - "nipype.workflows.dmri.preprocess.epi.sdc_fmb instead" + "niflow.nipype1.workflows.dmri.preprocess.epi.sdc_fmb instead" ), DeprecationWarning, ) diff --git a/nipype/sphinxext/plot_workflow.py b/nipype/sphinxext/plot_workflow.py index b1a36e36ea..78b5f71384 100644 --- a/nipype/sphinxext/plot_workflow.py +++ b/nipype/sphinxext/plot_workflow.py @@ -21,7 +21,7 @@ :graph2use: flat :simple_form: no - from nipype.workflows.dmri.camino.connectivity_mapping import create_connectivity_pipeline + from niflow.nipype1.workflows.dmri.camino.connectivity_mapping import create_connectivity_pipeline wf = create_connectivity_pipeline() @@ -32,7 +32,7 @@ :graph2use: flat :simple_form: no - from nipype.workflows.dmri.camino.connectivity_mapping import create_connectivity_pipeline + from niflow.nipype1.workflows.dmri.camino.connectivity_mapping import create_connectivity_pipeline wf = create_connectivity_pipeline() From bc566b57157a49f4683e45773c2f9c39242b43e4 Mon Sep 17 00:00:00 2001 From: oesteban Date: Thu, 2 Jan 2020 14:43:30 -0800 Subject: [PATCH 3/3] pin: new niflows version 0.4.0 --- docker/generate_dockerfiles.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/generate_dockerfiles.sh b/docker/generate_dockerfiles.sh index 01a8e62781..dd31b804ac 100755 --- a/docker/generate_dockerfiles.sh +++ b/docker/generate_dockerfiles.sh @@ -111,7 +111,7 @@ function generate_main_dockerfile() { pip_opts="-e" \ pip_install="/src/nipype[all] https://github.com/bids-standard/pybids/tarball/0.7.0" \ --miniconda use_env=neuro \ - pip_install="niflow-nipype1-workflows" \ + pip_install='"niflow-nipype1-workflows>=0.4.0"' \ --workdir /work \ --label org.label-schema.build-date='$BUILD_DATE' \ org.label-schema.name="NIPYPE" \