@@ -925,34 +925,36 @@ def _check_version_requirements(self, trait_object, raise_exception=True):
925925 """ Raises an exception on version mismatch
926926 """
927927 unavailable_traits = []
928- version = LooseVersion (str (self .version ))
929- if not version :
930- return
931928 # check minimum version
932929 check = dict (min_ver = lambda t : t is not None )
933930 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 ))
956958 return unavailable_traits
957959
958960 def _run_wrapper (self , runtime ):
0 commit comments