James R. Barlow
113a6b45bd
ruff autofixes (mostly typing.* -> collections.abc.*)
2023-10-01 00:02:53 -07:00
James R. Barlow
ec1c377532
Drop Python 3.8 too
...
(cherry picked from commit a8cdc5a191bdf1fe401e96c2dc9a5fba39b90d79)
2023-09-21 00:05:39 -07:00
James R. Barlow
9ce692a6f1
ruff: further fixes
2023-04-14 02:39:36 -07:00
James R. Barlow
9b8d14d16e
Accept most of ruff's delinting
2023-04-14 00:45:34 -07:00
Kian-Meng Ang and GitHub
ba10c5345b
Fix typos ( #1087 )
...
Found via `codespell -S tests,LICENSES -L flate`
2023-03-29 21:57:32 -07:00
James R. Barlow
80ed2117cc
Change to SPDX license tracking
2022-07-28 01:10:07 -07:00
James R. Barlow
dc6f1a266a
Modernize type annotations
2022-07-23 00:39:24 -07:00
James R. Barlow
b1f2d257e2
Typing improvements
2022-07-09 02:24:19 -07:00
James R. Barlow
b17fb61389
Configure pylint in pyproject and delint
2022-06-12 00:30:44 -07:00
James R. Barlow
6f58a14351
pdfa: remove deprecated pkg_resources based access and tests
2021-11-13 00:52:03 -08:00
James R. Barlow
386453d178
pdfa: replace read_binary() with files()
2021-10-31 02:01:11 -07:00
James R. Barlow
c4c64c3ea0
pre-commit updates
2021-10-31 01:31:57 -07:00
fedeliallalinea and GitHub
af18bc0684
fixs importlib.{metadata,resource} for new python version ( #840 )
...
Signed-off-by: Marco Genasci <fedeliallalinea@gmail.com >
2021-10-03 23:30:11 -07:00
James R. Barlow
4d67812d51
importlib helpers don't provide importlib.thing, but importlib_thing
...
Fix everywhere.
2021-09-14 00:15:07 -07:00
James R. Barlow
208657f840
pdfa: replace pkg_resources with importlib.resources
2021-09-13 01:10:49 -07:00
James R. Barlow
1084724937
docs: improve API docs
2021-01-26 01:40:40 -08:00
James R. Barlow
d2908640c6
pdfa: help mypy figure out a type
2020-12-11 14:14:21 -08:00
James R. Barlow
8c90f7c972
Replace GPLv3-derived PDF/A template with PostScript generator
2020-08-05 01:30:45 -07:00
James R. Barlow
aa0ec40102
Change license of all GPLv3 files to MPL-2.0
...
https://github.com/jbarlow83/OCRmyPDF/issues/600
2020-08-05 00:44:42 -07:00
James R. Barlow
dc42beb6a8
More typing improvements
...
Typing fixes bugs.
2020-06-30 15:02:30 -07:00
James R. Barlow
62924ee280
Improve API documentation
2020-06-30 04:20:14 -07:00
James R. Barlow
91456e19a4
pdfa.py: Fix misleading comment
2019-12-11 01:05:47 -08:00
James R. Barlow
45bea1c0e0
Import and docstring cleanup
2019-11-09 14:56:30 -08:00
James R. Barlow
078bc2abe9
pdfa: assume 3 RGB channels always
2019-09-11 12:55:38 -07:00
James R. Barlow
17ac9d7a9a
Embed ICC profile in .ps (fixing Ghostscript 9.28 compatibility)
...
Previously we included the
filename, which required Postscript to run with file access enabled. For
security, Ghostscript 9.28 enables ``-dSAFER`` and as such, no longer
permits access to any file by default. This fix is necessary for
compatibility with Ghostscript 9.28.
We use ASCII85 for a slightly more compact representation.
2019-09-05 13:17:26 -07:00
James R. Barlow
5f00e4f9d8
Sort imports
2019-07-27 04:51:52 -07:00
James R. Barlow
e0c8dadcce
Explicitly close most pikepdf.Pdf when done with them
2019-04-18 15:02:12 -07:00
James R. Barlow
c771938907
Convert to f-strings where it makes sense
2018-12-31 15:01:19 -08:00
James R. Barlow
cfc5cdf47d
pdfa: remove a pile of deprecated code
...
It's now handled in pikepdf.
2018-12-31 00:05:13 -08:00
James R. Barlow
0880b16491
Sort imports with isort
2018-12-30 01:28:15 -08:00
James R. Barlow
06308a22ce
Reformat with black
2018-12-30 01:27:49 -08:00
James R. Barlow
632dab2cc0
Replace Ghostscript DOCINFO and fix 9.25 metadata date regression
...
We no longer use Ghostscript to manage PDF metadata, instead
omitting the DOCINFO segment from the pdfmark file we generate.
Instead all of the relevant metadata code has been migrated to pikepdf,
and we use that API. This should be more consistent and fixes the
Ghostscript version-depedent quirks.
Also removes our python-xmp-toolkit dependency, except for
testing.
2018-12-13 18:13:30 -08:00
James R. Barlow
a938bbea55
Remove more libxmp dependencies
2018-12-12 22:02:35 -08:00
James R. Barlow
414407fbd6
Deprecate encode/decode_pdf_date and remap to pikepdf version
2018-12-12 22:01:21 -08:00
James R. Barlow
076fc717df
pdfa: replace PDF/A checking with pikepdf implementation
2018-12-12 21:41:16 -08:00
Stefan Weil and jbarlow83
a873278c2a
Fix some recommendations from LGTM ( #309 )
...
* Fix unreachable code
This fixes an issue reported by LGTM.
Signed-off-by: Stefan Weil <sw@weilnetz.de >
* Remove unused imports
This fixes several recommendations from LGTM.
Signed-off-by: Stefan Weil <sw@weilnetz.de >
2018-10-28 13:59:58 -07:00
James R. Barlow
96ba75eabd
Ghostscript: fix issues in strict ASCII implementation
2018-09-16 15:41:54 -07:00
James R. Barlow
517b385fe5
Work around loss of Unicode DOCINFO in Ghostscript 9.24+
...
Ghostscript no longer supports UTF-16-BE-hex strings as a way of
supplying Unicode data in pdfmark so we have lost this functionality too:
http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=e997c6836d243ab37fe3a5f0d57974af95eb5eac
For users this means setting --title, --author, etc. will not work if gs
9.24 is installed, but if the file has existing metadata it might work.
For now we enforce police-state-strict ASCII, until there's time to
implement proper metadata editing. Relevant tests set to xfail.
2018-09-13 21:33:39 -07:00
James R. Barlow
58642aa98b
Fix issue #275 : doesn't work when installed in non-Unicode path
...
Closes #275
2018-07-07 01:35:05 -07:00
James R. Barlow
f1305e5a37
pdfa: fix function using closure when it shouldn't
2018-06-23 01:52:36 -07:00
James R. Barlow
324598e992
Remove helpers.universal_open()
...
This helper function only had a single usage, this was always an awkward
way to support Python 3.5 that I'd forget to use.
2018-06-22 17:56:20 -07:00
James R. Barlow
faaa4a1def
Ghostscript, PDF/A: support pathlib
2018-06-22 17:45:10 -07:00
James R. Barlow
cf43c06f46
Use python-xmp-toolkit for xmp check
...
Eliminates PyPDF2 and defusedxml as dependencies.
2018-05-29 22:00:52 -07:00
James R. Barlow
9608b22d34
Remove all uses of PyPDF2 except PDF/A check
...
Leave PDF/A check alone for now, since pikepdf has no equivalent.
2018-05-26 02:07:18 -07:00
James R. Barlow
8a9f174f63
Fix XMP validation issue with /CreationDate
...
Related to previous validation issue. If the /CreationDate had no
timezone, Ghostscript also creates invalid metadata. Work around this.
Also fix up PDF date decoding, and transcode dates to standardize them.
2018-05-03 16:30:20 -07:00
James R. Barlow
1a516b2af9
Fix regression: time stamp test suite failures
2018-04-17 16:59:21 -07:00
James R. Barlow
a620724d6a
Fix PDF/A validation failure due to timezone being omitted from /ModDate
2018-04-17 15:16:48 -07:00
James R. Barlow
4b6153ad18
Use defusedxml for XML parsing when reading XMP
2018-04-10 14:25:13 -07:00
James R. Barlow
7a1cd39b21
Fix creation date metadata lost from input
...
Closes #247
2018-04-02 17:53:39 -07:00
James R. Barlow
b36df9cf9e
pdfa: codecs.encode -> hexlify (simpler)
2018-03-29 22:17:23 -07:00