From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D781C158013 for ; Tue, 5 Dec 2023 12:16:06 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 70AC52BC019; Tue, 5 Dec 2023 12:16:05 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id F186A2BC016 for ; Tue, 5 Dec 2023 12:16:04 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id E8FD833BE18 for ; Tue, 5 Dec 2023 12:16:03 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4C613AC2 for ; Tue, 5 Dec 2023 12:16:02 +0000 (UTC) From: "Marek Szuba" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Marek Szuba" Message-ID: <1701778553.d1841f909c97a2fc9f3e34d990ca192da2eb78af.marecki@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/ansible-pygments/files/, dev-python/ansible-pygments/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/ansible-pygments/ansible-pygments-0.1.1-r1.ebuild dev-python/ansible-pygments/files/ansible-pygments-0.1.1-make_lexer_test_compare_tokens.patch dev-python/ansible-pygments/files/ansible-pygments-0.1.1-tests_pygments2_14.patch X-VCS-Directories: dev-python/ansible-pygments/ dev-python/ansible-pygments/files/ X-VCS-Committer: marecki X-VCS-Committer-Name: Marek Szuba X-VCS-Revision: d1841f909c97a2fc9f3e34d990ca192da2eb78af X-VCS-Branch: master Date: Tue, 5 Dec 2023 12:16:02 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 1bb41eb4-1fbf-44a7-bdd7-e394531f7625 X-Archives-Hash: 49b20754c1376a32e79287c967f19ea2 commit: d1841f909c97a2fc9f3e34d990ca192da2eb78af Author: Marek Szuba gentoo org> AuthorDate: Tue Dec 5 12:06:12 2023 +0000 Commit: Marek Szuba gentoo org> CommitDate: Tue Dec 5 12:15:53 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1841f90 dev-python/ansible-pygments: patch tests to be less dependent on the version of Pygments Closes: https://bugs.gentoo.org/906695 Signed-off-by: Marek Szuba gentoo.org> .../ansible-pygments-0.1.1-r1.ebuild | 7 +- ...ents-0.1.1-make_lexer_test_compare_tokens.patch | 324 +++++++++++++++++++++ ...ansible-pygments-0.1.1-tests_pygments2_14.patch | 75 ----- 3 files changed, 327 insertions(+), 79 deletions(-) diff --git a/dev-python/ansible-pygments/ansible-pygments-0.1.1-r1.ebuild b/dev-python/ansible-pygments/ansible-pygments-0.1.1-r1.ebuild index acf6231a5358..9af143aac38e 100644 --- a/dev-python/ansible-pygments/ansible-pygments-0.1.1-r1.ebuild +++ b/dev-python/ansible-pygments/ansible-pygments-0.1.1-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_COMPAT=( python3_{10..11} ) DISTUTILS_USE_PEP517="poetry" PYPI_NO_NORMALIZE=1 @@ -16,11 +16,10 @@ LICENSE="MIT" SLOT="0" KEYWORDS="amd64 ~riscv" -# 2.14.0+ needed in order for tests to pass -RDEPEND=">=dev-python/pygments-2.14.0[${PYTHON_USEDEP}]" +RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]" PATCHES=( - "${FILESDIR}"/${PN}-0.1.1-tests_pygments2_14.patch + "${FILESDIR}"/${PN}-0.1.1-make_lexer_test_compare_tokens.patch ) distutils_enable_tests pytest diff --git a/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-make_lexer_test_compare_tokens.patch b/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-make_lexer_test_compare_tokens.patch new file mode 100644 index 000000000000..41ce8a5c2314 --- /dev/null +++ b/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-make_lexer_test_compare_tokens.patch @@ -0,0 +1,324 @@ +Backported upstream patch 179c74e9f1a5dc870dec6d4db6cab60d2dca1ed2 + +--- a/tests/lexer_test.py ++++ b/tests/lexer_test.py +@@ -1,26 +1,24 @@ + # Author: Felix Fontein + # License: BSD-2-Clause + # Copyright: Felix Fontein , 2021 +-"""Tests for Pygments lexers.""" ++"""Tests for Pygments lexers. + +-from pygments import highlight +-# pylint: disable=no-name-in-module +-# Ref: https://github.com/PyCQA/pylint/issues/491 +-from pygments.formatters import HtmlFormatter +- +-from ansible_pygments.lexers import AnsibleOutputLexer ++They rely on token comparison for stability reasons. Relying on ++additional style formatting is known to break with updates to ++the pygments library itself. ++""" + ++from pygments import __version__ as _pygments_version ++from pygments.lexers import get_lexer_by_name as _get_lexer_by_name ++from pygments.token import Token + +-def run_test(data, lexer): +- """Format the data snippet as HTML using a given lexer.""" +- formatter = HtmlFormatter() +- result = highlight(data, lexer, formatter) +- return formatter.get_style_defs('.highlight'), result ++PYGMENTS_VERSION_INFO = tuple(map(int, _pygments_version.split('.'))) ++IS_OLD_PYGMENTS_PRE_2_14 = PYGMENTS_VERSION_INFO <= (2, 14, 0) + + + def test_ansible_output_lexer(): +- """Test that AnsibleOutputLexer produces expected HTML output.""" +- data = R""" ++ """Test that ``AnsibleOutputLexer`` produces expected tokens.""" ++ ansible_play_output_example = R""" + ok: [windows] => { + "account": { + "account_name": "vagrant-domain", +@@ -71,58 +69,226 @@ + + changed: [localhost] + """ +- _, result = run_test(data, AnsibleOutputLexer()) +- print(result) + +- # pylint: disable=line-too-long +- assert result == R"""
ok: [windows] => {
+-    "account": {
+-        "account_name": "vagrant-domain",
+-        "type": "User"
+-    },
+-    "authentication_package": "Kerberos",
+-    "user_flags": []
+-}
+-
+-TASK [paused] ************************************************************************************************************************************
+-Sunday 11 November 2018  20:16:48 +0100 (0:00:00.041)       0:07:59.637 *******
+---- before
+-+++ after
+-@@ -1,5 +1,5 @@
+- {
+--  "exists": false,
+--  "paused": false,
+--  "running": false
+-+  "exists": true,
+-+  "paused": true,
+-+  "running": true
+- }
+-\ No newline at end of file
+-
+-changed: [localhost]
+-
+-TASK [volumes (more volumes)] ********************************************************************************************************************
+-Sunday 11 November 2018  20:19:25 +0100 (0:00:00.607)       0:10:36.974 *******
+---- before
+-+++ after
+-@@ -1,11 +1,11 @@
+- {
+-   "expected_binds": [
+--    "/tmp:/tmp:rw",
+--    "/:/whatever:rw,z"
+-+    "/tmp:/somewhereelse:ro,Z",
+-+    "/tmp:/tmp:rw"
+-   ],
+-   "expected_volumes": {
+--    "/tmp": {},
+--    "/whatever": {}
+-+    "/somewhereelse": {},
+-+    "/tmp": {}
+-   },
+-   "running": true
+- }
+-\ No newline at end of file
+-
+-changed: [localhost]
+-
+-""" ++ expected_resulting_text_tokens = [ ++ (0, Token.Text.Whitespace, '\n'), ++ (1, Token.Keyword, 'ok'), ++ (3, Token.Punctuation, ':'), ++ (4, Token.Text, ' '), ++ (5, Token.Punctuation, '['), ++ (6, Token.Name.Variable, 'windows'), ++ (13, Token.Punctuation, ']'), ++ (14, Token.Text, ' '), ++ (15, Token.Punctuation, '=>'), ++ (17, Token.Text, ' '), ++ (18, Token.Punctuation, '{'), ++ (19, Token.Text, '\n '), ++ (24, Token.Name.Tag, '"account"'), ++ (33, Token.Punctuation, ':'), ++ (34, Token.Text, ' '), ++ (35, Token.Punctuation, '{'), ++ (36, Token.Text, '\n '), ++ (45, Token.Name.Tag, '"account_name"'), ++ (59, Token.Punctuation, ':'), ++ (60, Token.Text, ' '), ++ (61, Token.Literal.String, '"vagrant-domain"'), ++ (77, Token.Punctuation, ','), ++ (78, Token.Text, '\n '), ++ (87, Token.Name.Tag, '"type"'), ++ (93, Token.Punctuation, ':'), ++ (94, Token.Text, ' '), ++ (95, Token.Literal.String, '"User"'), ++ (101, Token.Text, '\n '), ++ (106, Token.Punctuation, '}'), ++ (107, Token.Punctuation, ','), ++ (108, Token.Text, '\n '), ++ (113, Token.Name.Tag, '"authentication_package"'), ++ (137, Token.Punctuation, ':'), ++ (138, Token.Text, ' '), ++ (139, Token.Literal.String, '"Kerberos"'), ++ (149, Token.Punctuation, ','), ++ (150, Token.Text, '\n '), ++ (155, Token.Name.Tag, '"user_flags"'), ++ (167, Token.Punctuation, ':'), ++ (168, Token.Text, ' '), ++ (169, Token.Punctuation, '['), ++ (170, Token.Punctuation, ']'), ++ (171, Token.Text, '\n'), ++ (172, Token.Punctuation, '}'), ++ (173, Token.Text, '\n'), ++ (174, Token.Text.Whitespace, '\n'), ++ (175, Token.Keyword, 'TASK'), ++ (179, Token.Text, ' '), ++ (180, Token.Punctuation, '['), ++ (181, Token.Literal, 'paused'), ++ (187, Token.Punctuation, ']'), ++ (188, Token.Text, ' '), ++ ( ++ 189, ++ Token.Name.Variable, ++ '*' * 132, ++ ), ++ (321, Token.Text, '\n'), ++ *( ++ ( ++ ( ++ 322, ++ Token.Text.Whitespace, ++ 'Sunday 11 November 2018 20:16:48 +0100 (0:00:00.041) ' ++ '0:07:59.637 *******\n', ++ ), ++ ) if IS_OLD_PYGMENTS_PRE_2_14 else ( ++ ( ++ 322, ++ Token.Text, ++ 'Sunday 11 November 2018 20:16:48 +0100 (0:00:00.041) ' ++ '0:07:59.637 *******', ++ ), ++ (401, Token.Text.Whitespace, '\n'), ++ ) ++ ), ++ (402, Token.Generic.Deleted, '--- before'), ++ (412, Token.Text.Whitespace, '\n'), ++ (413, Token.Generic.Inserted, '+++ after'), ++ (422, Token.Text.Whitespace, '\n'), ++ (423, Token.Generic.Subheading, '@@ -1,5 +1,5 @@'), ++ (438, Token.Text.Whitespace, '\n'), ++ (439, Token.Text.Whitespace, ' '), ++ (440, Token.Text, '{'), ++ (441, Token.Text.Whitespace, '\n'), ++ (442, Token.Generic.Deleted, '- "exists": false,'), ++ (461, Token.Text.Whitespace, '\n'), ++ (462, Token.Generic.Deleted, '- "paused": false,'), ++ (481, Token.Text.Whitespace, '\n'), ++ (482, Token.Generic.Deleted, '- "running": false'), ++ (501, Token.Text.Whitespace, '\n'), ++ (502, Token.Generic.Inserted, '+ "exists": true,'), ++ (520, Token.Text.Whitespace, '\n'), ++ (521, Token.Generic.Inserted, '+ "paused": true,'), ++ (539, Token.Text.Whitespace, '\n'), ++ (540, Token.Generic.Inserted, '+ "running": true'), ++ (558, Token.Text.Whitespace, '\n'), ++ (559, Token.Text.Whitespace, ' '), ++ (560, Token.Text, '}'), ++ (561, Token.Text.Whitespace, '\n'), ++ *( ++ ( ++ ( ++ 562, ++ Token.Text.Whitespace, ++ '\\ No newline at end of file\n', ++ ), ++ ) if IS_OLD_PYGMENTS_PRE_2_14 else ( ++ (562, Token.Text, '\\ No newline at end of file'), ++ (589, Token.Text.Whitespace, '\n'), ++ ) ++ ), ++ (590, Token.Text.Whitespace, '\n'), ++ (591, Token.Keyword, 'changed'), ++ (598, Token.Punctuation, ':'), ++ (599, Token.Text, ' '), ++ (600, Token.Punctuation, '['), ++ (601, Token.Name.Variable, 'localhost'), ++ (610, Token.Punctuation, ']'), ++ (611, Token.Text, '\n'), ++ (612, Token.Text.Whitespace, '\n'), ++ (613, Token.Keyword, 'TASK'), ++ (617, Token.Text, ' '), ++ (618, Token.Punctuation, '['), ++ (619, Token.Literal, 'volumes (more volumes)'), ++ (641, Token.Punctuation, ']'), ++ (642, Token.Text, ' '), ++ ( ++ 643, ++ Token.Name.Variable, ++ '*' * 116, ++ ), ++ (759, Token.Text, '\n'), ++ *( ++ ( ++ ( ++ 760, ++ Token.Text.Whitespace, ++ 'Sunday 11 November 2018 20:19:25 +0100 (0:00:00.607) ' ++ '0:10:36.974 *******\n', ++ ), ++ ) if IS_OLD_PYGMENTS_PRE_2_14 else ( ++ ( ++ 760, ++ Token.Text, ++ 'Sunday 11 November 2018 20:19:25 +0100 (0:00:00.607) ' ++ '0:10:36.974 *******', ++ ), ++ (839, Token.Text.Whitespace, '\n'), ++ ) ++ ), ++ (840, Token.Generic.Deleted, '--- before'), ++ (850, Token.Text.Whitespace, '\n'), ++ (851, Token.Generic.Inserted, '+++ after'), ++ (860, Token.Text.Whitespace, '\n'), ++ (861, Token.Generic.Subheading, '@@ -1,11 +1,11 @@'), ++ (878, Token.Text.Whitespace, '\n'), ++ (879, Token.Text.Whitespace, ' '), ++ (880, Token.Text, '{'), ++ (881, Token.Text.Whitespace, '\n'), ++ (882, Token.Text.Whitespace, ' '), ++ (883, Token.Text, ' "expected_binds": ['), ++ (904, Token.Text.Whitespace, '\n'), ++ (905, Token.Generic.Deleted, '- "/tmp:/tmp:rw",'), ++ (925, Token.Text.Whitespace, '\n'), ++ (926, Token.Generic.Deleted, '- "/:/whatever:rw,z"'), ++ (949, Token.Text.Whitespace, '\n'), ++ (950, Token.Generic.Inserted, '+ "/tmp:/somewhereelse:ro,Z",'), ++ (982, Token.Text.Whitespace, '\n'), ++ (983, Token.Generic.Inserted, '+ "/tmp:/tmp:rw"'), ++ (1002, Token.Text.Whitespace, '\n'), ++ (1003, Token.Text.Whitespace, ' '), ++ (1004, Token.Text, ' ],'), ++ (1008, Token.Text.Whitespace, '\n'), ++ (1009, Token.Text.Whitespace, ' '), ++ (1010, Token.Text, ' "expected_volumes": {'), ++ (1033, Token.Text.Whitespace, '\n'), ++ (1034, Token.Generic.Deleted, '- "/tmp": {},'), ++ (1050, Token.Text.Whitespace, '\n'), ++ (1051, Token.Generic.Deleted, '- "/whatever": {}'), ++ (1071, Token.Text.Whitespace, '\n'), ++ (1072, Token.Generic.Inserted, '+ "/somewhereelse": {},'), ++ (1098, Token.Text.Whitespace, '\n'), ++ (1099, Token.Generic.Inserted, '+ "/tmp": {}'), ++ (1114, Token.Text.Whitespace, '\n'), ++ (1115, Token.Text.Whitespace, ' '), ++ (1116, Token.Text, ' },'), ++ (1120, Token.Text.Whitespace, '\n'), ++ (1121, Token.Text.Whitespace, ' '), ++ (1122, Token.Text, ' "running": true'), ++ (1139, Token.Text.Whitespace, '\n'), ++ (1140, Token.Text.Whitespace, ' '), ++ (1141, Token.Text, '}'), ++ (1142, Token.Text.Whitespace, '\n'), ++ *( ++ ( ++ ( ++ 1143, ++ Token.Text.Whitespace, ++ '\\ No newline at end of file\n', ++ ), ++ ) if IS_OLD_PYGMENTS_PRE_2_14 else ( ++ (1143, Token.Text, '\\ No newline at end of file'), ++ (1170, Token.Text.Whitespace, '\n'), ++ ) ++ ), ++ (1171, Token.Text.Whitespace, '\n'), ++ (1172, Token.Keyword, 'changed'), ++ (1179, Token.Punctuation, ':'), ++ (1180, Token.Text, ' '), ++ (1181, Token.Punctuation, '['), ++ (1182, Token.Name.Variable, 'localhost'), ++ (1191, Token.Punctuation, ']'), ++ (1192, Token.Text, '\n'), ++ ] ++ ++ unprocessed_text_tokens = list( ++ _get_lexer_by_name('ansible-output'). ++ get_tokens_unprocessed(ansible_play_output_example), ++ ) ++ assert unprocessed_text_tokens == expected_resulting_text_tokens diff --git a/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-tests_pygments2_14.patch b/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-tests_pygments2_14.patch deleted file mode 100644 index d58a13256ac5..000000000000 --- a/dev-python/ansible-pygments/files/ansible-pygments-0.1.1-tests_pygments2_14.patch +++ /dev/null @@ -1,75 +0,0 @@ -Backported upstream commit 0ddab3516217ac2067b6e980f5b2a6b2ac1be3fa - ---- a/tests/lexer_test.py -+++ b/tests/lexer_test.py -@@ -86,41 +86,41 @@ def test_ansible_output_lexer(): - - TASK [paused] ************************************************************************************************************************************ - Sunday 11 November 2018 20:16:48 +0100 (0:00:00.041) 0:07:59.637 ******* ----- before --+++ after --@@ -1,5 +1,5 @@ -- { --- "exists": false, --- "paused": false, --- "running": false --+ "exists": true, --+ "paused": true, --+ "running": true -- } -+--- before -++++ after -+@@ -1,5 +1,5 @@ -+ { -+- "exists": false, -+- "paused": false, -+- "running": false -++ "exists": true, -++ "paused": true, -++ "running": true -+ } - \ No newline at end of file - - changed: [localhost] - - TASK [volumes (more volumes)] ******************************************************************************************************************** - Sunday 11 November 2018 20:19:25 +0100 (0:00:00.607) 0:10:36.974 ******* ----- before --+++ after --@@ -1,11 +1,11 @@ -- { -- "expected_binds": [ --- "/tmp:/tmp:rw", --- "/:/whatever:rw,z" --+ "/tmp:/somewhereelse:ro,Z", --+ "/tmp:/tmp:rw" -- ], -- "expected_volumes": { --- "/tmp": {}, --- "/whatever": {} --+ "/somewhereelse": {}, --+ "/tmp": {} -- }, -- "running": true -- } -+--- before -++++ after -+@@ -1,11 +1,11 @@ -+ { -+ "expected_binds": [ -+- "/tmp:/tmp:rw", -+- "/:/whatever:rw,z" -++ "/tmp:/somewhereelse:ro,Z", -++ "/tmp:/tmp:rw" -+ ], -+ "expected_volumes": { -+- "/tmp": {}, -+- "/whatever": {} -++ "/somewhereelse": {}, -++ "/tmp": {} -+ }, -+ "running": true -+ } - \ No newline at end of file - - changed: [localhost]