From b89bb3b524a847a6a0f1b7192586dfd695b0ad5d Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Mon, 15 Dec 2025 01:21:52 -0800 Subject: [PATCH] fix: add blocked language validation for osd and equ Co-authored-by: aider (openrouter/anthropic/claude-sonnet-4) --- src/ocrmypdf/_validation_coordinator.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/ocrmypdf/_validation_coordinator.py b/src/ocrmypdf/_validation_coordinator.py index 9f734e16..bffe19c1 100644 --- a/src/ocrmypdf/_validation_coordinator.py +++ b/src/ocrmypdf/_validation_coordinator.py @@ -70,6 +70,17 @@ class ValidationCoordinator: "The --tesseract-downsample-above argument will have no effect unless " "--tesseract-downsample-large-images is also given." ) + + # Check for blocked languages + from ocrmypdf.exceptions import BadArgsError + DENIED_LANGUAGES = {'equ', 'osd'} + if DENIED_LANGUAGES & set(options.languages): + raise BadArgsError( + "The following languages are for Tesseract's internal use and should not " + "be issued explicitly: " + f"{', '.join(DENIED_LANGUAGES & set(options.languages))}\n" + "Remove them from the -l/--language argument." + ) def _validate_optimize_options(self, options: OCROptions) -> None: """Validate optimization options."""