diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2021-05-30 01:35:11 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2021-05-30 01:35:11 +0000 |
| commit | 025c782a4bdec0ec856ba222ee5bfadc7df0ce6b (patch) | |
| tree | c480c0f12369766e118db89081d5e7e85b230363 /dev-python/distlib | |
| parent | bf3a5cadeb3170a4a07abd84c9f838133d5b889d (diff) | |
| download | baldeagleos-repo-025c782a4bdec0ec856ba222ee5bfadc7df0ce6b.tar.gz baldeagleos-repo-025c782a4bdec0ec856ba222ee5bfadc7df0ce6b.tar.xz baldeagleos-repo-025c782a4bdec0ec856ba222ee5bfadc7df0ce6b.zip | |
Adding metadata
Diffstat (limited to 'dev-python/distlib')
| -rw-r--r-- | dev-python/distlib/Manifest | 1 | ||||
| -rw-r--r-- | dev-python/distlib/distlib-0.3.2.ebuild | 56 | ||||
| -rw-r--r-- | dev-python/distlib/files/distlib-0.3.2-py310.patch | 29 | ||||
| -rw-r--r-- | dev-python/distlib/files/distlib-0.3.2-system-pypiserver.py | 24 |
4 files changed, 110 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..d2854381d45c --- /dev/null +++ b/dev-python/distlib/distlib-0.3.2.ebuild @@ -0,0 +1,56 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7,8,9,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 ~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 + # fix tests for py310 + eapply "${FILESDIR}"/${P}-py310.patch + + # 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}" +} diff --git a/dev-python/distlib/files/distlib-0.3.2-py310.patch b/dev-python/distlib/files/distlib-0.3.2-py310.patch new file mode 100644 index 000000000000..23c3dbbe0274 --- /dev/null +++ b/dev-python/distlib/files/distlib-0.3.2-py310.patch @@ -0,0 +1,29 @@ +From 5a9540cf58fc020b0c6a1d5c23b9b93d1abd2eb0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sat, 29 May 2021 22:08:57 +0200 +Subject: [PATCH] Fix test_is_compatible to fix Python 3.10 support + +On Python 3.10, PYVER is py310 which wrongly matches the original +'py27' <= PYVER < 'py32' condition. Replace it with explicit match +against known Python versions in this range. This is probably +the simplest and the most future-proof solution to the problem at hand. +--- + tests/test_wheel.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test_wheel.py b/tests/test_wheel.py +index 849e7c1..7c8f5ee 100644 +--- a/tests/test_wheel.py ++++ b/tests/test_wheel.py +@@ -206,7 +206,7 @@ class WheelTestCase(DistlibTestCase): + + def test_is_compatible(self): + fn = os.path.join(HERE, 'dummy-0.1-py27-none-any.whl') +- if 'py27' <= PYVER < 'py32': ++ if PYVER in ('py27', 'py30', 'py31'): + self.assertTrue(is_compatible(fn)) + self.assertTrue(Wheel(fn).is_compatible()) + # use actual wheel names from PyPI. +-- +2.31.1 + diff --git a/dev-python/distlib/files/distlib-0.3.2-system-pypiserver.py b/dev-python/distlib/files/distlib-0.3.2-system-pypiserver.py new file mode 100644 index 000000000000..386ad05da578 --- /dev/null +++ b/dev-python/distlib/files/distlib-0.3.2-system-pypiserver.py @@ -0,0 +1,24 @@ +diff -dupr a/tests/test_index.py b/tests/test_index.py +--- a/tests/test_index.py 2021-05-29 17:42:08.015558305 +0200 ++++ b/tests/test_index.py 2021-05-29 17:42:56.949966576 +0200 +@@ -57,11 +57,6 @@ class PackageIndexTestCase(DistlibTestCa + def setUpClass(cls): + if cls.run_test_server: + cls.server = None +- server_script = os.path.join(HERE, 'pypi-server-standalone.py') +- if not os.path.exists(server_script): +- logger.debug('test server not available - some tests ' +- 'will be skipped.') +- return + pwdfn = os.path.join(HERE, 'passwords') + if not os.path.exists(pwdfn): # pragma: no cover + with open(pwdfn, 'w') as f: +@@ -72,7 +67,7 @@ class PackageIndexTestCase(DistlibTestCa + fd, cls.sinkfile = tempfile.mkstemp(suffix='.log', prefix='distlib-pypi-') + os.close(fd) + cls.sink = sink = open(cls.sinkfile, 'w') +- cmd = [sys.executable, 'pypi-server-standalone.py', ++ cmd = ['pypi-server', + '--interface', '127.0.0.1', '--port', TEST_SERVER_PORT, + '-P', 'passwords', 'packages'] + cls.server = subprocess.Popen(cmd, stdout=sink, stderr=sink, |
