You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-python/matplotlib/files/matplotlib-3.4.1-xelatex-te...

75 lines
3.1 KiB

From d0f92f582800b6bd6b4bb2e59cd7e5b3cd6b5948 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sun, 20 Jun 2021 14:46:17 +0200
Subject: [PATCH] _GSConverter: handle stray 'GS' in output gracefully
Search the GS output stream for either "GS<" or "GS>" explicitly rather
than any "GS", in order to prevent the code from wrongly matching stray
"GS". This fixes a recent test regression on Gentoo where the following
output seems to have been wrongly matched:
**** Error 'gs' ignored -- ExtGState missing from Resources.
^^
Fixes #20472
---
lib/matplotlib/testing/compare.py | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/lib/matplotlib/testing/compare.py b/lib/matplotlib/testing/compare.py
index 3957188b3e2..27af3e186bd 100644
--- a/lib/matplotlib/testing/compare.py
+++ b/lib/matplotlib/testing/compare.py
@@ -154,15 +154,17 @@ def encode_and_escape(name):
+ b") run flush\n")
self._proc.stdin.flush()
# GS> if nothing left on the stack; GS<n> if n items left on the stack.
- err = self._read_until(b"GS")
- stack = self._read_until(b">")
- if stack or not os.path.exists(dest):
- stack_size = int(stack[1:]) if stack else 0
- self._proc.stdin.write(b"pop\n" * stack_size)
- # Using the systemencoding should at least get the filenames right.
- raise ImageComparisonFailure(
- (err + b"GS" + stack + b">")
- .decode(sys.getfilesystemencoding(), "replace"))
+ err = self._read_until((b"GS<", b"GS>"))
+ if err.endswith(b"GS<"):
+ stack = self._read_until(b">")
+ if stack or not os.path.exists(dest):
+ stack_size = int(stack[1:]) if stack else 0
+ self._proc.stdin.write(b"pop\n" * stack_size)
+ # Using the systemencoding should at least get the filenames
+ # right.
+ raise ImageComparisonFailure(
+ (err + b"GS" + stack + b">")
+ .decode(sys.getfilesystemencoding(), "replace"))
class _SVGConverter(_Converter):
From d73dd52edf7ec106cf2f6c0ffc79dcda31102ecd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sun, 20 Jun 2021 15:07:56 +0200
Subject: [PATCH] increase test_backend_pgf.py::test_xelatex[pdf] tol
---
lib/matplotlib/tests/test_backend_pgf.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/matplotlib/tests/test_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py
index 55e375311..684f38fb7 100644
--- a/lib/matplotlib/tests/test_backend_pgf.py
+++ b/lib/matplotlib/tests/test_backend_pgf.py
@@ -80,7 +80,7 @@ def test_common_texification(plain_text, escaped_text):
# test compiling a figure to pdf with xelatex
@needs_xelatex
@pytest.mark.backend('pgf')
-@image_comparison(['pgf_xelatex.pdf'], style='default')
+@image_comparison(['pgf_xelatex.pdf'], style='default', tol=0.8)
def test_xelatex():
rc_xelatex = {'font.family': 'serif',
'pgf.rcfonts': False}
--
2.32.0