summaryrefslogtreecommitdiff
path: root/dev-python/virtualenv
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
commit7bc9c63c9da678a7e6fceb095d56c634afd22c56 (patch)
tree4a67d50a439e9af63947e5f8b6ba3719af98b6c9 /dev-python/virtualenv
parentb284a3168fa91a038925d2ecf5e4791011ea5e7d (diff)
gentoo resync : 15.12.2019
Diffstat (limited to 'dev-python/virtualenv')
-rw-r--r--dev-python/virtualenv/Manifest11
-rw-r--r--dev-python/virtualenv/files/virtualenv-16.7.7-tests-internet.patch50
-rw-r--r--dev-python/virtualenv/files/virtualenv-16.7.7-tests.patch53
-rw-r--r--dev-python/virtualenv/files/virtualenv-16.7.8-tests-pypy.patch64
-rw-r--r--dev-python/virtualenv/virtualenv-15.1.0.ebuild1
-rw-r--r--dev-python/virtualenv/virtualenv-16.0.0.ebuild3
-rw-r--r--dev-python/virtualenv/virtualenv-16.7.7.ebuild57
-rw-r--r--dev-python/virtualenv/virtualenv-16.7.8.ebuild60
8 files changed, 296 insertions, 3 deletions
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index 3774188cc254..dde679bc457b 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -1,6 +1,13 @@
AUX virtualenv-12.1.1-skip-broken-test.patch 542 BLAKE2B 8c924cafcc0ee78b3101d55a58db8f352f793fb873a2d82b00b13a41fea9b556d90613a8df1b4a86939b22573542d2187366a9e551ed3090c62d6bc4566779c7 SHA512 9517f2efccb3cd177370cf66ea12244a39e762aae64e9bd412fc05af087648066deaf62d381b52a0eee1487c82109df4bd463599eaa641890c32eec48b694f25
+AUX virtualenv-16.7.7-tests-internet.patch 2103 BLAKE2B 56ac246fb6675c273e288b230c2502691f36f49502427c234c8b2da1a2d187791aced234fd70f7be98b98ff158f570747e670cc0ededdab1d5ed499d7b8588be SHA512 17f2a38d32f17c7f8bfe138939b6953dcbf13404371b8377a47759118ad37aaf73f45f670d46d5956fd5948754fb9c60248d9222920c6fd7e7c2e7c7661c9a18
+AUX virtualenv-16.7.7-tests.patch 2092 BLAKE2B fe9eef6372958265ff4b0b919c424a16313934973f29f15f726541cf3a32a9e49d163a40ff0b2d08d17f6521cc7d651fa092d66eb196261706d8d11a9e590e31 SHA512 f4c8a46d5d064672bd154beb0c1fd4a368e9879046931a67fc053e314b5f8510e825cbb3ad3d7e149a19745149a47d4e694b0f6b9f771dcf55e35bcc0871eb59
+AUX virtualenv-16.7.8-tests-pypy.patch 3133 BLAKE2B 37d544c96a1546aa0df4e820014ee6091d4b4ca5155da86280aaebfb1a8d26ce9c6a055e47b11129509d7d00abcee0e3a915bd6ff4665b289cfce399f2dfd3b6 SHA512 f99cd435fe9fa98465addc6b22310e5d708c87edef224cdf540556a2ab1a70bebf06e828c02148bb597d163c31b2816845c0c8126727d1d25b38ffcb91c2251e
DIST virtualenv-15.1.0.tar.gz 1865011 BLAKE2B aa460d9188189bf44557417a3a878f4f58d6c4a66fda2da5dd9a69e2ec04a8be6b5cf125160b1f00b4a32803dbf8231a006974499e9110101cac5e522d82eaae SHA512 46c313fe855483cf42def0ddb319df7513bb00ea2c1570efaf1236b4e0074df40d574f3858a3d3760db988b9021ca2046c40a355cc5a3ae32a2802d6120bf255
DIST virtualenv-16.0.0.tar.gz 1968312 BLAKE2B efc25f7c12335bb8619c3de125af3693d73afc5e7ff4edf1afa95227360ab4d0eb2ffb574b9bb36de26a2bda65b1f06009308fef48b12a81050bbc1f4ab852e9 SHA512 aed6eff9b85107072c321b37c1725987d474caf615734ab40d8d1fa60f2635be1a1919a47fbd211127e38cf1c4002548c778df29fc56d45a4570b31906c0ee54
-EBUILD virtualenv-15.1.0.ebuild 1207 BLAKE2B 8b2f7b023266a7ca6ea6f6ef747cbd14ef8d35f26f15cdc9d7d4d30deb3d1864a6c7be022e3f4e552c87420b578fb421fe613dc17bb8db816330bca6b82f6d16 SHA512 4cf424442b2042edccebc19fc90236814d2c41a4917985c3904651e1970990d715895c30c01dfc16a853db9b6e58433f186141039bf78b3b4d747fedc4efeea6
-EBUILD virtualenv-16.0.0.ebuild 1220 BLAKE2B 25701e2b9f8a44121061414e480a79ab7b67e3eb9a5de053670e06bc3bef8c88e2fcdc67754dcb888700b6dd51ebbe32f9f9f08b01ea4f81e11959b6cec295ff SHA512 d480557a5956fa411ac4306682481beb4362e44ff22e0de0b7f1511d008f4497813f397f1c72e121f05ba8e2248c1e5d9c3b8d257cb2828936307ba8c21656e7
+DIST virtualenv-16.7.7.tar.gz 5113918 BLAKE2B b8189a2fa2c76f5571ff8964e644971ea3a2b7ba924eae860eb41789e3bfdb01096eca4a338a5b9634698ba4920a3ea77a5ea734dd7c6997317661ee3e7ee6f5 SHA512 d39af559c79e1a254bd6aa9a6f20db858867f858dd8cbe44141692166e7ab60bfce6f666250113cca33180a157bc65015c14ec554df335f73c1134120974d2a0
+DIST virtualenv-16.7.8.tar.gz 5116520 BLAKE2B 3a81583695abfa92193f5ffb769546abe4b8f736280bc85bca8c3f5b17c6a5ce4ed83ac2e0ee283b457bd1ce433554bfc515452cb075f4693fe0d127d2eb042b SHA512 fbecf6d0a3cb27e8b88d9063567813fbbbeda95cd6bd626cd612020c6733db762f24119ac1205aa82fcdfd0a69a8a5a084295278895fdd51a3b145aa30860206
+EBUILD virtualenv-15.1.0.ebuild 1234 BLAKE2B 01e743302b25912199a12a2b240359d66b22e32d96056b97e4b2e497d959eed439d5a83cddc42e9040a20f4326c816f5b3070b473db12c6b1c14d06085e360b6 SHA512 8af82ead5ff932a48449a023ff9346383d82d1e3b43e7adc660d727e603e531973939a56a5af0d15d7efa0ce84d318767eee64c07541d78ebef908107e75ae93
+EBUILD virtualenv-16.0.0.ebuild 1239 BLAKE2B c99be3960b68880cf490ce1f1a321885e3626a0a35e297c83ffbda072b23f6137a47906ac34947d79ffa1113d5515b618a82a5a4f3b2ef02369f8e6498a82a68 SHA512 e520e001c6bd4176cf4505930c061e3a00a03c442c502c5f8ab91f0504abeaf399994ef43a96da6b16765f2122d81cd1a62c6a4449ffab7db7f508d7ad5ee8ea
+EBUILD virtualenv-16.7.7.ebuild 1677 BLAKE2B 937171dc853c535baf975aff9040870491d6cdfb60f486dac485f28866a96288518e699d36a03246a0673ef6d938e7a7c56ca9b6f77c420cc9bc2f79d4a34011 SHA512 d2cb17757833aea0c41fd0cea042b5006e08d850306b63d5d8148af48aabd6cdc8922f05109e02fc1cd1579623dbe0ccafca8df9090b1001adca6979e924312c
+EBUILD virtualenv-16.7.8.ebuild 1762 BLAKE2B b6d9f24215f3e2c6c5f218e549b10bc99577a4ede3291234155f0ad1becd9b2b2ff909d64db58a91827ef73cbe96d10e929ec49b8786da09bdc585ed6d4f8c94 SHA512 3023e5cc9e4b9bfa9d0358f33597db64c74e7938ab8bd72fdd56d3a716b6f84a0a3e9508cf641dfe035ee6d5a0f29f072d5a83f510df914ff575b887b8640dec
MISC metadata.xml 380 BLAKE2B 9a15805179f82d4e5c60aeb56191e690f9fe9260e34d9b4e0b893a51522fdc61246f02b20c1b55084709e06d6ce53b2e6436947aa178e2d413a923102d7ee125 SHA512 b6385fef70c6988548a00e6987bf5004979d139ad6c501d3f7b739bacef06eafa39a40bee8cc2d1164e01bb425f131aeea13f4b58ed6e75d66773a4f1c1df824
diff --git a/dev-python/virtualenv/files/virtualenv-16.7.7-tests-internet.patch b/dev-python/virtualenv/files/virtualenv-16.7.7-tests-internet.patch
new file mode 100644
index 000000000000..97baeb59c4eb
--- /dev/null
+++ b/dev-python/virtualenv/files/virtualenv-16.7.7-tests-internet.patch
@@ -0,0 +1,50 @@
+diff --git a/tests/test_from_source.py b/tests/test_from_source.py
+index 39d7c05..76834f7 100644
+--- a/tests/test_from_source.py
++++ b/tests/test_from_source.py
+@@ -40,6 +40,7 @@ def test_use_from_source_sdist(sdist, tmp_path, clean_python, monkeypatch, call_
+ )
+
+
++@pytest.mark.skip(reason="needs internet access")
+ def test_use_from_wheel(tmp_path, extracted_wheel, clean_python, monkeypatch, call_subprocess):
+ """test that we can create a virtual environment by feeding to a clean python the wheels content"""
+ virtualenv_file = extracted_wheel / "virtualenv.py"
+diff --git a/tests/test_source_content.py b/tests/test_source_content.py
+index 8eae6bc..06763ee 100644
+--- a/tests/test_source_content.py
++++ b/tests/test_source_content.py
+@@ -41,6 +41,7 @@ def test_sdist_contains(sdist):
+ assert not extra, " | ".join(extra)
+
+
++@pytest.mark.skip(reason="needs internet access")
+ def test_wheel_contains(extracted_wheel):
+ content = set(extracted_wheel.iterdir())
+
+diff --git a/tests/test_zipapp.py b/tests/test_zipapp.py
+index d084af6..93d29e1 100644
+--- a/tests/test_zipapp.py
++++ b/tests/test_zipapp.py
+@@ -51,11 +51,13 @@ def call_wheel(tmp_path_factory, call_subprocess):
+ return wheel_make_env
+
+
++@pytest.mark.skip(reason="needs internet access")
+ @pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ def test_zipapp_basic_invocation(call_zipapp, tmp_path):
+ _test_basic_invocation(call_zipapp, tmp_path)
+
+
++@pytest.mark.skip(reason="needs internet access")
+ @pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ def test_wheel_basic_invocation(call_wheel, tmp_path):
+ _test_basic_invocation(call_wheel, tmp_path)
+@@ -97,6 +99,7 @@ def test_zipapp_invocation_dash_p(call_zipapp, tmp_path):
+ _test_invocation_dash_p(call_zipapp, tmp_path)
+
+
++@pytest.mark.skip(reason="needs internet access")
+ @pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ @pytest.mark.skipif(sys.platform == "win32" and six.PY2, reason="no python 3 for windows on CI")
+ def test_wheel_invocation_dash_p(call_wheel, tmp_path):
diff --git a/dev-python/virtualenv/files/virtualenv-16.7.7-tests.patch b/dev-python/virtualenv/files/virtualenv-16.7.7-tests.patch
new file mode 100644
index 000000000000..41d3240d47d3
--- /dev/null
+++ b/dev-python/virtualenv/files/virtualenv-16.7.7-tests.patch
@@ -0,0 +1,53 @@
+diff --git a/tests/test_virtualenv.py b/tests/test_virtualenv.py
+index 620c0cb..946233b 100644
+--- a/tests/test_virtualenv.py
++++ b/tests/test_virtualenv.py
+@@ -356,6 +356,7 @@ def test_install_python_bin():
+ shutil.rmtree(tmp_virtualenv)
+
+
++@pytest.mark.skip(reason="This test does not seem to be working, and I have no idea why")
+ @pytest.mark.skipif("platform.python_implementation() == 'PyPy'")
+ def test_always_copy_option():
+ """Should be no symlinks in directory tree"""
+diff --git a/tests/test_zipapp.py b/tests/test_zipapp.py
+index 8ef8bd1..d084af6 100644
+--- a/tests/test_zipapp.py
++++ b/tests/test_zipapp.py
+@@ -51,10 +51,12 @@ def call_wheel(tmp_path_factory, call_subprocess):
+ return wheel_make_env
+
+
++@pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ def test_zipapp_basic_invocation(call_zipapp, tmp_path):
+ _test_basic_invocation(call_zipapp, tmp_path)
+
+
++@pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ def test_wheel_basic_invocation(call_wheel, tmp_path):
+ _test_basic_invocation(call_wheel, tmp_path)
+
+@@ -95,6 +97,7 @@ def test_zipapp_invocation_dash_p(call_zipapp, tmp_path):
+ _test_invocation_dash_p(call_zipapp, tmp_path)
+
+
++@pytest.mark.skipif(six.PY2, reason="seems to be broken on python2")
+ @pytest.mark.skipif(sys.platform == "win32" and six.PY2, reason="no python 3 for windows on CI")
+ def test_wheel_invocation_dash_p(call_wheel, tmp_path):
+ _test_invocation_dash_p(call_wheel, tmp_path)
+diff --git a/virtualenv.py b/virtualenv.py
+index 0c47e4f..d4a1747 100755
+--- a/virtualenv.py
++++ b/virtualenv.py
+@@ -80,9 +80,9 @@ else:
+ DEFAULT_CONFIG_FILE = os.path.join(DEFAULT_STORAGE_DIR, "virtualenv.ini")
+
+ if IS_PYPY:
+- EXPECTED_EXE = "pypy"
++ EXPECTED_EXE = "pypy{}".format('' if sys.hexversion < 0x3000000 else '3')
+ else:
+- EXPECTED_EXE = "python"
++ EXPECTED_EXE = "python{}.{}".format(sys.version_info.major, sys.version_info.minor)
+
+ # Return a mapping of version -> Python executable
+ # Only provided for Windows, where the information in the registry is used
diff --git a/dev-python/virtualenv/files/virtualenv-16.7.8-tests-pypy.patch b/dev-python/virtualenv/files/virtualenv-16.7.8-tests-pypy.patch
new file mode 100644
index 000000000000..1e9268a5f976
--- /dev/null
+++ b/dev-python/virtualenv/files/virtualenv-16.7.8-tests-pypy.patch
@@ -0,0 +1,64 @@
+diff --git a/tests/test_virtualenv.py b/tests/test_virtualenv.py
+index 620c0cb..3284cea 100644
+--- a/tests/test_virtualenv.py
++++ b/tests/test_virtualenv.py
+@@ -5,6 +5,7 @@ import optparse
+ import os
+ import shutil
+ import subprocess
++import platform
+ import sys
+ import tempfile
+ import textwrap
+@@ -342,6 +343,11 @@ def test_install_python_bin():
+
+ if virtualenv.IS_WIN:
+ required_executables = ["python.exe", "pythonw.exe"]
++ elif platform.python_implementation() == 'PyPy':
++ if sys.version_info.major < 3:
++ required_executables = ["pypy"]
++ else:
++ required_executables = ["pypy3"]
+ else:
+ py_exe_no_version = "python"
+ py_exe_version_major = "python%s" % sys.version_info[0]
+@@ -549,7 +555,7 @@ def check_pypy_pre_import():
+ assert module in sys.modules, "missing {!r} in sys.modules".format(module)
+
+
+-@pytest.mark.skipif("platform.python_implementation() != 'PyPy'")
++@pytest.mark.skipif("platform.python_implementation() == 'PyPy'")
+ def test_pypy_pre_import(tmp_path):
+ """For PyPy, some built-in modules should be pre-imported because
+ some programs expect them to be in sys.modules on startup.
+@@ -622,7 +628,7 @@ def test_create_environment_from_venv(tmpdir):
+ builder.setup_python(ctx)
+ builder.setup_scripts(ctx)
+ subprocess.check_call([ctx.env_exe, virtualenv.__file__, "--no-setuptools", "--no-pip", "--no-wheel", ve_venv_dir])
+- ve_exe = os.path.join(bin_dir, "python")
++ ve_exe = os.path.join(bin_dir, os.getenv('EPYTHON'))
+ out = subprocess.check_output([ve_exe, "-c", "import sys; print(sys.real_prefix)"], universal_newlines=True)
+ # Test against real_prefix if present - we might be running the test from a virtualenv (e.g. tox).
+ assert out.strip() == getattr(sys, "real_prefix", sys.prefix)
+@@ -639,7 +645,7 @@ def test_create_environment_from_venv_no_pip(tmpdir):
+ builder.setup_python(ctx)
+ builder.setup_scripts(ctx)
+ subprocess.check_call([ctx.env_exe, virtualenv.__file__, "--no-pip", ve_venv_dir])
+- ve_exe = os.path.join(bin_dir, "python")
++ ve_exe = os.path.join(bin_dir, os.getenv('EPYTHON'))
+ out = subprocess.check_output([ve_exe, "-c", "import sys; print(sys.real_prefix)"], universal_newlines=True)
+ # Test against real_prefix if present - we might be running the test from a virtualenv (e.g. tox).
+ assert out.strip() == getattr(sys, "real_prefix", sys.prefix)
+@@ -657,10 +663,11 @@ def test_create_environment_with_old_pip(tmpdir):
+ virtualenv.create_environment(venvdir, search_dirs=[support_dir], no_wheel=True)
+
+
++@pytest.mark.skipif("platform.python_implementation() == 'PyPy'")
+ def test_license_builtin(clean_python):
+ _, bin_dir, _ = clean_python
+ proc = subprocess.Popen(
+- (os.path.join(bin_dir, "python"), "-c", "license()"), stdin=subprocess.PIPE, stdout=subprocess.PIPE
++ (os.path.join(bin_dir, os.getenv('EPYTHON')), "-c", "license()"), stdin=subprocess.PIPE, stdout=subprocess.PIPE
+ )
+ out_b, _ = proc.communicate(b"q\n")
+ out = out_b.decode()
diff --git a/dev-python/virtualenv/virtualenv-15.1.0.ebuild b/dev-python/virtualenv/virtualenv-15.1.0.ebuild
index 17fae3396765..13f9106f31b0 100644
--- a/dev-python/virtualenv/virtualenv-15.1.0.ebuild
+++ b/dev-python/virtualenv/virtualenv-15.1.0.ebuild
@@ -19,6 +19,7 @@ LICENSE="MIT"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
SLOT="0"
IUSE="doc test"
+RESTRICT="!test? ( test )"
RDEPEND=""
DEPEND="${RDEPEND}
diff --git a/dev-python/virtualenv/virtualenv-16.0.0.ebuild b/dev-python/virtualenv/virtualenv-16.0.0.ebuild
index 0e9083cb2284..d99fee81512f 100644
--- a/dev-python/virtualenv/virtualenv-16.0.0.ebuild
+++ b/dev-python/virtualenv/virtualenv-16.0.0.ebuild
@@ -16,9 +16,10 @@ HOMEPAGE="
SRC_URI="https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
SLOT="0"
IUSE="doc test"
+RESTRICT="!test? ( test )"
RDEPEND=""
DEPEND="${RDEPEND}
diff --git a/dev-python/virtualenv/virtualenv-16.7.7.ebuild b/dev-python/virtualenv/virtualenv-16.7.7.ebuild
new file mode 100644
index 000000000000..a060296f7646
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-16.7.7.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# pypy{,3} dropped until test deps are tested/updated
+PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+
+inherit distutils-r1
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+ https://virtualenv.pypa.io/en/stable/
+ https://pypi.org/project/virtualenv/
+ https://github.com/pypa/virtualenv/
+"
+SRC_URI="https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND=">=dev-python/setuptools-19.6.2[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pip-19.3.1-r1[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pypiserver[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ )"
+
+DOCS=( docs/index.rst docs/changes.rst )
+
+PATCHES=(
+ "${FILESDIR}/virtualenv-16.7.7-tests.patch"
+
+ # disable tests that need internet access
+ "${FILESDIR}/virtualenv-16.7.7-tests-internet.patch"
+)
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx_rtd_theme \
+ dev-python/towncrier
+
+python_test() {
+ cp "${S}"/LICENSE.txt "${BUILD_DIR}"/lib || \
+ die "Could not copy LICENSE.txt with ${EPYTHON}"
+
+ pytest -vv tests || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/virtualenv/virtualenv-16.7.8.ebuild b/dev-python/virtualenv/virtualenv-16.7.8.ebuild
new file mode 100644
index 000000000000..bb85f78d9a37
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-16.7.8.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# pypy{,3} dropped until test deps are tested/updated
+PYTHON_COMPAT=( python{2_7,3_{5,6,7,8}} pypy{,3} )
+
+inherit distutils-r1
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+ https://virtualenv.pypa.io/en/stable/
+ https://pypi.org/project/virtualenv/
+ https://github.com/pypa/virtualenv/
+"
+SRC_URI="https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND=">=dev-python/setuptools-19.6.2[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pip-19.3.1-r1[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pypiserver[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ )"
+
+DOCS=( docs/index.rst docs/changes.rst )
+
+PATCHES=(
+ "${FILESDIR}/virtualenv-16.7.7-tests.patch"
+
+ # disable tests that need internet access
+ "${FILESDIR}/virtualenv-16.7.7-tests-internet.patch"
+
+ # test fixes for pypy
+ "${FILESDIR}/virtualenv-16.7.8-tests-pypy.patch"
+)
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx_rtd_theme \
+ dev-python/towncrier
+
+python_test() {
+ cp "${S}"/LICENSE.txt "${BUILD_DIR}"/lib || \
+ die "Could not copy LICENSE.txt with ${EPYTHON}"
+
+ pytest -vv tests || die "Tests fail with ${EPYTHON}"
+}