Skip to content

Commit 9787686

Browse files
committed
sort out some networkx imports
1 parent 38530e7 commit 9787686

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

nipype/pipeline/plugins/base.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
from ... import logging
2121
from ...utils.filemanip import loadpkl
2222
from ...utils.misc import str2bool
23-
from ..engine.utils import (nx, dfs_preorder, topological_sort)
2423
from ..engine import MapNode
2524
from .tools import report_crash, report_nodes_not_run, create_pyscript
2625

@@ -391,6 +390,13 @@ def _task_finished_cb(self, jobid, cached=False):
391390
def _generate_dependency_list(self, graph):
392391
""" Generates a dependency list for a list of graphs.
393392
"""
393+
import networkx as nx
394+
from ..engine.utils import topological_sort
395+
try:
396+
dfs_preorder = nx.dfs_preorder
397+
except AttributeError:
398+
dfs_preorder = nx.dfs_preorder_nodes
399+
394400
self.procs, _ = topological_sort(graph)
395401
try:
396402
self.depidx = nx.to_scipy_sparse_matrix(
@@ -538,6 +544,7 @@ def __init__(self, plugin_args=None):
538544
super(GraphPluginBase, self).__init__(plugin_args=plugin_args)
539545

540546
def run(self, graph, config, updatehash=False):
547+
import networkx as nx
541548
pyfiles = []
542549
dependencies = {}
543550
self._config = config

nipype/pipeline/plugins/linear.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,8 @@
77
absolute_import)
88

99
import os
10-
11-
import networkx as nx
1210
from .base import (PluginBase, logger, report_crash, report_nodes_not_run,
1311
str2bool)
14-
from ..engine.utils import dfs_preorder, topological_sort
1512

1613

1714
class LinearPlugin(PluginBase):
@@ -27,6 +24,12 @@ def run(self, graph, config, updatehash=False):
2724
graph : networkx digraph
2825
defines order of execution
2926
"""
27+
import networkx as nx
28+
from ..engine.utils import topological_sort
29+
try:
30+
dfs_preorder = nx.dfs_preorder
31+
except AttributeError:
32+
dfs_preorder = nx.dfs_preorder_nodes
3033

3134
if not isinstance(graph, nx.DiGraph):
3235
raise ValueError('Input must be a networkx digraph object')

0 commit comments

Comments
 (0)