commit:     2ea990794b81aa47c02119dfcbe614977f73f9a7
Author:     Eli Schwartz <eschwartz <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 27 04:45:08 2025 +0000
Commit:     Eli Schwartz <eschwartz <AT> gentoo <DOT> org>
CommitDate: Wed Aug 27 05:36:18 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ea99079

dev-python/mechanize: backport test fix for cpython changes backported in 3.13

Signed-off-by: Eli Schwartz <eschwartz <AT> gentoo.org>

 .../files/mechanize-0.4.10-py314-tests.patch       | 33 ++++++++++++++++++++++
 dev-python/mechanize/mechanize-0.4.10.ebuild       |  7 ++++-
 2 files changed, 39 insertions(+), 1 deletion(-)

diff --git a/dev-python/mechanize/files/mechanize-0.4.10-py314-tests.patch 
b/dev-python/mechanize/files/mechanize-0.4.10-py314-tests.patch
new file mode 100644
index 000000000000..c5ba8eb43f56
--- /dev/null
+++ b/dev-python/mechanize/files/mechanize-0.4.10-py314-tests.patch
@@ -0,0 +1,33 @@
+From 0c1cd4b65697dee4e4192902c9a2965d94700502 Mon Sep 17 00:00:00 2001
+From: Colin Watson <[email protected]>
+Date: Mon, 26 May 2025 12:59:44 +0100
+Subject: [PATCH] Fix CookieTests following fix for CPython #130631
+
+The fix for https://github.com/python/cpython/issues/130631 in Python
+3.14.0b1 (also cherry-picked to 3.13, but not yet released) causes
+`www.acme.com` to be unquoted in cookie strings.  Adjust a test to cope
+with this.
+---
+ test/test_cookies.py | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/test/test_cookies.py b/test/test_cookies.py
+index ec0c2ff..92227fc 100644
+--- a/test/test_cookies.py
++++ b/test/test_cookies.py
+@@ -332,9 +332,13 @@ def test_missing_name(self):
+         cookie = c._cookies["www.acme.com"]['/foo/']['"spam"']
+         assert cookie.name == '"spam"'
+         assert cookie.value is None
+-        assert lwp_cookie_str(cookie) == (
++        assert lwp_cookie_str(cookie) in (
++            r'"spam"; path="/foo/"; domain=www.acme.com; '
++            'path_spec; discard; version=0',
++            # prior to fix for 
https://github.com/python/cpython/issues/130631:
+             r'"spam"; path="/foo/"; domain="www.acme.com"; '
+-            'path_spec; discard; version=0')
++            'path_spec; discard; version=0',
++            )
+         old_str = repr(c)
+         c.save(ignore_expires=True, ignore_discard=True)
+         try:

diff --git a/dev-python/mechanize/mechanize-0.4.10.ebuild 
b/dev-python/mechanize/mechanize-0.4.10.ebuild
index 43fea3363923..2a29cbbb5e7f 100644
--- a/dev-python/mechanize/mechanize-0.4.10.ebuild
+++ b/dev-python/mechanize/mechanize-0.4.10.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -29,6 +29,11 @@ BDEPEND="
        )
 "
 
+PATCHES=(
+       # https://github.com/python-mechanize/mechanize/pull/102
+       "${FILESDIR}"/${P}-py314-tests.patch
+)
+
 python_test() {
        "${EPYTHON}" run_tests.py -v || die
 }

Reply via email to