Move ocrmypdf.exec.run and friends to ocrmypdf.subprocess

This commit is contained in:
James R. Barlow
2020-06-09 14:53:10 -07:00
parent 3b6f6782f0
commit be8ca589d4
17 changed files with 23 additions and 27 deletions
+2 -1
View File
@@ -34,13 +34,14 @@ from ocrmypdf.exceptions import (
MissingDependencyError,
OutputFileAccessError,
)
from ocrmypdf.exec import check_external_program, jbig2enc, pngquant, unpaper
from ocrmypdf.exec import jbig2enc, pngquant, unpaper
from ocrmypdf.helpers import (
is_file_writable,
is_iterable_notstr,
monotonic,
safe_symlink,
)
from ocrmypdf.subprocess import check_external_program
# -------------
# External dependencies
+2 -1
View File
@@ -21,8 +21,9 @@ from pathlib import Path
from ocrmypdf import hookimpl
from ocrmypdf._validation import HOCR_OK_LANGS
from ocrmypdf.exceptions import MissingDependencyError
from ocrmypdf.exec import check_external_program, ghostscript
from ocrmypdf.exec import ghostscript
from ocrmypdf.helpers import Resolution
from ocrmypdf.subprocess import check_external_program
log = logging.getLogger(__name__)
@@ -22,8 +22,9 @@ import os
from ocrmypdf import hookimpl
from ocrmypdf.cli import numeric
from ocrmypdf.exceptions import MissingDependencyError
from ocrmypdf.exec import check_external_program, tesseract
from ocrmypdf.exec import tesseract
from ocrmypdf.pluginspec import OcrEngine
from ocrmypdf.subprocess import check_external_program
log = logging.getLogger(__name__)
+1 -8
View File
@@ -15,11 +15,4 @@
# You should have received a copy of the GNU General Public License
# along with OCRmyPDF. If not, see <http://www.gnu.org/licenses/>.
"""Wrappers to manage subprocess calls"""
from ocrmypdf.exec._support import (
check_external_program,
get_version,
run,
shim_paths_with_program_files,
)
"""Manage third party executables"""
+1 -1
View File
@@ -29,8 +29,8 @@ from subprocess import PIPE, CalledProcessError
from PIL import Image
from ocrmypdf.exceptions import MissingDependencyError, SubprocessOutputError
from ocrmypdf.exec import get_version, run
from ocrmypdf.helpers import Resolution
from ocrmypdf.subprocess import get_version, run
log = logging.getLogger(__name__)
+1 -1
View File
@@ -20,7 +20,7 @@
from subprocess import PIPE
from ocrmypdf.exceptions import MissingDependencyError
from ocrmypdf.exec import get_version, run
from ocrmypdf.subprocess import get_version, run
def version():
+1 -2
View File
@@ -17,13 +17,12 @@
"""Interface to pngquant executable"""
from subprocess import run
from tempfile import NamedTemporaryFile
from PIL import Image
from ocrmypdf.exceptions import MissingDependencyError
from ocrmypdf.exec import get_version
from ocrmypdf.subprocess import get_version, run
def version():
+1 -1
View File
@@ -34,8 +34,8 @@ from ocrmypdf.exceptions import (
SubprocessOutputError,
TesseractConfigError,
)
from ocrmypdf.exec import get_version, run
from ocrmypdf.helpers import safe_symlink
from ocrmypdf.subprocess import get_version, run
log = logging.getLogger(__name__)
+2 -2
View File
@@ -30,8 +30,8 @@ from tempfile import TemporaryDirectory
from PIL import Image
from ocrmypdf.exceptions import MissingDependencyError, SubprocessOutputError
from ocrmypdf.exec import get_version
from ocrmypdf.exec import run as external_run
from ocrmypdf.subprocess import get_version
from ocrmypdf.subprocess import run as external_run
log = logging.getLogger(__name__)
+1 -1
View File
@@ -34,8 +34,8 @@ from os import fspath
from tempfile import TemporaryFile
from ocrmypdf.exceptions import MissingDependencyError
from ocrmypdf.exec import shim_paths_with_program_files
from ocrmypdf.lib._leptonica import ffi
from ocrmypdf.subprocess import shim_paths_with_program_files
# pylint: disable=protected-access
@@ -55,7 +55,7 @@ def run(args, *, env=None, **kwargs):
program = args[0]
if os.name == 'nt':
args = fix_windows_args(program, args, env)
args = _fix_windows_args(program, args, env)
log.debug("Running: %s", args)
process_log = log.getChild('subprocess.' + os.path.basename(program))
@@ -80,7 +80,7 @@ def run(args, *, env=None, **kwargs):
return proc
def fix_windows_args(program, args, env):
def _fix_windows_args(program, args, env):
"""Adjust our desired program and command line arguments for use on Windows"""
if sys.version_info < (3, 8):
+1 -1
View File
@@ -23,7 +23,7 @@ from unittest.mock import patch
from ocrmypdf import hookimpl
from ocrmypdf.builtin_plugins import ghostscript
from ocrmypdf.exec import run
from ocrmypdf.subprocess import run
elision_warning = """GPL Ghostscript 9.20: Setting Overprint Mode to 1
not permitted in PDF/A-2, overprint mode not set"""
+1 -1
View File
@@ -23,7 +23,7 @@ from unittest.mock import patch
from ocrmypdf import hookimpl
from ocrmypdf.builtin_plugins import ghostscript
from ocrmypdf.exec import run
from ocrmypdf.subprocess import run
def run_rig_args(args, **kwargs):
+1 -1
View File
@@ -25,7 +25,7 @@ from unittest.mock import patch
from ocrmypdf import hookimpl
from ocrmypdf.builtin_plugins import ghostscript
from ocrmypdf.exec import run
from ocrmypdf.subprocess import run
def raise_gs_fail(*args, **kwargs):
+1 -1
View File
@@ -25,7 +25,7 @@ from unittest.mock import patch
from ocrmypdf import hookimpl
from ocrmypdf.builtin_plugins import ghostscript
from ocrmypdf.exec import run
from ocrmypdf.subprocess import run
def raise_gs_fail(*args, **kwargs):
+1 -1
View File
@@ -57,7 +57,7 @@ from unittest.mock import patch
from ocrmypdf import hookimpl
from ocrmypdf.builtin_plugins.tesseract_ocr import TesseractOcrEngine
from ocrmypdf.exec import run
from ocrmypdf.subprocess import run
log = logging.getLogger(__name__)
+2 -1
View File
@@ -29,9 +29,10 @@ from PIL import Image
import ocrmypdf
from ocrmypdf.exceptions import ExitCode, MissingDependencyError
from ocrmypdf.exec import get_version, ghostscript, tesseract
from ocrmypdf.exec import ghostscript, tesseract
from ocrmypdf.pdfa import file_claims_pdfa
from ocrmypdf.pdfinfo import Colorspace, Encoding, PdfInfo
from ocrmypdf.subprocess import get_version
# pytest.helpers is dynamic
# pylint: disable=no-member,redefined-outer-name