python3Packages.pikepdf: 2.16.1 -> 3.0.0

https://pikepdf.readthedocs.io/en/latest/release_notes.html#v3-0-0
This commit is contained in:
Robert Schütz 2021-09-18 13:49:10 -07:00
parent ed332b0bc7
commit fc1c501f4c
2 changed files with 40 additions and 13 deletions

View file

@ -5,13 +5,12 @@
, fetchPypi
, hypothesis
, isPy3k
, jbig2dec
, lxml
, mupdf
, pillow
, psutil
, pybind11
, pytest-cov
, pytest-helpers-namespace
, pytest-timeout
, pytest-xdist
, pytestCheckHook
, python-dateutil
@ -20,18 +19,27 @@
, setuptools
, setuptools-scm
, setuptools-scm-git-archive
, substituteAll
}:
buildPythonPackage rec {
pname = "pikepdf";
version = "2.16.1";
version = "3.0.0";
disabled = ! isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "sha256-4k3/avMfHrcy/LXbRniDXR8xJkOZb9zZ2+uKylK8Dd4=";
sha256 = "sha256-PBeTfiMLIq+pdeaRMOid8pEd0eLHu+IAE4aEFU5CiEM=";
};
patches = [
(substituteAll {
src = ./paths.patch;
jbig2dec = "${lib.getBin jbig2dec}/bin/jbig2dec";
mudraw = "${lib.getBin mupdf}/bin/mudraw";
})
];
buildInputs = [
pybind11
qpdf
@ -45,11 +53,8 @@ buildPythonPackage rec {
checkInputs = [
attrs
hypothesis
pytest-helpers-namespace
pytest-timeout
pytest-xdist
psutil
pytest-cov
pytestCheckHook
python-dateutil
python-xmp-toolkit
@ -62,17 +67,13 @@ buildPythonPackage rec {
setuptools
];
preBuild = ''
HOME=$TMPDIR
'';
pythonImportsCheck = [ "pikepdf" ];
meta = with lib; {
homepage = "https://github.com/pikepdf/pikepdf";
description = "Read and write PDFs with Python, powered by qpdf";
license = licenses.mpl20;
maintainers = [ maintainers.kiwi ];
maintainers = with maintainers; [ kiwi dotlambda ];
changelog = "https://github.com/pikepdf/pikepdf/blob/${version}/docs/release_notes.rst";
};
}

View file

@ -0,0 +1,26 @@
diff --git a/src/pikepdf/_methods.py b/src/pikepdf/_methods.py
index 70cdc9e..c3a14d0 100644
--- a/src/pikepdf/_methods.py
+++ b/src/pikepdf/_methods.py
@@ -190,7 +190,7 @@ def _mudraw(buffer, fmt) -> bytes:
tmp_in.flush()
proc = run(
- ['mudraw', '-F', fmt, '-o', '-', tmp_in.name],
+ ['@mudraw@', '-F', fmt, '-o', '-', tmp_in.name],
stdout=PIPE,
stderr=PIPE,
check=True,
diff --git a/src/pikepdf/jbig2.py b/src/pikepdf/jbig2.py
index 80cc910..64f6d31 100644
--- a/src/pikepdf/jbig2.py
+++ b/src/pikepdf/jbig2.py
@@ -25,7 +25,7 @@ def extract_jbig2(
global_path = Path(tmpdir) / "global"
output_path = Path(tmpdir) / "outfile"
- args = ["jbig2dec", "-e", "-o", os.fspath(output_path)]
+ args = ["@jbig2dec@", "-e", "-o", os.fspath(output_path)]
# Get the raw stream, because we can't decode im_obj - that is why we are here
# (Strictly speaking we should remove any non-JBIG2 filters if double encoded)