@@ -925,34 +925,36 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
925
925
""" Raises an exception on version mismatch
926
926
"""
927
927
unavailable_traits = []
928
- version = LooseVersion (str (self .version ))
929
- if not version :
930
- return
931
928
# check minimum version
932
929
check = dict (min_ver = lambda t : t is not None )
933
930
names = trait_object .trait_names (** check )
934
- for name in names :
935
- min_ver = LooseVersion (str (trait_object .traits ()[name ].min_ver ))
936
- if min_ver > version :
937
- unavailable_traits .append (name )
938
- if not isdefined (getattr (trait_object , name )):
939
- continue
940
- if raise_exception :
941
- raise Exception ('Trait %s (%s) (version %s < required %s)' %
942
- (name , self .__class__ .__name__ ,
943
- version , min_ver ))
944
- check = dict (max_ver = lambda t : t is not None )
945
- names = trait_object .trait_names (** check )
946
- for name in names :
947
- max_ver = LooseVersion (str (trait_object .traits ()[name ].max_ver ))
948
- if max_ver < version :
949
- unavailable_traits .append (name )
950
- if not isdefined (getattr (trait_object , name )):
951
- continue
952
- if raise_exception :
953
- raise Exception ('Trait %s (%s) (version %s > required %s)' %
954
- (name , self .__class__ .__name__ ,
955
- version , max_ver ))
931
+
932
+ if names :
933
+ version = LooseVersion (str (self .version ))
934
+ if not version :
935
+ return
936
+ for name in names :
937
+ min_ver = LooseVersion (str (trait_object .traits ()[name ].min_ver ))
938
+ if min_ver > version :
939
+ unavailable_traits .append (name )
940
+ if not isdefined (getattr (trait_object , name )):
941
+ continue
942
+ if raise_exception :
943
+ raise Exception ('Trait %s (%s) (version %s < required %s)' %
944
+ (name , self .__class__ .__name__ ,
945
+ version , min_ver ))
946
+ check = dict (max_ver = lambda t : t is not None )
947
+ names = trait_object .trait_names (** check )
948
+ for name in names :
949
+ max_ver = LooseVersion (str (trait_object .traits ()[name ].max_ver ))
950
+ if max_ver < version :
951
+ unavailable_traits .append (name )
952
+ if not isdefined (getattr (trait_object , name )):
953
+ continue
954
+ if raise_exception :
955
+ raise Exception ('Trait %s (%s) (version %s > required %s)' %
956
+ (name , self .__class__ .__name__ ,
957
+ version , max_ver ))
956
958
return unavailable_traits
957
959
958
960
def _run_wrapper (self , runtime ):
0 commit comments