From 084610c242be607d5cf586146f0829c71b3a7951 Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Sun, 24 Jan 2021 02:16:50 -0800 Subject: [PATCH] Automate insertion of builtin modules --- src/ocrmypdf/_plugin_manager.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ocrmypdf/_plugin_manager.py b/src/ocrmypdf/_plugin_manager.py index e939e064..392f959f 100644 --- a/src/ocrmypdf/_plugin_manager.py +++ b/src/ocrmypdf/_plugin_manager.py @@ -8,6 +8,7 @@ import argparse import importlib import importlib.util +import pkgutil import sys from functools import partial from pathlib import Path @@ -15,6 +16,7 @@ from typing import Callable, List, Tuple, Union import pluggy +import ocrmypdf.builtin_plugins from ocrmypdf import pluginspec from ocrmypdf.cli import get_parser, plugins_only_parser @@ -62,12 +64,11 @@ def _setup_plugins( all_plugins: List[Union[str, Path]] = [] if builtins: all_plugins.extend( - [ - 'ocrmypdf.builtin_plugins.ghostscript', - 'ocrmypdf.builtin_plugins.tesseract_ocr', - ] + f'ocrmypdf.builtin_plugins.{module.name}' + for module in pkgutil.iter_modules(ocrmypdf.builtin_plugins.__path__) ) all_plugins.extend(plugins) + for name in all_plugins: if isinstance(name, Path) or name.endswith('.py'): # Import by filename