summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Ipsum <richard.ipsum@codethink.co.uk>2014-05-07 11:36:17 +0100
committerRichard Ipsum <richard.ipsum@codethink.co.uk>2014-05-07 12:14:09 +0100
commitcdc16e7a7696e0ca9dda7715e0a5eb227448b26e (patch)
tree46cc7f9772174cf29463196d4ea3a33d2f2468cc
parentf23b51aaa0dff06c7926e803b0f09103c60147a4 (diff)
downloadmorph-cdc16e7a7696e0ca9dda7715e0a5eb227448b26e.tar.gz
A more useful morphology syntax error message
There's no longer any need to log the exception separately, it will be logged with the MorphologySyntaxError
-rw-r--r--morphlib/morphloader.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/morphlib/morphloader.py b/morphlib/morphloader.py
index cd005fae..f6d21837 100644
--- a/morphlib/morphloader.py
+++ b/morphlib/morphloader.py
@@ -41,8 +41,8 @@ class MorphologyObsoleteFieldWarning(UserWarning):
class MorphologySyntaxError(morphlib.Error):
- def __init__(self, morphology):
- self.msg = 'Syntax error in morphology %s' % morphology
+ def __init__(self, morphology, errmsg):
+ self.msg = 'Syntax error in morphology %s:\n%s' % (morphology, errmsg)
class NotADictionaryError(morphlib.Error):
@@ -344,8 +344,7 @@ class MorphologyLoader(object):
try:
obj = yaml.safe_load(text)
except yaml.error.YAMLError as e:
- logging.error('Could not load morphology as YAML:\n%s' % str(e))
- raise MorphologySyntaxError(whence)
+ raise MorphologySyntaxError(whence, e)
if not isinstance(obj, dict):
raise NotADictionaryError(whence)