8000 MAINT: Fix exception causes in _iotools.py · numpy/numpy@536afeb · GitHub
[go: up one dir, main page]

Skip to content

Commit 536afeb

Browse files
committed
MAINT: Fix exception causes in _iotools.py
1 parent 9da90de commit 536afeb

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

numpy/lib/_iotools.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -699,12 +699,12 @@ def _strict_call(self, value):
699699
# We're still here so we can now return the new value
700700
return new_value
701701

702-
except ValueError:
702+
except ValueError as e:
703703
if value.strip() in self.missing_values:
704704
if not self._status:
705705
self._checked = False
706706
return self.default
707-
raise ValueError("Cannot convert string '%s'" % value)
707+
raise ValueError("Cannot convert string '%s'" % value) from e
708708
#
709709

710710
def __call__(self, value):
@@ -735,17 +735,17 @@ def upgrade(self, value):
735735
self._checked = True
736736
try:
737737
return self._strict_call(value)
738-
except ValueError:
738+
except ValueError as e:
739739
# Raise an exception if we locked the converter...
740740
if self._locked:
741741
errmsg = "Converter is locked and cannot be upgraded"
742-
raise ConverterLockError(errmsg)
742+
raise ConverterLockError(errmsg) from e
743743
_statusmax = len(self._mapper)
744744
# Complains if we try to upgrade by the maximum
745745
_status = self._status
746746
if _status == _statusmax:
747747
errmsg = "Could not find a valid conversion function"
748-
raise ConverterError(errmsg)
748+
raise ConverterError(errmsg) from e
749749
elif _status < _statusmax - 1:
750750
_status += 1
751751
(self.type, self.func, default) = self._mapper[_status]
@@ -764,18 +764,18 @@ def iterupgrade(self, value):
764764
try:
765765
for _m in value:
766766
_strict_call(_m)
767-
except ValueError:
767+
except ValueError as e:
768768
# Raise an exception if we locked the converter...
769769
if self._locked:
770770
errmsg = "Converter is locked and cannot be upgraded"
771-
raise ConverterLockError(errmsg)
771+
raise ConverterLockError(errmsg) from e
772772
_statusmax = len(self._mapper)
773773
# Complains if we try to upgrade by the maximum
774774
_status = self._status
775775
if _status == _statusmax:
776776
raise ConverterError(
777777
"Could not find a valid conversion function"
778-
)
778+
) from e
779779
elif _status < _statusmax - 1:
780780
_status += 1
781781
(self.type, self.func, default) = self._mapper[_status]

0 commit comments

Comments
 (0)
0