Compare commits

...
5 Commits
5 changed files with 29 additions and 17 deletions
+8
View File
@@ -5,6 +5,14 @@ OCRmyPDF uses `semantic versioning <http://semver.org/>`_ for its command line i
The OCRmyPDF package itself does not contain a public API, although it is fairly stable and breaking changes are usually timed with a major release. A future release will clearly define the stable public API.
v6.1.2
------
- Upgrade to PyMuPDF v1.12.5 which includes a more complete fix to #239.
- Add ``defusedxml`` dependency.
v6.1.1
------
+4 -1
View File
@@ -11,4 +11,7 @@ ignore =
[tool:pytest]
norecursedirs = lib .pc .git output cache resources
testpaths = tests
addopts = -n auto
addopts = -n auto
[metadata]
license_file = LICENSE
+11 -10
View File
@@ -232,26 +232,27 @@ setup(
"Topic :: Text Processing :: Indexing",
"Topic :: Text Processing :: Linguistic",
],
python_requires='>=3.5',
python_requires=' >= 3.5',
setup_requires=[
'cffi >= 1.9.1', # to build the leptonica module
'pytest-runner', # to enable python setup.py test
'setuptools_scm', # so that version will work
'cffi>=1.9.1', # to build the leptonica module
'pytest-runner' # to enable python setup.py test
],
use_scm_version={'version_scheme': 'post-release'},
cffi_modules=[
'src/ocrmypdf/lib/compile_leptonica.py:ffibuilder'
],
install_requires=[
'ruffus==2.6.3', # pinned - ocrmypdf implements a 2.6.3 workaround
'Pillow>=4.0.0', # Pillow < 4 has BytesIO/TIFF bug w/img2pdf 0.2.3
'reportlab>=3.3.0', # oldest released version with sane image handling
'PyPDF2>=1.26', # pure Python, so track HEAD closely
'img2pdf>=0.2.3', # pure Python, so track HEAD closely
'cffi>=1.9.1', # must be a setup and install requirement
'cffi >= 1.9.1', # must be a setup and install requirement
'defusedxml >= 0.5.0', # pure Python, so track HEAD closely
'img2pdf >= 0.2.4', # pure Python, so track HEAD closely
'Pillow >= 4.0.0', # Pillow < 4 has BytesIO/TIFF bug w/img2pdf 0.2.3
'PyPDF2 >= 1.26', # pure Python, so track HEAD closely
'reportlab >= 3.3.0', # oldest released version with sane image handling
'ruffus == 2.6.3', # pinned - ocrmypdf implements a 2.6.3 workaround
],
extras_require={
'fitz': ['PyMuPDF == 1.12.4'] # pinned to avoid problems with 1.12.4.x
'fitz': ['PyMuPDF >= 1.12.5'] # for table of contents bug
},
tests_require=tests_require,
entry_points={
+5
View File
@@ -17,7 +17,12 @@
"""Bindings to external libraries"""
import os as _os
try:
import fitz
except ImportError:
fitz = None
if _os.environ.get('_OCRMYPDF_NO_FITZ'):
fitz = None
+1 -6
View File
@@ -1039,12 +1039,7 @@ def merge_pages_mupdf(
metadata = fitz.open(metadata_file)
toc = metadata.getToC(simple=False)
def filter_toc_pages():
"fitz does not escape parens properly"
for entry in toc:
entry[1] = entry[1].replace('(', '').replace(')', '')
yield entry
doc.setToC([item for item in filter_toc_pages()])
doc.setToC(toc)
doc.setMetadata(pymupdf_metadata)
doc.save(output_file, garbage=4, deflate=True)