Skip to content

Commit 72964f4

Browse files
committed
ref: make version checking it's own function
1 parent 861e52c commit 72964f4

File tree

1 file changed

+23
-7
lines changed

1 file changed

+23
-7
lines changed

nipype/__init__.py

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,7 @@
2222

2323
config = NipypeConfig()
2424
logging = Logging(config)
25-
logger = logging.getLogger('nipype.utils')
2625

27-
INIT_MSG = "Running {packname} version {version} (latest: {latest})".format
2826

2927
class NipypeTester(object):
3028
def __call__(self, doctests=True, parallel=False):
@@ -60,8 +58,18 @@ def get_info():
6058
Rename, Function, Select, Merge)
6159

6260

63-
if config.getboolean('execution', 'check_version'):
61+
def check_version(raise_exception=False):
62+
"""Check for the latest version of the library
63+
64+
parameters:
65+
raise_exception: boolean
66+
Raise a RuntimeError if a bad version is being used
67+
"""
68+
6469
import etelemetry
70+
logger = logging.getLogger('nipype.utils')
71+
72+
INIT_MSG = "Running {packname} version {version} (latest: {latest})".format
6573

6674
latest = {"version": 'Unknown', "bad_versions": []}
6775
result = None
@@ -77,7 +85,15 @@ def get_info():
7785
version=__version__,
7886
latest=latest["version"]))
7987
if latest["bad_versions"] and \
80-
any([LooseVersion(__version__) == LooseVersion(ver)
81-
for ver in latest["bad_versions"]]):
82-
logger.critical(('You are using a version of Nipype with a critical '
83-
'bug. Please use a different version.'))
88+
any([LooseVersion(__version__) == LooseVersion(ver)
89+
for ver in latest["bad_versions"]]):
90+
message = ('You are using a version of Nipype with a critical '
91+
'bug. Please use a different version.')
92+
if raise_exception:
93+
raise RuntimeError(message)
94+
else:
95+
logger.critical(message)
96+
97+
98+
if config.getboolean('execution', 'check_version'):
99+
check_version()

0 commit comments

Comments
 (0)