@@ -699,12 +699,12 @@ def _strict_call(self, value):
699
699
# We're still here so we can now return the new value
700
700
return new_value
701
701
702
- except ValueError :
702
+ except ValueError as e :
703
703
if value .strip () in self .missing_values :
704
704
if not self ._status :
705
705
self ._checked = False
706
706
return self .default
707
- raise ValueError ("Cannot convert string '%s'" % value )
707
+ raise ValueError ("Cannot convert string '%s'" % value ) from e
708
708
#
709
709
710
710
def __call__ (self , value ):
@@ -735,17 +735,17 @@ def upgrade(self, value):
735
735
self ._checked = True
736
736
try :
737
737
return self ._strict_call (value )
738
- except ValueError :
738
+ except ValueError as e :
739
739
# Raise an exception if we locked the converter...
740
740
if self ._locked :
741
741
errmsg = "Converter is locked and cannot be upgraded"
742
- raise ConverterLockError (errmsg )
742
+ raise ConverterLockError (errmsg ) from e
743
743
_statusmax = len (self ._mapper )
744
744
# Complains if we try to upgrade by the maximum
745
745
_status = self ._status
746
746
if _status == _statusmax :
747
747
errmsg = "Could not find a valid conversion function"
748
- raise ConverterError (errmsg )
748
+ raise ConverterError (errmsg ) from e
749
749
elif _status < _statusmax - 1 :
750
750
_status += 1
751
751
(self .type , self .func , default ) = self ._mapper [_status ]
@@ -764,18 +764,18 @@ def iterupgrade(self, value):
764
764
try :
765
765
for _m in value :
766
766
_strict_call (_m )
767
- except ValueError :
767
+ except ValueError as e :
768
768
# Raise an exception if we locked the converter...
769
769
if self ._locked :
770
770
errmsg = "Converter is locked and cannot be upgraded"
771
- raise ConverterLockError (errmsg )
771
+ raise ConverterLockError (errmsg ) from e
772
772
_statusmax = len (self ._mapper )
773
773
# Complains if we try to upgrade by the maximum
774
774
_status = self ._status
775
775
if _status == _statusmax :
776
776
raise ConverterError (
777
777
"Could not find a valid conversion function"
778
- )
778
+ ) from e
779
779
elif _status < _statusmax - 1 :
780
780
_status += 1
781
781
(self .type , self .func , default ) = self ._mapper [_status ]
0 commit comments