Deprecate encode/decode_pdf_date and remap to pikepdf version
This commit is contained in:
@@ -29,9 +29,11 @@ import pikepdf
|
||||
from PIL import Image
|
||||
from ruffus import formatter, regex, Pipeline, suffix
|
||||
|
||||
from pikepdf.models.metadata import encode_pdf_date
|
||||
|
||||
from .hocrtransform import HocrTransform
|
||||
from .pdfinfo import PdfInfo, Colorspace
|
||||
from .pdfa import generate_pdfa_ps, encode_pdf_date
|
||||
from .pdfa import generate_pdfa_ps
|
||||
from .helpers import re_symlink, is_iterable_notstr, page_number, flatten_groups
|
||||
from .exec import ghostscript, tesseract
|
||||
from .exceptions import UnsupportedImageFormatError, \
|
||||
|
||||
+14
-1
@@ -15,7 +15,7 @@
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OCRmyPDF. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from functools import partial
|
||||
from functools import partial, wraps
|
||||
from collections.abc import Iterable
|
||||
from contextlib import suppress
|
||||
from pathlib import Path
|
||||
@@ -168,3 +168,16 @@ def flatten_groups(groups):
|
||||
yield from obj
|
||||
else:
|
||||
yield obj
|
||||
|
||||
|
||||
def deprecated(func):
|
||||
"""Warn that function is deprecated"""
|
||||
@wraps(func)
|
||||
def new_func(*args, **kwargs):
|
||||
warnings.simplefilter('always', DeprecationWarning) # turn off filter
|
||||
warnings.warn("Call to deprecated function {}.".format(func.__name__),
|
||||
category=DeprecationWarning,
|
||||
stacklevel=2)
|
||||
warnings.simplefilter('default', DeprecationWarning) # reset filter
|
||||
return func(*args, **kwargs)
|
||||
return new_func
|
||||
|
||||
+17
-2
@@ -42,7 +42,12 @@ from libxmp.utils import file_to_dict
|
||||
from libxmp import consts
|
||||
import pikepdf
|
||||
|
||||
from pikepdf.models.metadata import encode_pdf_date, decode_pdf_date
|
||||
from pikepdf.models.metadata import (
|
||||
encode_pdf_date as _encode_date,
|
||||
decode_pdf_date as _decode_date
|
||||
)
|
||||
|
||||
from .helpers import deprecated
|
||||
|
||||
|
||||
ICC_PROFILE_RELPATH = 'data/sRGB.icc'
|
||||
@@ -137,6 +142,16 @@ def _encode_ascii(s: str) -> str:
|
||||
return s.translate(trans).encode('ascii', errors='replace').decode()
|
||||
|
||||
|
||||
@deprecated
|
||||
def encode_pdf_date(*args, **kwargs):
|
||||
return _encode_date(*args, **kwargs)
|
||||
|
||||
|
||||
@deprecated
|
||||
def decode_pdf_date(*args, **kwargs):
|
||||
return _decode_date(*args, **kwargs)
|
||||
|
||||
|
||||
def _get_pdfmark_dates(pdfmark):
|
||||
"""
|
||||
Encode dates in the expected format for pdfmark Postscript
|
||||
@@ -160,7 +175,7 @@ def _get_pdfmark_dates(pdfmark):
|
||||
try:
|
||||
yield ' {} (D:{})'.format(
|
||||
key,
|
||||
encode_pdf_date(decode_pdf_date(date_str)))
|
||||
_encode_date(_decode_date(date_str)))
|
||||
except ValueError:
|
||||
yield ' {} null'.format(key)
|
||||
|
||||
|
||||
@@ -25,11 +25,13 @@ from unittest.mock import patch
|
||||
import datetime
|
||||
|
||||
import pikepdf
|
||||
from pikepdf.models.metadata import encode_pdf_date, decode_pdf_date
|
||||
|
||||
from ocrmypdf.exceptions import ExitCode
|
||||
from ocrmypdf.helpers import fspath
|
||||
from ocrmypdf.pdfa import (
|
||||
file_claims_pdfa, encode_pdf_date, decode_pdf_date, generate_pdfa_ps,
|
||||
file_claims_pdfa,
|
||||
generate_pdfa_ps,
|
||||
SRGB_ICC_PROFILE
|
||||
)
|
||||
from ocrmypdf.exec import ghostscript
|
||||
@@ -43,6 +45,8 @@ except ImportError:
|
||||
# pylint: disable=no-member
|
||||
# pylint: disable=w0612
|
||||
|
||||
pytestmark = pytest.mark.filterwarnings('ignore:.*XMLParser.*:DeprecationWarning')
|
||||
|
||||
check_ocrmypdf = pytest.helpers.check_ocrmypdf
|
||||
run_ocrmypdf = pytest.helpers.run_ocrmypdf
|
||||
spoof = pytest.helpers.spoof
|
||||
|
||||
Reference in New Issue
Block a user