blob: 043523b2411b8efdb1ebd067cddb4195c5c09d7f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
From b4d57d7ca4359b0990636bbc6091c49706c6ff39 Mon Sep 17 00:00:00 2001
From: Horea Christian <gentoo@chymera.eu>
Date: Fri, 7 Aug 2020 01:12:38 -0400
Subject: [PATCH] ENH: no more auto-failing on misparsed versions
---
nipype/interfaces/base/core.py | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/nipype/interfaces/base/core.py b/nipype/interfaces/base/core.py
index 82da393a84..1e626fe1b5 100644
--- a/nipype/interfaces/base/core.py
+++ b/nipype/interfaces/base/core.py
@@ -276,6 +276,15 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
version = LooseVersion(str(self.version))
for name in names:
min_ver = LooseVersion(str(trait_object.traits()[name].min_ver))
+ try:
+ min_ver > version
+ except TypeError:
+ iflogger.warning(
+ 'Nipype is having issues parsing the package version '
+ f'for Trait {name} ({self.__class__.__name__})'
+ f'You may want to check whether {version} is larger than {min_ver}'
+ )
+ continue
if min_ver > version:
unavailable_traits.append(name)
if not isdefined(getattr(trait_object, name)):
@@ -293,6 +302,15 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
version = LooseVersion(str(self.version))
for name in names:
max_ver = LooseVersion(str(trait_object.traits()[name].max_ver))
+ try:
+ max_ver > version
+ except TypeError:
+ iflogger.warning(
+ 'Nipype is having issues parsing the package version '
+ f'for Trait {name} ({self.__class__.__name__})'
+ f'You may want to check whether {version} is smaller than {max_ver}'
+ )
+ continue
if max_ver < version:
unavailable_traits.append(name)
if not isdefined(getattr(trait_object, name)):
|