summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Vaněk <arkamar@atlas.cz>2023-05-30 23:22:25 +0200
committerMichał Górny <mgorny@gentoo.org>2023-05-31 12:49:54 +0200
commit48b5e659f3b13315b05445a6d2ddf11e02fdb2ad (patch)
tree7b9758e38033a2bcf20a65e10f368c36c54bafe8 /dev-python/pbr
parentapp-text/crqt-ng: add ~arm64 (diff)
downloadgentoo-48b5e659f3b13315b05445a6d2ddf11e02fdb2ad.tar.gz
gentoo-48b5e659f3b13315b05445a6d2ddf11e02fdb2ad.tar.bz2
gentoo-48b5e659f3b13315b05445a6d2ddf11e02fdb2ad.zip
dev-python/pbr: enable py3.12
- One test source file needs a patch due to removed library in py3.12, the patch was sent to github mirror[1] and later resend to upstream[2]. - Tests fail with dev-python/sphinx-7, because build_sphinx hook in setup.py was removed [3], sphinx is now limmited to <dev-python/sphinx-7. [1] https://github.com/openstack/pbr/pull/22 [2] https://review.opendev.org/c/openstack/pbr/+/884789 [3] https://bugs.launchpad.net/pbr/+bug/2018453 Signed-off-by: Petr Vaněk <arkamar@atlas.cz> Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/pbr')
-rw-r--r--dev-python/pbr/files/pbr-5.11.1-importlib-suffixes.patch41
-rw-r--r--dev-python/pbr/pbr-5.11.1.ebuild19
2 files changed, 55 insertions, 5 deletions
diff --git a/dev-python/pbr/files/pbr-5.11.1-importlib-suffixes.patch b/dev-python/pbr/files/pbr-5.11.1-importlib-suffixes.patch
new file mode 100644
index 000000000000..27609131fc59
--- /dev/null
+++ b/dev-python/pbr/files/pbr-5.11.1-importlib-suffixes.patch
@@ -0,0 +1,41 @@
+Subject: [PATCH] Replace imp with importlib.machinery
+
+The imp was removed in Python 3.12 [1]. This commit replaces
+get_suffixes() method call with _SUFFIXES array from imprtlib.machinery.
+
+[1] https://github.com/python/cpython/issues/98040
+
+---
+
+This is original patch submitted to Github mirror, it was later resubmitted to
+upstream Gerrit, where they are taking care of Python2.7. We can stick with
+this version of patch for now because we don't care about py2.7 anymore.
+
+Original-PR: https://github.com/openstack/pbr/pull/22
+Upstream-PR: https://review.opendev.org/c/openstack/pbr/+/884789
+
+diff --git a/pbr/tests/test_packaging.py b/pbr/tests/test_packaging.py
+index c719d1e..068bab7 100644
+--- a/pbr/tests/test_packaging.py
++++ b/pbr/tests/test_packaging.py
+@@ -40,7 +40,7 @@
+
+ import email
+ import email.errors
+-import imp
++import importlib
+ import os
+ import re
+ import sysconfig
+@@ -1217,7 +1217,7 @@ def get_soabi():
+ # NOTE(sigmavirus24): PyPy only added support for the SOABI config var
+ # to sysconfig in 2015. That was well after 2.2.1 was published in the
+ # Ubuntu 14.04 archive.
+- for suffix, _, _ in imp.get_suffixes():
++ for suffix, _, _ in importlib.machinery._SUFFIXES:
+ if suffix.startswith('.pypy') and suffix.endswith('.so'):
+ soabi = suffix.split('.')[1]
+ break
+--
+2.39.2
+
diff --git a/dev-python/pbr/pbr-5.11.1.ebuild b/dev-python/pbr/pbr-5.11.1.ebuild
index 016fd4a7679a..5448662cdd64 100644
--- a/dev-python/pbr/pbr-5.11.1.ebuild
+++ b/dev-python/pbr/pbr-5.11.1.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{9..11} )
+PYTHON_TESTED=( python3_{10..12} )
PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 )
PYTHON_REQ_USE="threads(+)"
@@ -24,9 +24,14 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv
RDEPEND="
>=dev-python/setuptools-60.5.0[${PYTHON_USEDEP}]
"
-# git is needed for tests, see https://bugs.launchpad.net/pbr/+bug/1326682 and https://bugs.gentoo.org/show_bug.cgi?id=561038
-# docutils is needed for sphinx exceptions... https://bugs.gentoo.org/show_bug.cgi?id=603848
-# stestr is run as external tool
+
+# git is needed for tests, see https://bugs.launchpad.net/pbr/+bug/1326682 and
+# https://bugs.gentoo.org/show_bug.cgi?id=561038 docutils is needed for sphinx
+# exceptions... https://bugs.gentoo.org/show_bug.cgi?id=603848 stestr is run as
+# external tool.
+#
+# <dev-python/sphinx-7 is required because of removed build_sphinx hook in
+# setup.py, see https://bugs.launchpad.net/pbr/+bug/2018453
BDEPEND="
test? (
$(python_gen_cond_dep '
@@ -34,7 +39,7 @@ BDEPEND="
>=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
>=dev-python/six-1.12.0[${PYTHON_USEDEP}]
- dev-python/sphinx[${PYTHON_USEDEP}]
+ <dev-python/sphinx-7[${PYTHON_USEDEP}]
>=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
>=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
@@ -44,6 +49,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/${P}-importlib-suffixes.patch"
+)
+
distutils_enable_tests unittest
python_prepare_all() {