From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pytest/, dev-python/pytest/files/
Date: Tue, 18 Feb 2025 12:50:10 +0000 (UTC) [thread overview]
Message-ID: <1739882988.55fc42718e2a6e2a4155b0f3f069646173041aa4.mgorny@gentoo> (raw)
commit: 55fc42718e2a6e2a4155b0f3f069646173041aa4
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 18 11:29:35 2025 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Feb 18 12:49:48 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=55fc4271
dev-python/pytest: Backport a test fix for pygments-2.19
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
.../pytest/files/pytest-8.3.4-pygments-2.19.patch | 106 +++++++++++++++++++++
dev-python/pytest/pytest-8.3.4.ebuild | 5 +
2 files changed, 111 insertions(+)
diff --git a/dev-python/pytest/files/pytest-8.3.4-pygments-2.19.patch b/dev-python/pytest/files/pytest-8.3.4-pygments-2.19.patch
new file mode 100644
index 000000000000..5674f72ead18
--- /dev/null
+++ b/dev-python/pytest/files/pytest-8.3.4-pygments-2.19.patch
@@ -0,0 +1,106 @@
+From ad4081f63985ff42f54fc52baa7ce0e7b5cffba4 Mon Sep 17 00:00:00 2001
+From: Florian Bruhin <me@the-compiler.org>
+Date: Wed, 8 Jan 2025 18:04:15 +0100
+Subject: [PATCH] Merge pull request #13113 from
+ The-Compiler/fix-pygments-whitespace
+
+Fix selftests with Pygments >= 2.19.0
+
+(cherry picked from commit bdfc3a99bd733f385f150446caef6d5843bb6418)
+---
+ changelog/13112.contrib.rst | 1 +
+ testing/conftest.py | 7 +++++++
+ testing/test_terminal.py | 10 +++++-----
+ 3 files changed, 13 insertions(+), 5 deletions(-)
+ create mode 100644 changelog/13112.contrib.rst
+
+diff --git a/changelog/13112.contrib.rst b/changelog/13112.contrib.rst
+new file mode 100644
+index 000000000..5e59a736e
+--- /dev/null
++++ b/changelog/13112.contrib.rst
+@@ -0,0 +1 @@
++Fixed selftest failures in ``test_terminal.py`` with Pygments >= 2.19.0
+diff --git a/testing/conftest.py b/testing/conftest.py
+index 69af03324..194da0f83 100644
+--- a/testing/conftest.py
++++ b/testing/conftest.py
+@@ -2,10 +2,13 @@
+ from __future__ import annotations
+
+ import dataclasses
++import importlib.metadata
+ import re
+ import sys
+ from typing import Generator
+
++from packaging.version import Version
++
+ from _pytest.monkeypatch import MonkeyPatch
+ from _pytest.pytester import Pytester
+ import pytest
+@@ -168,6 +171,9 @@ def color_mapping():
+
+ Used by tests which check the actual colors output by pytest.
+ """
++ # https://github.com/pygments/pygments/commit/d24e272894a56a98b1b718d9ac5fabc20124882a
++ pygments_version = Version(importlib.metadata.version("pygments"))
++ pygments_has_kwspace_hl = pygments_version >= Version("2.19")
+
+ class ColorMapping:
+ COLORS = {
+@@ -180,6 +186,7 @@ def color_mapping():
+ "bold": "\x1b[1m",
+ "reset": "\x1b[0m",
+ "kw": "\x1b[94m",
++ "kwspace": "\x1b[90m \x1b[39;49;00m" if pygments_has_kwspace_hl else " ",
+ "hl-reset": "\x1b[39;49;00m",
+ "function": "\x1b[92m",
+ "number": "\x1b[94m",
+diff --git a/testing/test_terminal.py b/testing/test_terminal.py
+index 14c152d61..cbbe9cbd7 100644
+--- a/testing/test_terminal.py
++++ b/testing/test_terminal.py
+@@ -1299,13 +1299,13 @@ def test_color_yes(pytester: Pytester, color_mapping) -> None:
+ "=*= FAILURES =*=",
+ "{red}{bold}_*_ test_this _*_{reset}",
+ "",
+- " {reset}{kw}def{hl-reset} {function}test_this{hl-reset}():{endline}",
++ " {reset}{kw}def{hl-reset}{kwspace}{function}test_this{hl-reset}():{endline}",
+ "> fail(){endline}",
+ "",
+ "{bold}{red}test_color_yes.py{reset}:5: ",
+ "_ _ * _ _*",
+ "",
+- " {reset}{kw}def{hl-reset} {function}fail{hl-reset}():{endline}",
++ " {reset}{kw}def{hl-reset}{kwspace}{function}fail{hl-reset}():{endline}",
+ "> {kw}assert{hl-reset} {number}0{hl-reset}{endline}",
+ "{bold}{red}E assert 0{reset}",
+ "",
+@@ -2585,7 +2585,7 @@ class TestCodeHighlight:
+ result.stdout.fnmatch_lines(
+ color_mapping.format_for_fnmatch(
+ [
+- " {reset}{kw}def{hl-reset} {function}test_foo{hl-reset}():{endline}",
++ " {reset}{kw}def{hl-reset}{kwspace}{function}test_foo{hl-reset}():{endline}",
+ "> {kw}assert{hl-reset} {number}1{hl-reset} == {number}10{hl-reset}{endline}",
+ "{bold}{red}E assert 1 == 10{reset}",
+ ]
+@@ -2607,7 +2607,7 @@ class TestCodeHighlight:
+ result.stdout.fnmatch_lines(
+ color_mapping.format_for_fnmatch(
+ [
+- " {reset}{kw}def{hl-reset} {function}test_foo{hl-reset}():{endline}",
++ " {reset}{kw}def{hl-reset}{kwspace}{function}test_foo{hl-reset}():{endline}",
+ " {print}print{hl-reset}({str}'''{hl-reset}{str}{hl-reset}",
+ "> {str} {hl-reset}{str}'''{hl-reset}); {kw}assert{hl-reset} {number}0{hl-reset}{endline}",
+ "{bold}{red}E assert 0{reset}",
+@@ -2630,7 +2630,7 @@ class TestCodeHighlight:
+ result.stdout.fnmatch_lines(
+ color_mapping.format_for_fnmatch(
+ [
+- " {reset}{kw}def{hl-reset} {function}test_foo{hl-reset}():{endline}",
++ " {reset}{kw}def{hl-reset}{kwspace}{function}test_foo{hl-reset}():{endline}",
+ "> {kw}assert{hl-reset} {number}1{hl-reset} == {number}10{hl-reset}{endline}",
+ "{bold}{red}E assert 1 == 10{reset}",
+ ]
diff --git a/dev-python/pytest/pytest-8.3.4.ebuild b/dev-python/pytest/pytest-8.3.4.ebuild
index cd59dc91caa9..835e9a6ea2d6 100644
--- a/dev-python/pytest/pytest-8.3.4.ebuild
+++ b/dev-python/pytest/pytest-8.3.4.ebuild
@@ -50,6 +50,11 @@ BDEPEND="
)
"
+PATCHES=(
+ # ad4081f63985ff42f54fc52baa7ce0e7b5cffba4
+ "${FILESDIR}/${P}-pygments-2.19.patch"
+)
+
src_test() {
# workaround new readline defaults
echo "set enable-bracketed-paste off" > "${T}"/inputrc || die
next reply other threads:[~2025-02-18 12:50 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-18 12:50 Michał Górny [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-06-22 15:01 [gentoo-commits] repo/gentoo:master commit in: dev-python/pytest/, dev-python/pytest/files/ Michał Górny
2024-05-19 11:47 Michał Górny
2022-05-13 12:29 Michał Górny
2021-10-03 19:24 Michał Górny
2021-06-02 19:46 Michał Górny
2020-05-27 6:11 Michał Górny
2019-11-27 13:17 Michał Górny
2019-07-06 8:43 Tim Harder
2018-07-11 22:11 Michał Górny
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=1739882988.55fc42718e2a6e2a4155b0f3f069646173041aa4.mgorny@gentoo \
--to=mgorny@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.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