commit:     e96c1d113f47ac076ee71b951afebe3515850918
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 18 08:15:33 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 18 08:16:40 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e96c1d11

dev-python/setuptools: Pull setuptools_scm early

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 ...s-49.6.0.ebuild => setuptools-46.4.0-r2.ebuild} | 43 ++++++++++++++--------
 dev-python/setuptools/setuptools-49.6.0.ebuild     |  3 +-
 2 files changed, 29 insertions(+), 17 deletions(-)

diff --git a/dev-python/setuptools/setuptools-49.6.0.ebuild 
b/dev-python/setuptools/setuptools-46.4.0-r2.ebuild
similarity index 55%
copy from dev-python/setuptools/setuptools-49.6.0.ebuild
copy to dev-python/setuptools/setuptools-46.4.0-r2.ebuild
index 87b98893729..fe0f241c616 100644
--- a/dev-python/setuptools/setuptools-49.6.0.ebuild
+++ b/dev-python/setuptools/setuptools-46.4.0-r2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
 PYTHON_REQ_USE="xml(+)"
 
 inherit distutils-r1
@@ -14,24 +14,28 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
 
 LICENSE="MIT"
 SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 IUSE="test"
 RESTRICT="!test? ( test )"
 
 BDEPEND="
        app-arch/unzip
        test? (
-               dev-python/jaraco-envs[${PYTHON_USEDEP}]
-               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}]
+               $(python_gen_cond_dep '
+                       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}]
+               ' -3)
        )
 "
+# installing plugins apparently breaks stuff at runtime, so let's pull
+# it early
 PDEPEND="
-       >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]"
+       >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]
+       dev-python/setuptools_scm[${PYTHON_USEDEP}]"
 
 # Force in-source build because build system modifies sources.
 DISTUTILS_IN_SOURCE_BUILD=1
@@ -39,6 +43,11 @@ DISTUTILS_IN_SOURCE_BUILD=1
 DOCS=( {CHANGES,README}.rst 
docs/{easy_install.txt,pkg_resources.txt,setuptools.txt} )
 
 python_prepare_all() {
+       # silence the py2 warning that is awfully verbose and breaks some
+       # packages by adding unexpected output
+       # (also, we know!)
+       sed -i -e '/py2_warn/d' pkg_resources/__init__.py || die
+
        # disable tests requiring a network connection
        rm setuptools/tests/test_packageindex.py || die
 
@@ -46,19 +55,21 @@ python_prepare_all() {
        rm setuptools/tests/test_integration.py || die
 
        # xpass-es for me on py3
-       #sed -e '/xfail.*710/s:(:(six.PY2, :' \
-       #       -i setuptools/tests/test_archive_util.py || die
+       sed -e '/xfail.*710/s:(:(six.PY2, :' \
+               -i setuptools/tests/test_archive_util.py || die
 
        # avoid pointless dep on flake8
-       sed -i -e 's:--flake8::' -e 's:--cov::' pytest.ini || die
-
-       # disable the code disabling non-existing coverage plugin
-       sed -i -e 's:cov = .*:return:' conftest.py || die
+       sed -i -e 's:--flake8::' pytest.ini || die
 
        distutils-r1_python_prepare_all
 }
 
 python_test() {
+       if ! python_is_python3; then
+               einfo "Tests are skipped on py2 to untangle deps"
+               return
+       fi
+
        distutils_install_for_testing
        # test_easy_install raises a SandboxViolation due to 
${HOME}/.pydistutils.cfg
        # It tries to sandbox the test in a tempdir

diff --git a/dev-python/setuptools/setuptools-49.6.0.ebuild 
b/dev-python/setuptools/setuptools-49.6.0.ebuild
index 87b98893729..0d8d2e8bfb9 100644
--- a/dev-python/setuptools/setuptools-49.6.0.ebuild
+++ b/dev-python/setuptools/setuptools-49.6.0.ebuild
@@ -31,7 +31,8 @@ BDEPEND="
        )
 "
 PDEPEND="
-       >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]"
+       >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]
+       dev-python/setuptools_scm[${PYTHON_USEDEP}]"
 
 # Force in-source build because build system modifies sources.
 DISTUTILS_IN_SOURCE_BUILD=1

Reply via email to