rpmlint/rpmlint-1.11-spellcheck-handle-missing-language-error.patch
Michal Domonkos 466781fc37 Handle missing language error during spellcheck
Previously, PyEnchant raised a DictNotFoundError from the SpellChecker
constructor in case it didn't find the given language.  This was
recently[1] changed/fixed upstream to actually handle that error in the
constructor and then raise a DefaultLanguageNotFoundError instead.
Adapt our code to it but also keep handling the previous error, just in
case.

Note that this was never fixed in rpmlint upstream since that has moved
on and rewritten quite a bit of the codebase, fixing this traceback in
the process, hence a downstream-only patch here.

[1] commit 5fc8ecc458b7b84d88ce629f74905549790141ee at:
    https://github.com/pyenchant/pyenchant/

Resolves: #1929210
2022-01-11 16:50:45 +01:00

14 lines
797 B
Diff

diff -up rpmlint-rpmlint-1.11/TagsCheck.py.orig rpmlint-rpmlint-1.11/TagsCheck.py
--- rpmlint-rpmlint-1.11/TagsCheck.py.orig 2022-01-11 16:49:18.424026182 +0100
+++ rpmlint-rpmlint-1.11/TagsCheck.py 2022-01-11 16:50:05.774665734 +0100
@@ -463,7 +463,8 @@ def spell_check(pkg, str, fmt, lang, ign
lang, filters=[enchant.tokenize.EmailFilter,
enchant.tokenize.URLFilter,
enchant.tokenize.WikiWordFilter])
- except enchant.DictNotFoundError:
+ except (enchant.errors.DefaultLanguageNotFoundError,
+ enchant.DictNotFoundError):
printInfo(pkg, 'enchant-dictionary-not-found', lang)
pass
_enchant_checkers[lang] = checker