summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2019-11-15 08:58:51 +0100
committerMichał Górny <mgorny@gentoo.org>2019-11-15 09:01:24 +0100
commitad1aaaf223c6a45db1df030819fc8f2e57bcf754 (patch)
tree93be5164ea9856ff05728d48aa6906c89ab6a82d
parentdev-python/setuptools: Sync -9999 (diff)
downloadgentoo-ad1aaaf223c6a45db1df030819fc8f2e57bcf754.tar.gz
gentoo-ad1aaaf223c6a45db1df030819fc8f2e57bcf754.tar.bz2
gentoo-ad1aaaf223c6a45db1df030819fc8f2e57bcf754.zip
dev-python/setuptools: Enable Python 3.8
Enable Python 3.8 as needed to start bootstrapping it everywhere. For now, without test deps since they cause many blockers in keywording process. However, when test deps are built without testing, setuptools' tests just pass. Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--dev-python/setuptools/setuptools-41.5.1.ebuild27
-rw-r--r--dev-python/setuptools/setuptools-9999.ebuild2
2 files changed, 21 insertions, 8 deletions
diff --git a/dev-python/setuptools/setuptools-41.5.1.ebuild b/dev-python/setuptools/setuptools-41.5.1.ebuild
index 69da3de1a382..ff4a7aa54630 100644
--- a/dev-python/setuptools/setuptools-41.5.1.ebuild
+++ b/dev-python/setuptools/setuptools-41.5.1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy{,3} )
+PYTHON_COMPAT=( python2_7 python3_{5,6,7,8} pypy{,3} )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1
@@ -25,15 +25,19 @@ RESTRICT="!test? ( test )"
RDEPEND="
"
+# Temporary hack to avoid py38 keywording hell. Please remove when
+# the test deps all have py38. Also setuptools' test pass with py38,
+# so you need to hack them all in locally before bumping and test.
+TEST_USEDEP=$(python_gen_usedep python2_7 python3_{5,6,7} pypy{,3})
DEPEND="${RDEPEND}
app-arch/unzip
test? (
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/pip[${PYTHON_USEDEP}]
- >=dev-python/pytest-3.7.0[${PYTHON_USEDEP}]
- dev-python/pytest-fixture-config[${PYTHON_USEDEP}]
- dev-python/pytest-virtualenv[${PYTHON_USEDEP}]
- dev-python/wheel[${PYTHON_USEDEP}]
+ dev-python/mock[${TEST_USEDEP}]
+ dev-python/pip[${TEST_USEDEP}]
+ >=dev-python/pytest-3.7.0[${TEST_USEDEP}]
+ dev-python/pytest-fixture-config[${TEST_USEDEP}]
+ dev-python/pytest-virtualenv[${TEST_USEDEP}]
+ dev-python/wheel[${TEST_USEDEP}]
virtual/python-futures[${PYTHON_USEDEP}]
)
"
@@ -61,6 +65,15 @@ python_prepare_all() {
}
python_test() {
+ if [[ ${EPYTHON} == python3.8 ]]; then
+ if [[ ${PV} != 41.5.1 ]]; then
+ eerror "Please disable py38 hacks and test locally, then update this."
+ die "Python 3.8 support untested for ${PV}"
+ fi
+ einfo "Skipping testing on ${EPYTHON} due to unkeyworded deps"
+ return
+ fi
+
# test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg
# It tries to sandbox the test in a tempdir
HOME="${PWD}" pytest -vv ${PN} || die "Tests failed under ${EPYTHON}"
diff --git a/dev-python/setuptools/setuptools-9999.ebuild b/dev-python/setuptools/setuptools-9999.ebuild
index 69da3de1a382..8d522c4213f5 100644
--- a/dev-python/setuptools/setuptools-9999.ebuild
+++ b/dev-python/setuptools/setuptools-9999.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy{,3} )
+PYTHON_COMPAT=( python2_7 python3_{5,6,7,8} pypy{,3} )
PYTHON_REQ_USE="xml(+)"
inherit distutils-r1