Only report missing/failed translation as a warning, no need to report as exception...

This commit is contained in:
Alexandre Aubin 2021-02-28 16:54:54 +01:00
parent cde45de0ba
commit 16c43a67f7

View file

@ -103,7 +103,7 @@ class Translator(object):
if key in self._translations.get(self.locale, {}): if key in self._translations.get(self.locale, {}):
try: try:
return self._translations[self.locale][key].format(*args, **kwargs) return self._translations[self.locale][key].format(*args, **kwargs)
except KeyError as e: except Exception as e:
unformatted_string = self._translations[self.locale][key] unformatted_string = self._translations[self.locale][key]
error_message = ( error_message = (
"Failed to format translated string '%s': '%s' with arguments '%s' and '%s, raising error: %s(%s) (don't panic this is just a warning)" "Failed to format translated string '%s': '%s' with arguments '%s' and '%s, raising error: %s(%s) (don't panic this is just a warning)"
@ -111,7 +111,7 @@ class Translator(object):
) )
if not during_unittests_run(): if not during_unittests_run():
logger.exception(error_message) logger.warning(error_message)
else: else:
raise Exception(error_message) raise Exception(error_message)
@ -127,14 +127,14 @@ class Translator(object):
return self._translations[self.default_locale][key].format( return self._translations[self.default_locale][key].format(
*args, **kwargs *args, **kwargs
) )
except KeyError as e: except Exception as e:
unformatted_string = self._translations[self.default_locale][key] unformatted_string = self._translations[self.default_locale][key]
error_message = ( error_message = (
"Failed to format translatable string '%s': '%s' with arguments '%s' and '%s', raising error: %s(%s) (don't panic this is just a warning)" "Failed to format translatable string '%s': '%s' with arguments '%s' and '%s', raising error: %s(%s) (don't panic this is just a warning)"
% (key, unformatted_string, args, kwargs, e.__class__.__name__, e) % (key, unformatted_string, args, kwargs, e.__class__.__name__, e)
) )
if not during_unittests_run(): if not during_unittests_run():
logger.exception(error_message) logger.warning(error_message)
else: else:
raise Exception(error_message) raise Exception(error_message)
@ -146,7 +146,7 @@ class Translator(object):
) )
if not during_unittests_run(): if not during_unittests_run():
logger.exception(error_message) logger.warning(error_message)
else: else:
raise Exception(error_message) raise Exception(error_message)