Skip to content

Commit 956ecb3

Browse files
committed
RF: Raise ValueError if stop_on_unknown_version is set
1 parent c56a3b1 commit 956ecb3

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

nipype/interfaces/base/core.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -278,12 +278,14 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
278278
min_ver = LooseVersion(str(trait_object.traits()[name].min_ver))
279279
try:
280280
too_old = min_ver > version
281-
except TypeError:
282-
iflogger.warning(
281+
except TypeError as err:
282+
msg = (
283283
f"Nipype cannot validate the package version {version!r} for "
284-
f"{self.__class__.__name__}. Trait {name} requires version "
285-
f">={min_ver}. Please verify validity."
284+
f"{self.__class__.__name__}. Trait {name} requires version >={min_ver}."
286285
)
286+
iflogger.warning(f"{msg}. Please verify validity.")
287+
if self.config.getboolean("execution", "stop_on_unknown_version"):
288+
raise ValueError(msg) from err
287289
continue
288290
if too_old:
289291
unavailable_traits.append(name)
@@ -304,12 +306,14 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
304306
max_ver = LooseVersion(str(trait_object.traits()[name].max_ver))
305307
try:
306308
too_new = max_ver < version
307-
except TypeError:
308-
iflogger.warning(
309+
except TypeError as err:
310+
msg = (
309311
f"Nipype cannot validate the package version {version!r} for "
310-
f"{self.__class__.__name__}. Trait {name} requires version "
311-
f"<={max_ver}. Please verify validity."
312+
f"{self.__class__.__name__}. Trait {name} requires version <={max_ver}."
312313
)
314+
iflogger.warning(f"{msg}. Please verify validity.")
315+
if self.config.getboolean("execution", "stop_on_unknown_version"):
316+
raise ValueError(msg) from err
313317
continue
314318
if too_new:
315319
unavailable_traits.append(name)

0 commit comments

Comments
 (0)