public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Michael J Gruber <mjg@fedoraproject.org>
To: git-commits@fedoraproject.org
Subject: [rpms/python-PyMuPDF] f44: Update to new upstream release 1.28.2 (rhbz#2446026)
Date: Sun, 16 Aug 2026 19:05:07 GMT [thread overview]
Message-ID: <178690710770.1.17264544627521159848.rpms-python-PyMuPDF-5e1f75987023@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/python-PyMuPDF
Branch : f44
Commit : 5e1f75987023e774795f8f7bbc0134489348939f
Author : Michael J Gruber <mjg@fedoraproject.org>
Date : 2026-08-07T12:34:29+02:00
Stats : +51/-115 in 10 file(s)
URL : https://src.fedoraproject.org/rpms/python-PyMuPDF/c/5e1f75987023e774795f8f7bbc0134489348939f?branch=f44
Log:
Update to new upstream release 1.28.2 (rhbz#2446026)
- Compatible with MuPDF-1.28.2.
- pymupdf.Document.__init__(): new arg `archive` to support documents with archives.
- pymupdf.Document.convert_to_pdf(): also generate links.
- pymupdf.Document.save() now saves non-PDF documents in PDF format.
- New method pymupdf.Document.apply_css().
- Various fixes.
---
diff --git a/.gitignore b/.gitignore
index f8bb639..481a2f1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -107,3 +107,5 @@
/PyMuPDF-1.26.5.tar.gz
/PyMuPDF-1.27.1.tar.gz
/PyMuPDF-1.27.2.2.tar.gz
+/PyMuPDF-1.28.0.tar.gz
+/PyMuPDF-1.28.2.tar.gz
diff --git a/0001-adjust-tests-to-tesseract-5.5.1.patch b/0001-adjust-tests-to-tesseract-5.5.1.patch
index a6544c1..0ad1540 100644
--- a/0001-adjust-tests-to-tesseract-5.5.1.patch
+++ b/0001-adjust-tests-to-tesseract-5.5.1.patch
@@ -1,5 +1,5 @@
-From 735e1b2ebc83223287224ab3df08e2e5acb1d05c Mon Sep 17 00:00:00 2001
-Message-ID: <735e1b2ebc83223287224ab3df08e2e5acb1d05c.1772136348.git.mjg@fedoraproject.org>
+From 5f1f16ebdc828f7ffca5d589289dad8e7f8e53ce Mon Sep 17 00:00:00 2001
+Message-ID: <5f1f16ebdc828f7ffca5d589289dad8e7f8e53ce.1784469686.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Tue, 15 Jul 2025 17:21:56 +0200
Subject: [PATCH] adjust tests to tesseract 5.5.1
@@ -9,7 +9,7 @@ Subject: [PATCH] adjust tests to tesseract 5.5.1
1 file changed, 4 insertions(+)
diff --git a/tests/test_tesseract.py b/tests/test_tesseract.py
-index 11c38352..f94557b0 100644
+index 734bdae5..20e5d524 100644
--- a/tests/test_tesseract.py
+++ b/tests/test_tesseract.py
@@ -69,6 +69,8 @@ def test_3842b():
@@ -21,7 +21,7 @@ index 11c38352..f94557b0 100644
else:
assert 'Tesseract language initialisation failed' in str(e)
-@@ -87,6 +89,8 @@ def test_3842():
+@@ -92,6 +94,8 @@ def test_3842():
print(f'test_3842(): received exception: {e}', flush=1)
if 'No tessdata specified and Tesseract is not installed' in str(e):
pass
@@ -31,5 +31,5 @@ index 11c38352..f94557b0 100644
pass
else:
--
-2.53.0.546.g660574eaac
+2.55.0.430.g36796e6be8
diff --git a/0001-fix-test_-font.patch b/0001-fix-test_-font.patch
index 3350e26..1587859 100644
--- a/0001-fix-test_-font.patch
+++ b/0001-fix-test_-font.patch
@@ -1,5 +1,5 @@
-From bfe6ec95145551ca9e4d1f2dfb97cf498286bbae Mon Sep 17 00:00:00 2001
-Message-ID: <bfe6ec95145551ca9e4d1f2dfb97cf498286bbae.1772136358.git.mjg@fedoraproject.org>
+From 13f153faf141dbeb74ac7738856ec04d735ae31e Mon Sep 17 00:00:00 2001
+Message-ID: <13f153faf141dbeb74ac7738856ec04d735ae31e.1784469695.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Sat, 15 Apr 2023 17:53:27 +0200
Subject: [PATCH] fix test_*font
@@ -13,10 +13,10 @@ Adjust the tests to use the fallback font instead.
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/test_general.py b/tests/test_general.py
-index 96d070f1..f86ccac7 100644
+index 0d729107..d4da7bee 100644
--- a/tests/test_general.py
+++ b/tests/test_general.py
-@@ -188,9 +188,9 @@ def test_bug1971():
+@@ -183,9 +183,9 @@ def test_bug1971():
assert doc.is_closed
def test_default_font():
@@ -29,8 +29,8 @@ index 96d070f1..f86ccac7 100644
def test_add_ink_annot():
import math
-@@ -255,7 +255,7 @@ def test_get_text_dict():
- assert pymupdf.TOOLS.mupdf_warnings() == 'bogus font ascent/descent values (0 / 0)'
+@@ -248,7 +248,7 @@ def test_get_text_dict():
+ json.dumps( blocks, indent=4)
def test_font():
- font = pymupdf.Font()
@@ -39,5 +39,5 @@ index 96d070f1..f86ccac7 100644
bbox = font.glyph_bbox( 65)
print( f'bbox={bbox!r}')
--
-2.53.0.546.g660574eaac
+2.55.0.430.g36796e6be8
diff --git a/0001-remove-usage-of-typing.ByteString.patch b/0001-remove-usage-of-typing.ByteString.patch
index 6fd14c8..12b8823 100644
--- a/0001-remove-usage-of-typing.ByteString.patch
+++ b/0001-remove-usage-of-typing.ByteString.patch
@@ -1,5 +1,5 @@
-From f5bfa9dc0c80b3715fa8526d81694aa5c54a1fa5 Mon Sep 17 00:00:00 2001
-Message-ID: <f5bfa9dc0c80b3715fa8526d81694aa5c54a1fa5.1780689448.git.mjg@fedoraproject.org>
+From 00d5ee792831504f8ebfebd1bdf4d91ab9534648 Mon Sep 17 00:00:00 2001
+Message-ID: <00d5ee792831504f8ebfebd1bdf4d91ab9534648.1784469682.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Fri, 5 Jun 2026 21:55:08 +0200
Subject: [PATCH] remove usage of typing.ByteString
@@ -8,7 +8,7 @@ typing.ByteString is deprecated in python 3.15 and slated for removal in
python 3.17. This creates deprecation warnings which trip up our tests.
Since we are requiring python >= 3.10 already, we can switch to the
-proper alterantive unconditionally now.
+proper alternative unconditionally now.
---
src/__init__.py | 7 +------
src/utils.py | 9 ++-------
@@ -17,10 +17,10 @@ proper alterantive unconditionally now.
4 files changed, 5 insertions(+), 25 deletions(-)
diff --git a/src/__init__.py b/src/__init__.py
-index 8b756ccf..2bff8ec0 100644
+index 2c3e7c7a..aa524238 100644
--- a/src/__init__.py
+++ b/src/__init__.py
-@@ -462,12 +462,7 @@ def _format_g(value, *, fmt='%g'):
+@@ -464,12 +464,7 @@ def _format_g(value, *, fmt='%g'):
format_g = _format_g
@@ -91,5 +91,5 @@ index c1369afb..3639834c 100644
AnyType = typing.Any
OptInt = typing.Union[int, None]
--
-2.54.0.1146.g083d50a523
+2.55.0.430.g36796e6be8
diff --git a/0001-src-__init__.py-fix-incorrect-generation-of-PDF-cont.patch b/0001-src-__init__.py-fix-incorrect-generation-of-PDF-cont.patch
deleted file mode 100644
index 3457b75..0000000
--- a/0001-src-__init__.py-fix-incorrect-generation-of-PDF-cont.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 4ab033149948b124be450f653a1a1645f1094350 Mon Sep 17 00:00:00 2001
-Message-ID: <4ab033149948b124be450f653a1a1645f1094350.1775074125.git.mjg@fedoraproject.org>
-From: Julian Smith <julian.smith@artifex.com>
-Date: Mon, 30 Mar 2026 12:38:41 +0100
-Subject: [PATCH] src/__init__.py: fix incorrect generation of PDF content
- "lineJoin j".
-
-This bug was introduced in release 1.27.2.2.
----
- src/__init__.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/__init__.py b/src/__init__.py
-index e3845575..d51472a6 100644
---- a/src/__init__.py
-+++ b/src/__init__.py
-@@ -15761,7 +15761,7 @@ class Shape:
- if lineCap != 0:
- self.draw_cont = f"{lineCap} J\n" + self.draw_cont
- if lineJoin != 0:
-- self.draw_cont = "{lineJoin} j\n" + self.draw_cont
-+ self.draw_cont = f"{lineJoin} j\n" + self.draw_cont
-
- if dashes not in (None, "", "[] 0"):
- self.draw_cont = f"{dashes} d\n" + self.draw_cont
---
-2.53.0.1300.gfe94a17884
-
diff --git a/0001-test_pixmap-adjust-to-turbojpeg.patch b/0001-test_pixmap-adjust-to-turbojpeg.patch
index 6c37c9a..7adbbdd 100644
--- a/0001-test_pixmap-adjust-to-turbojpeg.patch
+++ b/0001-test_pixmap-adjust-to-turbojpeg.patch
@@ -1,5 +1,5 @@
-From 2aa84040e144958aff4ba74610a0f58e034b2b9c Mon Sep 17 00:00:00 2001
-Message-ID: <2aa84040e144958aff4ba74610a0f58e034b2b9c.1772136355.git.mjg@fedoraproject.org>
+From a4d95819fe405a00ada1ec20cea289d95126db9a Mon Sep 17 00:00:00 2001
+Message-ID: <a4d95819fe405a00ada1ec20cea289d95126db9a.1784469692.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Thu, 11 May 2023 16:40:03 +0200
Subject: [PATCH] test_pixmap: adjust to turbojpeg
@@ -12,10 +12,10 @@ format.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_pixmap.py b/tests/test_pixmap.py
-index bfbf3c56..ee179b8e 100644
+index 9a89d32b..8f18f0a3 100644
--- a/tests/test_pixmap.py
+++ b/tests/test_pixmap.py
-@@ -106,7 +106,7 @@ def test_color_count():
+@@ -107,7 +107,7 @@ def test_color_count():
e.g. in Linux system installs.
'''
pm = pymupdf.Pixmap(imgfile)
@@ -25,5 +25,5 @@ index bfbf3c56..ee179b8e 100644
def test_memoryview():
pm = pymupdf.Pixmap(imgfile)
--
-2.53.0.546.g660574eaac
+2.55.0.430.g36796e6be8
diff --git a/0001-tests-adjust-to-verbose-font-warning.patch b/0001-tests-adjust-to-verbose-font-warning.patch
index d1c6441..e8d157c 100644
--- a/0001-tests-adjust-to-verbose-font-warning.patch
+++ b/0001-tests-adjust-to-verbose-font-warning.patch
@@ -1,5 +1,5 @@
-From a61a624e113d4764ac59f5f3bee09a1c4ba46303 Mon Sep 17 00:00:00 2001
-Message-ID: <a61a624e113d4764ac59f5f3bee09a1c4ba46303.1772136351.git.mjg@fedoraproject.org>
+From 38adc2bda4436a918e866d7ddab18d6b2eb0d8ae Mon Sep 17 00:00:00 2001
+Message-ID: <38adc2bda4436a918e866d7ddab18d6b2eb0d8ae.1784469689.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Wed, 4 Jun 2025 15:30:42 +0200
Subject: [PATCH] tests: adjust to verbose font warning
@@ -7,10 +7,9 @@ Subject: [PATCH] tests: adjust to verbose font warning
---
tests/test_clip_page.py | 2 +-
tests/test_font.py | 2 +-
- tests/test_general.py | 6 +++---
- tests/test_pixmap.py | 4 ++--
+ tests/test_pixmap.py | 2 +-
tests/test_tables.py | 3 +--
- 5 files changed, 8 insertions(+), 9 deletions(-)
+ 4 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/tests/test_clip_page.py b/tests/test_clip_page.py
index 170418a9..36778ee0 100644
@@ -26,70 +25,33 @@ index 170418a9..36778ee0 100644
# has a non-empty intersection with the rectangle.
chars = [
diff --git a/tests/test_font.py b/tests/test_font.py
-index 1b7fd4a9..3bde1a4e 100644
+index ccbe12d3..e589cc27 100644
--- a/tests/test_font.py
+++ b/tests/test_font.py
-@@ -333,4 +333,4 @@ def test_4457():
+@@ -330,7 +330,7 @@ def test_4457():
wt = pymupdf.TOOLS.mupdf_warnings()
print(f'{wt=}')
if pymupdf.mupdf_version_tuple < (1, 27):
- assert wt == 'bogus font ascent/descent values (0 / 0)\n... repeated 5 times...'
+ assert 'bogus font ascent/descent values (0 / 0)' in wt
-diff --git a/tests/test_general.py b/tests/test_general.py
-index f86ccac7..52c885a9 100644
---- a/tests/test_general.py
-+++ b/tests/test_general.py
-@@ -73,7 +73,7 @@ def test_iswrapped():
- page = doc[0]
- assert page.is_wrapped
- if (1, 26, 0) <= pymupdf.mupdf_version_tuple < (1, 27):
-- assert pymupdf.TOOLS.mupdf_warnings() == 'bogus font ascent/descent values (0 / 0)'
-+ assert 'bogus font ascent/descent values (0 / 0)' in pymupdf.TOOLS.mupdf_warnings()
- def test_wrapcontents():
-@@ -88,7 +88,7 @@ def test_wrapcontents():
- page.clean_contents()
- wt = pymupdf.TOOLS.mupdf_warnings()
- if (1, 26, 0) <= pymupdf.mupdf_version_tuple < (1, 27):
-- assert wt == 'bogus font ascent/descent values (0 / 0)\nPDF stream Length incorrect'
-+ assert 'bogus font ascent/descent values (0 / 0)' in wt and '\nPDF stream Length incorrect' in wt
- else:
- assert wt == 'PDF stream Length incorrect'
-
-@@ -252,7 +252,7 @@ def test_get_text_dict():
- # Check no opaque types in `blocks`.
- json.dumps( blocks, indent=4)
- if (1, 26, 0) <= pymupdf.mupdf_version_tuple < (1, 27):
-- assert pymupdf.TOOLS.mupdf_warnings() == 'bogus font ascent/descent values (0 / 0)'
-+ assert 'bogus font ascent/descent values (0 / 0)' in pymupdf.TOOLS.mupdf_warnings()
-
- def test_font():
- font = pymupdf.Font(ordering=0)
+ def test_5049():
diff --git a/tests/test_pixmap.py b/tests/test_pixmap.py
-index ee179b8e..22d9c38c 100644
+index 8f18f0a3..92305cec 100644
--- a/tests/test_pixmap.py
+++ b/tests/test_pixmap.py
-@@ -199,7 +199,7 @@ def test_3050():
- assert rms == 0
- wt = pymupdf.TOOLS.mupdf_warnings()
- if (1, 26, 0) <= pymupdf.mupdf_version_tuple < (1, 27):
-- assert wt == 'bogus font ascent/descent values (0 / 0)\nPDF stream Length incorrect'
-+ assert 'bogus font ascent/descent values (0 / 0)' in wt and '\nPDF stream Length incorrect' in wt
- else:
- assert wt == 'PDF stream Length incorrect'
-
-@@ -537,7 +537,7 @@ def test_4435():
+@@ -540,7 +540,7 @@ def test_4435():
pixmap = page.get_pixmap(alpha=False, dpi=120)
print(f'Called page.get_pixmap().', flush=1)
if pymupdf.mupdf_version_tuple < (1, 27):
- assert pymupdf.TOOLS.mupdf_warnings() == 'bogus font ascent/descent values (0 / 0)\n... repeated 9 times...'
+ assert 'bogus font ascent/descent values (0 / 0)' in pymupdf.TOOLS.mupdf_warnings()
-
-
- def test_4423():
+ elif pymupdf.mupdf_version_tuple >= (1, 28, 0):
+ wt_expected = ('limit error: Overly large image\ncannot render glyph\n' * 42).rstrip()
+ assert pymupdf.TOOLS.mupdf_warnings() == wt_expected
diff --git a/tests/test_tables.py b/tests/test_tables.py
-index d5fa5ef7..308035c5 100644
+index d42f9e65..ca390344 100644
--- a/tests/test_tables.py
+++ b/tests/test_tables.py
@@ -188,8 +188,7 @@ def test_2979():
@@ -103,5 +65,5 @@ index d5fa5ef7..308035c5 100644
--
-2.53.0.546.g660574eaac
+2.55.0.430.g36796e6be8
diff --git a/0001-tests-conftest-do-not-call-pip.patch b/0001-tests-conftest-do-not-call-pip.patch
index 1450e8a..4f27292 100644
--- a/0001-tests-conftest-do-not-call-pip.patch
+++ b/0001-tests-conftest-do-not-call-pip.patch
@@ -1,5 +1,5 @@
-From 85192c321adc855606eab63da47dcefdbc3f9f9b Mon Sep 17 00:00:00 2001
-Message-ID: <85192c321adc855606eab63da47dcefdbc3f9f9b.1772136344.git.mjg@fedoraproject.org>
+From 3cf05394db657986f73c2e0cf8008c99ff6ec982 Mon Sep 17 00:00:00 2001
+Message-ID: <3cf05394db657986f73c2e0cf8008c99ff6ec982.1784469684.git.mjg@fedoraproject.org>
From: Michael J Gruber <mjg@fedoraproject.org>
Date: Sat, 1 Nov 2025 22:32:10 +0100
Subject: [PATCH] tests/conftest: do not call pip
@@ -10,10 +10,10 @@ Oh well ...
1 file changed, 1 deletion(-)
diff --git a/tests/conftest.py b/tests/conftest.py
-index c79e6990..3a4ae7a4 100644
+index 3c268c15..aa993a8d 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
-@@ -36,7 +36,6 @@ def install_required_packages():
+@@ -37,7 +37,6 @@ def install_required_packages():
print(f'{__file__}:install_required_packages)(): Running: {command}', flush=1)
subprocess.run(command, shell=1, check=1)
@@ -22,5 +22,5 @@ index c79e6990..3a4ae7a4 100644
@pytest.fixture(scope="session", autouse=True)
--
-2.53.0.546.g660574eaac
+2.55.0.430.g36796e6be8
diff --git a/python-PyMuPDF.spec b/python-PyMuPDF.spec
index f950960..f640671 100644
--- a/python-PyMuPDF.spec
+++ b/python-PyMuPDF.spec
@@ -6,7 +6,7 @@
%bcond barcode 1
Name: python-%{pypi_name}
-Version: 1.27.2.2
+Version: 1.28.2
Release: %autorelease
Summary: Python binding for MuPDF - a lightweight PDF and XPS viewer
@@ -21,9 +21,7 @@ Patch: 0001-test_pixmap-adjust-to-turbojpeg.patch
Patch: 0001-tests-adjust-to-verbose-font-warning.patch
Patch: 0001-adjust-tests-to-tesseract-5.5.1.patch
Patch: 0001-tests-conftest-do-not-call-pip.patch
-# Upstream patches from main branch:
-Patch: 0001-src-__init__.py-fix-incorrect-generation-of-PDF-cont.patch
-# Suggested upstream::
+# Suggested upstream:
# https://github.com/pymupdf/PyMuPDF/pull/5015
Patch: 0001-remove-usage-of-typing.ByteString.patch
# Replace removed Python 2 C API macros with Python 3 equivalents
@@ -125,8 +123,8 @@ SKIP="$SKIP and not test_3050"
SKIP="$SKIP and not test_subset_fonts"
# test_fit_springer depends on font library version (harfbuzz etc)
SKIP="$SKIP and not test_fit_springer"
-# test_spikes uses a binary diff on rendered images
-SKIP="$SKIP and not test_spikes"
+# these tests use a binary diff on rendered images
+SKIP="$SKIP and not test_spikes and not test_5001"
# these compare renderings with system fonts or missing fonts
SKIP="$SKIP and not test_4180 and not test_4613 and not test_htmlbox1"
# test downloads data from the internet
@@ -156,6 +154,8 @@ SKIP="$SKIP and not test_4435"
SKIP="$SKIP and not test_insert and not test_3087"
# tests are known to fail on newer Fedoras (reported)
SKIP="$SKIP and not test_layout and not test_pageids"
+# test depends on symbols in standard font
+SKIP="$SKIP and not test_markdown_bad_unicode"
export PYMUPDF_SYSINSTALL_TEST=1
%pytest -k "$SKIP"
diff --git a/sources b/sources
index a361f5a..8af52e5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (PyMuPDF-1.27.2.2.tar.gz) = 6a88cbe7187be13abf4154d5761a16aa7301e37c887d0968d8d8bc49ad9787ff989bb82eea968741af6889e46d699a32487d356aa93f9bfdf522ef8d1347b57a
+SHA512 (PyMuPDF-1.28.2.tar.gz) = 5676b3ecc0c4f95e155f55550f4487dcc09e64e8e109a22117a5ed6c8a7c2826f1176e861a4b0a3a6ab187346dd2cbce611a16932ec9bcdb9d6801be8c301c38
reply other threads:[~2026-08-16 19:05 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178690710770.1.17264544627521159848.rpms-python-PyMuPDF-5e1f75987023@fedoraproject.org \
--to=mjg@fedoraproject.org \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox