summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-05-11 17:55:02 +0200
committerMichał Górny <mgorny@gentoo.org>2022-05-11 18:43:35 +0200
commit5e92f005f51b420770b67ff1e934c44257cb7067 (patch)
tree48fb9c0f22694f54de66eb293ba49f1813ebd1f3 /dev-python/distlib
parentdev-python/psutil: Remove old (diff)
downloadgentoo-5e92f005f51b420770b67ff1e934c44257cb7067.tar.gz
gentoo-5e92f005f51b420770b67ff1e934c44257cb7067.tar.bz2
gentoo-5e92f005f51b420770b67ff1e934c44257cb7067.zip
dev-python/distlib: EAPI 8, reenable tests
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/distlib')
-rw-r--r--dev-python/distlib/distlib-0.3.4-r2.ebuild63
1 files changed, 63 insertions, 0 deletions
diff --git a/dev-python/distlib/distlib-0.3.4-r2.ebuild b/dev-python/distlib/distlib-0.3.4-r2.ebuild
new file mode 100644
index 000000000000..3055a7e0b6fe
--- /dev/null
+++ b/dev-python/distlib/distlib-0.3.4-r2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit distutils-r1 vcs-snapshot
+
+DESCRIPTION="Low-level components of distutils2/packaging"
+HOMEPAGE="
+ https://pypi.org/project/distlib/
+ https://bitbucket.org/pypa/distlib/
+"
+# pypi has zip only :-(
+SRC_URI="
+ https://bitbucket.org/pypa/distlib/get/${PV}.tar.bz2 -> ${P}.tar.bz2
+"
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# pypiserver is called as external executable
+# openpyxl installs invalid metadata that breaks distlib
+BDEPEND="
+ test? (
+ dev-python/pypiserver
+ !!<dev-python/openpyxl-3.0.3[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ # make sure they're not used
+ rm tests/pypi-server-standalone.py || die
+
+ # use system pypiserver instead of broken bundled one
+ eapply "${FILESDIR}"/distlib-0.3.2-system-pypiserver.py || die
+
+ # doesn't work with our patched pip
+ sed -i -e '/PIP_AVAIL/s:True:False:' tests/test_wheel.py || die
+
+ # broken with pypy3
+ sed -i -e 's:test_custom_shebang:_&:' tests/test_scripts.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x SKIP_ONLINE=1
+ local -x PYTHONHASHSEED=0
+
+ # disable system-site-packages -- distlib has no deps, and is very
+ # fragile to packages actually installed on the system
+ sed -i -e '/system-site-packages/s:true:false:' \
+ "${BUILD_DIR}/install${EPREFIX}/usr/bin/pyvenv.cfg" || die
+
+ "${EPYTHON}" tests/test_all.py -v -x ||
+ die "Tests failed with ${EPYTHON}"
+}