diff --git a/dev-python/graphviz/files/graphviz-0.20.1_fix_python3_12_test_deprecated_escape.patch b/dev-python/graphviz/files/graphviz-0.20.1_fix_python3_12_test_deprecated_escape.patch new file mode 100644 index 0000000000000..0193ef9287756 --- /dev/null +++ b/dev-python/graphviz/files/graphviz-0.20.1_fix_python3_12_test_deprecated_escape.patch @@ -0,0 +1,30 @@ +From 5ce9fc5de4f2284baa27d7a8d68ab0885d032868 Mon Sep 17 00:00:00 2001 +From: Sebastian Bank +Date: Tue, 24 Oct 2023 20:39:52 +0200 +Subject: [PATCH] expect SyntaxWarning in test_deprecated_escape() under Python + 3.12 + +https://docs.python.org/3.12/whatsnew/3.12.html#other-language-changes +--- + tests/test_quoting.py | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/tests/test_quoting.py b/tests/test_quoting.py +index e4ece573bd..3692d38a12 100644 +--- a/tests/test_quoting.py ++++ b/tests/test_quoting.py +@@ -1,3 +1,4 @@ ++import sys + import warnings + + import pytest +@@ -14,7 +15,8 @@ def test_deprecated_escape(recwarn, char): + escape = eval(rf'"\{char}"') + + assert len(recwarn) == 1 +- w = recwarn.pop(DeprecationWarning) ++ w = recwarn.pop(DeprecationWarning if sys.version_info < (3, 12) ++ else SyntaxWarning) + assert str(w.message).startswith('invalid escape sequence') + + assert escape == f'\\{char}' diff --git a/dev-python/graphviz/graphviz-0.20.1-r1.ebuild b/dev-python/graphviz/graphviz-0.20.1-r1.ebuild index 8a9f297fb539b..8757908d0fc52 100644 --- a/dev-python/graphviz/graphviz-0.20.1-r1.ebuild +++ b/dev-python/graphviz/graphviz-0.20.1-r1.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) inherit distutils-r1 @@ -34,6 +34,10 @@ BDEPEND=" ) " +PATCHES=" + ${FILESDIR}/${P}_fix_python3_12_test_deprecated_escape.patch +" + distutils_enable_tests pytest src_prepare() {