summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-python/distlib/Manifest1
-rw-r--r--dev-python/distlib/distlib-0.3.2.ebuild54
2 files changed, 55 insertions, 0 deletions
diff --git a/dev-python/distlib/Manifest b/dev-python/distlib/Manifest
index 72f3a583cc10..04e1bb52bd12 100644
--- a/dev-python/distlib/Manifest
+++ b/dev-python/distlib/Manifest
@@ -1 +1,2 @@
DIST distlib-0.3.1.tar.bz2 1068500 BLAKE2B 52135869242f71cc6d6887da6d9e20ffc6b46c84d8146393961062d92d8c0bd68e1309277f64fdec0319ff3c503b1caaba3d5378f5c081dca79573c8d9c2e6f2 SHA512 f259299176c45be7024b80759015a2fad120ffdde55b6abea0f7fb0335cee90809b5daedcb88abdfb68fd496284b2e478df622004b3750327bfc86807581116c
+DIST distlib-0.3.2.tar.bz2 1075843 BLAKE2B 3595dc6af53beb7ff7dc49013e6c3db3453b501b56790a953c2cfea5a73aaca71fc69de68c8121ae92ffafd32a70ffa69d768cfd42844135fd5bd6647611e090 SHA512 e033ff2ff6b760f698a20103e01d63fa87bc1839bbf44fce252284c793e10a057dac645d818a4e0a2aa8be97bb85fcf9c8706b2399c505f12a093024d11be578
diff --git a/dev-python/distlib/distlib-0.3.2.ebuild b/dev-python/distlib/distlib-0.3.2.ebuild
new file mode 100644
index 000000000000..f63f8868e8e8
--- /dev/null
+++ b/dev-python/distlib/distlib-0.3.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=no
+PYTHON_COMPAT=( python3_{7..9} 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 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="test"
+# This package's tests are extremely fragile and tend to break or hang
+# when it doesn't like metadata of packages installed on the system.
+RESTRICT="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 -r tests/unittest2 || die
+ 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 -e '/PIP_AVAIL/s:True:False:' \
+ -i tests/test_wheel.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x SKIP_ONLINE=1
+ local -x PYTHONHASHSEED=0
+ "${EPYTHON}" tests/test_all.py -v -x ||
+ die "Tests failed with ${EPYTHON}"
+}