svn commit: r560860 - in head/textproc/py-pikepdf: . files
Kai Knoblich
kai at FreeBSD.org
Sat Jan 9 13:18:01 UTC 2021
Author: kai
Date: Sat Jan 9 13:18:00 2021
New Revision: 560860
URL: https://svnweb.freebsd.org/changeset/ports/560860
Log:
textproc/py-pikepdf: Unbreak build with qpdf 10.1.0 after r560703
* Bump PORTREVISION due package change.
src/qpdf/page.cpp:82:10: error: no matching member function for call to 'def'
.def("externalize_inline_images", &QPDFPageObjectHelper::externalizeInlineImages,
~^~~
Reported by: pkg-fallout
Added:
head/textproc/py-pikepdf/files/
head/textproc/py-pikepdf/files/patch-src_qpdf_page.cpp (contents, props changed)
head/textproc/py-pikepdf/files/patch-tests_test__filters.py (contents, props changed)
Modified:
head/textproc/py-pikepdf/Makefile
Modified: head/textproc/py-pikepdf/Makefile
==============================================================================
--- head/textproc/py-pikepdf/Makefile Sat Jan 9 13:15:12 2021 (r560859)
+++ head/textproc/py-pikepdf/Makefile Sat Jan 9 13:18:00 2021 (r560860)
@@ -2,6 +2,7 @@
PORTNAME= pikepdf
DISTVERSION= 1.19.3
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
Added: head/textproc/py-pikepdf/files/patch-src_qpdf_page.cpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/textproc/py-pikepdf/files/patch-src_qpdf_page.cpp Sat Jan 9 13:18:00 2021 (r560860)
@@ -0,0 +1,22 @@
+From: "James R. Barlow" <james at purplerock.ca>
+Date: Mon, 4 Jan 2021 20:21:51 -0800
+Subject: [PATCH] Fix externalize_inline_images for qpdf 10.1.0
+
+Obtained from:
+
+https://github.com/pikepdf/pikepdf/commit/7ac9b058104219b26747f3fc9761ac6b3c037402.patch
+
+--- src/qpdf/page.cpp.orig 2020-09-09 22:57:09 UTC
++++ src/qpdf/page.cpp
+@@ -79,7 +79,10 @@ void init_page(py::module& m)
+ .def("_get_mediabox", &QPDFPageObjectHelper::getMediaBox)
+ .def("_get_cropbox", &QPDFPageObjectHelper::getCropBox)
+ .def("_get_trimbox", &QPDFPageObjectHelper::getTrimBox)
+- .def("externalize_inline_images", &QPDFPageObjectHelper::externalizeInlineImages,
++ .def("externalize_inline_images",
++ [](QPDFPageObjectHelper &poh, size_t min_size = 0) {
++ return poh.externalizeInlineImages(min_size);
++ },
+ py::arg("min_size") = 0,
+ R"~~~(
+ Convert inlines image to normal (external) images.
Added: head/textproc/py-pikepdf/files/patch-tests_test__filters.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/textproc/py-pikepdf/files/patch-tests_test__filters.py Sat Jan 9 13:18:00 2021 (r560860)
@@ -0,0 +1,43 @@
+From: "James R. Barlow" <james at purplerock.ca>
+Date: Wed, 6 Jan 2021 00:22:16 -0800
+Subject: [PATCH] libqpdf 10.1.0 raises different exception [1]
+
+The different errors are acceptable to us; actually they are more
+correct than the original behavior.
+
+From: "James R. Barlow" <james at purplerock.ca>
+Date: Wed, 6 Jan 2021 03:39:50 -0800
+Subject: [PATCH] Fix test_tokenfilter_is_abstract [2]
+
+Obtained from:
+
+[1] https://github.com/pikepdf/pikepdf/commit/fe4b568ac88ba551458578613b013ac17edf5c4e.patch
+[2] https://github.com/pikepdf/pikepdf/commit/7ca375cb6ff82011d716da1614ef5721a97f91b0.patch
+
+--- tests/test_filters.py.orig 2020-09-09 22:57:09 UTC
++++ tests/test_filters.py
+@@ -74,19 +74,17 @@ class FilterInvalid(pikepdf.TokenFilter):
+
+ def test_invalid_handle_token(pal):
+ page = pikepdf.Page(pal.pages[0])
+- with pytest.raises(pikepdf.PdfError):
+- result = page.get_filtered_contents(FilterInvalid())
++ with pytest.raises((TypeError, pikepdf.PdfError)):
++ page.get_filtered_contents(FilterInvalid())
+
+
+ def test_invalid_tokenfilter(pal):
+ page = pikepdf.Page(pal.pages[0])
+ with pytest.raises(TypeError):
+- result = page.get_filtered_contents(list())
++ page.get_filtered_contents(list())
+
+
+ def test_tokenfilter_is_abstract(pal):
+ page = pikepdf.Page(pal.pages[0])
+- try:
+- result = page.get_filtered_contents(pikepdf.TokenFilter())
+- except pikepdf.PdfError:
+- assert 'Tried to call pure virtual' in pal.get_warnings()[0]
++ with pytest.raises((RuntimeError, pikepdf.PdfError)):
++ page.get_filtered_contents(pikepdf.TokenFilter())
More information about the svn-ports-all
mailing list