mirror of
https://github.com/ocrmypdf/OCRmyPDF.git
synced 2026-05-18 19:47:48 -04:00
Fix missing jbig2enc reported as error with -O3 instead of warning
Fixes #558
This commit is contained in:
@@ -233,10 +233,10 @@ def _error_trailer(program, package, **kwargs):
|
||||
|
||||
|
||||
def _error_missing_program(program, package, required_for, recommended):
|
||||
if required_for:
|
||||
if recommended:
|
||||
log.warning(missing_recommend_program.format(**locals()))
|
||||
elif required_for:
|
||||
log.error(missing_optional_program.format(**locals()))
|
||||
elif recommended:
|
||||
log.info(missing_recommend_program.format(**locals()))
|
||||
else:
|
||||
log.error(missing_program.format(**locals()))
|
||||
_error_trailer(**locals())
|
||||
@@ -279,7 +279,7 @@ def check_external_program(
|
||||
found_version = remove_leading_v(found_version)
|
||||
need_version = remove_leading_v(need_version)
|
||||
|
||||
if LooseVersion(found_version) < LooseVersion(need_version):
|
||||
if found_version and LooseVersion(found_version) < LooseVersion(need_version):
|
||||
_error_old_version(program, package, need_version, found_version, required_for)
|
||||
if not recommended:
|
||||
raise MissingDependencyError()
|
||||
|
||||
@@ -210,3 +210,24 @@ def test_version_comparison():
|
||||
version_checker=lambda: '1.0',
|
||||
need_version='2.0',
|
||||
)
|
||||
|
||||
|
||||
def test_optional_program_recommended(caplog):
|
||||
caplog.clear()
|
||||
|
||||
def raiser():
|
||||
raise FileNotFoundError('jbig2')
|
||||
|
||||
with caplog.at_level(logging.WARNING):
|
||||
vd.check_external_program(
|
||||
program="jbig2",
|
||||
package="jbig2enc",
|
||||
version_checker=raiser,
|
||||
need_version='42',
|
||||
required_for='this test case',
|
||||
recommended=True,
|
||||
)
|
||||
assert any(
|
||||
(loglevel == logging.WARNING and "recommended" in msg)
|
||||
for _logger_name, loglevel, msg in caplog.record_tuples
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user