Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/setuptools/
Date: Thu, 31 Mar 2022 23:03:13
Message-Id: 1648767776.81c430c84b2650be6c0f8fed0e6f34b3fddcfe21.mgorny@gentoo
1 commit: 81c430c84b2650be6c0f8fed0e6f34b3fddcfe21
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Thu Mar 31 21:23:44 2022 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Thu Mar 31 23:02:56 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81c430c8
7
8 dev-python/setuptools: Bump to 61.3.0
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 dev-python/setuptools/Manifest | 1 +
13 dev-python/setuptools/setuptools-61.3.0.ebuild | 131 +++++++++++++++++++++++++
14 2 files changed, 132 insertions(+)
15
16 diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest
17 index 1d663b3f7520..8da4881d2c84 100644
18 --- a/dev-python/setuptools/Manifest
19 +++ b/dev-python/setuptools/Manifest
20 @@ -2,3 +2,4 @@ DIST python-gentoo-patches-3.10.0_p1.tar.xz 10068 BLAKE2B 1c9817b449831559f0a0b7
21 DIST setuptools-60.10.0.tar.gz 2420706 BLAKE2B 66d7f3b648b1e3222736ddf46ff97441bc9ed4dc528e0d4ee32ef18c99b2d3488e7525a1598a18df4f2cbdac409a4096a40539807c343d99707068a15003111d SHA512 e679bd84d31cb68f92899e0b25d5a6bf85cf63d9c8e1dfbfe974d7bf819cb36f451596b8715000be6a93656b972dc6c4d90a8a8534a6c88874a0be8140f2f091
22 DIST setuptools-60.5.0.tar.gz 2292478 BLAKE2B e41b2717b34d454b3959ee5b6f4fdc70dfec13d97fe6962bd1c1ea2296be8ee2d27bb14ed2cc5e6fb9a757661a0415984b3cf7cf1665347c62a50965f651f9d4 SHA512 b2cf7d99e60d0c862a7a4fd8e806019db52502de48ff77556df26ce39a8620f476de767e2e8be8aa260366f54d1429db8a42d538345ec2cd2cfd5286e62e770d
23 DIST setuptools-60.9.2.tar.gz 2425956 BLAKE2B 09baded7eef555ebd76db1672d69cd06cf6bcfc1126ba0fb0143b038d6599998f53460afc914f761d44ff25710802f6f371a793dca60040240cc328da0a3ea92 SHA512 be99bee951797632a68d08b94e0b604763662c13f58cecc872615081036081b3d72c5c468af47649449d6f7422f52ee99cf2f87fa9c840d10f98cd0217c0cff2
24 +DIST setuptools-61.3.0.gh.tar.gz 2643769 BLAKE2B 4ede87e7a597a6916dc089c311b0e4d098b08debbd1c4a9cb97078730e9cdc8dbcacd4236ca98a42e3cfafdf66d8f39bb64bc9135291335224b1c3b0bf79deff SHA512 35e2b848cf79e577b8c469562cb68a80b27d42d2d9c1c94f84fea9beb85e2db0796ed64d414add67a404d801c4f4e6cd489a72153de4dc8ed8b45fab24c28fd9
25
26 diff --git a/dev-python/setuptools/setuptools-61.3.0.ebuild b/dev-python/setuptools/setuptools-61.3.0.ebuild
27 new file mode 100644
28 index 000000000000..f9320a151d3b
29 --- /dev/null
30 +++ b/dev-python/setuptools/setuptools-61.3.0.ebuild
31 @@ -0,0 +1,131 @@
32 +# Copyright 1999-2022 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
36 +EAPI=7
37 +
38 +DISTUTILS_USE_PEP517=standalone
39 +PYTHON_COMPAT=( python3_{8..10} pypy3 )
40 +PYTHON_REQ_USE="xml(+)"
41 +
42 +inherit distutils-r1 multiprocessing
43 +
44 +CPY_PATCHSET="python-gentoo-patches-3.10.0_p1"
45 +DESCRIPTION="Collection of extensions to Distutils"
46 +HOMEPAGE="
47 + https://github.com/pypa/setuptools/
48 + https://pypi.org/project/setuptools/
49 +"
50 +SRC_URI="
51 + https://github.com/pypa/setuptools/archive/v${PV}.tar.gz
52 + -> ${P}.gh.tar.gz
53 + https://dev.gentoo.org/~floppym/python/${CPY_PATCHSET}.tar.xz
54 +"
55 +
56 +LICENSE="MIT"
57 +SLOT="0"
58 +KEYWORDS="~amd64"
59 +IUSE="test"
60 +RESTRICT="!test? ( test )"
61 +
62 +RDEPEND="
63 + >=dev-python/appdirs-1.4.4-r2[${PYTHON_USEDEP}]
64 + >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}]
65 + >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}]
66 + dev-python/nspektr[${PYTHON_USEDEP}]
67 + >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}]
68 + >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}]
69 + $(python_gen_cond_dep '
70 + >=dev-python/importlib_metadata-4.10.1-r1[${PYTHON_USEDEP}]
71 + ' 3.8 3.9)
72 + $(python_gen_cond_dep '
73 + >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}]
74 + ' 3.8)
75 +"
76 +BDEPEND="
77 + ${RDEPEND}
78 + >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}]
79 + test? (
80 + $(python_gen_cond_dep '
81 + dev-python/build[${PYTHON_USEDEP}]
82 + >=dev-python/ini2toml-0.9[${PYTHON_USEDEP}]
83 + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}]
84 + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}]
85 + >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}]
86 + dev-python/mock[${PYTHON_USEDEP}]
87 + dev-python/pip[${PYTHON_USEDEP}]
88 + dev-python/pip-run[${PYTHON_USEDEP}]
89 + dev-python/sphinx[${PYTHON_USEDEP}]
90 + dev-python/pytest[${PYTHON_USEDEP}]
91 + dev-python/pytest-fixture-config[${PYTHON_USEDEP}]
92 + dev-python/pytest-virtualenv[${PYTHON_USEDEP}]
93 + dev-python/pytest-xdist[${PYTHON_USEDEP}]
94 + dev-python/tomli[${PYTHON_USEDEP}]
95 + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}]
96 + >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
97 + dev-python/wheel[${PYTHON_USEDEP}]
98 + ' python3_{8..10} pypy3)
99 + )
100 +"
101 +PDEPEND="
102 + >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}]
103 + dev-python/setuptools_scm[${PYTHON_USEDEP}]
104 +"
105 +
106 +DOCS=( {CHANGES,README}.rst )
107 +
108 +src_prepare() {
109 + # remove bundled dependencies, setuptools will switch to system deps
110 + # automatically
111 + rm -r */_vendor || die
112 +
113 + # remove the ugly */extern hack that breaks on unvendored deps
114 + rm -r */extern || die
115 + find -name '*.py' -exec sed \
116 + -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \
117 + -i {} + || die
118 +
119 + # apply distutils patches to the bundled distutils
120 + pushd setuptools/_distutils >/dev/null || die
121 + # TODO: distutils C++ patch?
122 + eapply -p3 "${WORKDIR}/${CPY_PATCHSET}/0006-distutils-make-OO-enable-both-opt-1-and-opt-2-optimi.patch"
123 + popd >/dev/null || die
124 +
125 + distutils-r1_src_prepare
126 +
127 + export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
128 +}
129 +
130 +python_test() {
131 + local -x SETUPTOOLS_USE_DISTUTILS=stdlib
132 +
133 + # keep in sync with python_gen_cond_dep above!
134 + has "${EPYTHON}" python3.{8..10} pypy3 || continue
135 +
136 + local EPYTEST_DESELECT=(
137 + # network
138 + # TODO: see if PRE_BUILT_SETUPTOOLS_* helps
139 + setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist
140 + setuptools/tests/test_distutils_adoption.py
141 + setuptools/tests/test_virtualenv.py::test_clean_env_install
142 + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies
143 + 'setuptools/tests/test_virtualenv.py::test_pip_upgrade_from_source[None]'
144 + setuptools/tests/test_virtualenv.py::test_test_command_install_requirements
145 + setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests
146 + setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg
147 + # unhappy with pytest-xdist?
148 + setuptools/tests/test_easy_install.py::TestUserInstallTest::test_local_index
149 + # TODO
150 + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts
151 + setuptools/tests/test_test.py::test_tests_are_run_once
152 + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic
153 + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors
154 + # expects bundled deps in virtualenv
155 + setuptools/tests/test_editable_install.py::test_editable_with_pyproject
156 + )
157 +
158 + # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg
159 + # It tries to sandbox the test in a tempdir
160 + HOME="${PWD}" epytest \
161 + -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" setuptools
162 +}