diff options
Diffstat (limited to 'dev-python/setuptools')
-rw-r--r-- | dev-python/setuptools/Manifest | 17 | ||||
-rw-r--r-- | dev-python/setuptools/files/setuptools-69.5.1-py313.patch | 30 | ||||
-rw-r--r-- | dev-python/setuptools/setuptools-72.2.0.ebuild (renamed from dev-python/setuptools/setuptools-70.0.0.ebuild) | 46 | ||||
-rw-r--r-- | dev-python/setuptools/setuptools-73.0.1.ebuild (renamed from dev-python/setuptools/setuptools-70.1.1.ebuild) | 52 | ||||
-rw-r--r-- | dev-python/setuptools/setuptools-74.0.0.ebuild (renamed from dev-python/setuptools/setuptools-69.5.1-r1.ebuild) | 60 | ||||
-rw-r--r-- | dev-python/setuptools/setuptools-74.1.0.ebuild (renamed from dev-python/setuptools/setuptools-69.0.3-r1.ebuild) | 54 |
6 files changed, 102 insertions, 157 deletions
diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest index 611c89fae619..4a9d2fb5b589 100644 --- a/dev-python/setuptools/Manifest +++ b/dev-python/setuptools/Manifest @@ -1,11 +1,10 @@ AUX setuptools-62.4.0-py-compile.patch 3704 BLAKE2B 9a5e70d2556b059be0ef060abd1db71298cd0e9aa1e2795d92cea5cdbaf0c82f4433e1a0c3095f4bc41bc72a457b63142253fe46c712afa1d7855a5d43607bca SHA512 48d7c065e2d8c29ce6e498effe6d79f9caa0f37d7cf6cadd0ed02c48d196a4d8a10a73cfa26744d6f74b48c63cd28a4074b161a6aae18c6169f6d8fffb044b1e -AUX setuptools-69.5.1-py313.patch 1170 BLAKE2B c94591a2c0c8e8b03ab7285934b42e85b9742ae69ffa48cf1ca4d23cb6b4f1ad0a9b8dc4b57ce80815f139edffe0e2339270be0b9880ea8dfaa0e739cdc0193a SHA512 dbda665f7d68c3f574e3d21d8fd946d2c6bda60cd2999ce83c58309dca5066f2e4294a441c4b56a9eeb80536cf76fd14141c443223c5b6cc5dd94c894b7d8645 -DIST setuptools-69.0.3.tar.gz 2219609 BLAKE2B 1a5e7896c7ea82d51b0aa4794435b9899cef871f6ae43d22ae5e08c57d87b70641f3f2abfcc29956a3de515f90b112fd61d3daf793474b4cf33f8567e3a38f4a SHA512 11df934931f4b73f7e07ea5713479593c6baa134d423556b2ae7aff0f1e5bdbdee1f5b516131adb169c838231ceb0293441fbf275ef7030dabecf74122565b6d -DIST setuptools-69.5.1.tar.gz 2291314 BLAKE2B 3756dd587136c7e688bdfecf4c0434c0e799f50f9a9a95750d41cb75e26b613b3dc178f43a9e0d21f17c42a7c4ad7461e7986966aefb814e3d0ff05178c82542 SHA512 81f4a5184976a0d4aa070261bb56458c54ec6a479786fa469e98cb336e9a1691b281ae771abe41bc5398fac15b2dd039c07cf014ee00572f46908ce6830fcb6a -DIST setuptools-70.0.0.tar.gz 2265182 BLAKE2B 436189fbd614473c42a08da75837c5bb2f6fb6bc03bfc9b99db22810fa043fb071c2344659125439d507d10354d42ea5b703e91c0572caad90f5d805eca9ee8d SHA512 13a5ac09401165dc36d2a365c0ea236c01153374c002b062c4b403a537157ce86593848e93e3c26f5c81f5783e43e6aa96d813f9a39a55732ea3911ddc5c337a -DIST setuptools-70.1.1.tar.gz 2292324 BLAKE2B 9d489117a80ef9cefab6b730680a614d990f338aa54579928bafbe3c87dbb5e4db8527b8a0b6c1090bcd3504be97cc69a9ce979e593d0634d9b66b66bccb25e5 SHA512 63452aa1e1d1dea6ad622a21fcc9334bc3603e45de9a1485f79776e02a0fb3b0a0a8b3e886af73845c3c373348c7021f2e06a5665676e9015ee9855441512136 -EBUILD setuptools-69.0.3-r1.ebuild 3979 BLAKE2B 58d78a82ac5a3fb98a2844dc3b95cb7880c1b9acfa56f9125ce5aeb5ab334a21596a3a7b43ad4e776fb58ab7f91ac706a82dce176b6c971ebb7200374e69a8e6 SHA512 883c1919f2ba8ae92f1f2c78d99fdc786824765ffe6eac3e09f5c4105c22e2b1299a457f729c629d1bb5a9303b25499f9eccd177707b5a88fbe56ccb6ffe1d6e -EBUILD setuptools-69.5.1-r1.ebuild 4636 BLAKE2B 9aebfc1c5861b64058a9f5ef14ad0cef531c39f6d85e90c25cfc4553fd3d60a29842cd3b26e33cd1c3dcef4d6b3cfa8873ae423beb01a0448fc7b1450081142d SHA512 f80f437a0501918010ea99fd130860ecd82de2c95b49a7a7db83c07eba82e2a36c0b3808fddfcaf16b659f435e8db394caf8663a3a7bc14c16d43ce03f6466f1 -EBUILD setuptools-70.0.0.ebuild 4649 BLAKE2B 17e47a7fb15219ed058b259330db282c8ee803805f8c6f447060676384aae4311cbd8a537ae89caefa5725c6d1c88bcee51864fab82c068ab6df21cc26df3e16 SHA512 11dcfed4ea59444c2fc32b3e99bea725da481a84cf4bead50749acc0c2531b9ae7a402b20b8f900f4e28708f7643e4c74fb72c73e0f310f17f5826f898b0ab06 -EBUILD setuptools-70.1.1.ebuild 4892 BLAKE2B be2911d8b357ed15ac8d66c6a57ada1037581bdecdcc4222357b725076a435757627ac2e4b7e0e06023726d4c864fae50c191b32a1aeeb4670500bd8e5905109 SHA512 f9db6803121eebcd71a8833d1e34c89df4a83a504f3d493443162c23c11057269fc06ab81e64ff0346546137a636b738087d9215495208d2988e3e1bff0d44c8 +DIST setuptools-72.2.0.tar.gz 2419230 BLAKE2B f04c196d13f62302e7c6f30a1021598fe22955cc8c980ddf22efa65f4d398c25273552b1a19b8719e2fee722dc44e9f1a2e339c5b6da8f4ca4ae8399cd27b2e1 SHA512 029c711be2953cc7fd88b6a0a00715e05ac04414e085e0b2387d58757c970a3316afb6e13426fa10dcc53785b98c8543ba48d49acf223a6332399a39a4924732 +DIST setuptools-73.0.1.tar.gz 2526506 BLAKE2B 766453a7f6f3e34bdc63628b8c0321730c66381cc6048d01fbf9dbf76eb9900cd5cfa6dbd7c55c95ada3e01065d43bf7cd9029793e0735cae989b3cb1b95287c SHA512 5def2d817329524e610c7981fc3a84687ea4d2e0a72799341a706a16ec61df3efc16c4622f8b88746ad4cb52f92f2493c23a99a21cf3607ed48da480dedd200b +DIST setuptools-74.0.0.tar.gz 1389536 BLAKE2B 11a9c4a6e175cc1d48b4bfed4f57f38e0e2f1e9c1de08706afc8199860c61325c85eb1f0772f30a47d7dec1923ea866eeeeb3cf51e74d7396bd291769cae42cf SHA512 c8116bb2cd6b39c74a03bf267eb44289ab54a8b6acb91882e0159f9bd57f369d686e44dda8bb6b2466baa50abad684f939df914bfb5c2564cc9596bc602c7388 +DIST setuptools-74.1.0.tar.gz 1357694 BLAKE2B 3f92282df36df2ef16c10a0f10ff4a5100a4ec7a38798ba0fa4eb918f63d6994a6d646a31c49f53bc55991c03eec5d508613f8c91c3891c1efaf970134257fe4 SHA512 166f1bf28134c1b4a6e49e84d9544db57f2861dee417d4bcc6b9c9afdb1e8f975e4a8932921b3baca03cf70f16defdd5df5a7bb4c4c49a67b51453f0e6710c2d +EBUILD setuptools-72.2.0.ebuild 4420 BLAKE2B 6e85d262b4fb84a6191680cb7e73dc1deb21ed2386c1100715888328a9bfd20268247211a244ff3a80b9a679319692773e093638b2981abd53bc844d7fa84ee5 SHA512 48e4bacfd344c126ccfc39ddeea7ff1c8d942eac669e98cbe97410538441a7d7df2ac9265fce3cc61ceb354802e7bd30e9d6f72c4cf2a15a3f3715832df0671b +EBUILD setuptools-73.0.1.ebuild 4372 BLAKE2B d1adf6c88761065855de60e4e3e2636b02372b96813650b1e5f60541faf179ab9a67a9fb145e79b65be8ae2579c73e979df63e2f97cfc70c243a755fbd649169 SHA512 2e7974293b764156a0fbd0254203ad39b9736b8b0ee077c154337fbcae2345d9034bff62707087aba8e2ed58eb143020539f560131905a1c0feb1fa7c37e1b7a +EBUILD setuptools-74.0.0.ebuild 4454 BLAKE2B aa82ac6ee45f26cfc486a86000f0690703883b8ad5080997f3a48a9073a7ce5a2860291306bc35def00b5c738f798fb3649243f050cde9a65abf9a65f453b6df SHA512 019405dfd516dfcd66f3af10ffc09ab9f27e87aeb5be8a117e72605287b6ba336c505d8c4d8da07f5d3c4b8293278065061462dab2d5a4e6194dcd3217490f22 +EBUILD setuptools-74.1.0.ebuild 4338 BLAKE2B ccab22f6b768662a25f9f11d53e6e745843ea5321def1451f2301ebd4efc358cd3704eef37acb45489aa5a28e0ddd9471002cb7db331e7932bdf3f8fb4e440d1 SHA512 e0952eead06177a9a29e920caca43e7372cca1239ca17b5613bd73567a222fd733fbb2578c2b765152ac7ef88b0b2b178a180e7923b4ad59856f789759503981 MISC metadata.xml 469 BLAKE2B 4a26769b09a3785586b22db850b7fc5c4818f31c3ace9cc94476d35df05e50edf6721f3c95ec615c3b2efe071ef284a54ea2d53566316ba653f7830bb48f80bf SHA512 dd682c4ad2e59a97094ebdabe4d1063e2319ed05e1fe9d8c2fafe069badb3b4cf8bb6d9f50e09d2128e2a081c1c69827407ac8aed644ebf70eb4ca1bc9a57319 diff --git a/dev-python/setuptools/files/setuptools-69.5.1-py313.patch b/dev-python/setuptools/files/setuptools-69.5.1-py313.patch deleted file mode 100644 index 7222d3dba266..000000000000 --- a/dev-python/setuptools/files/setuptools-69.5.1-py313.patch +++ /dev/null @@ -1,30 +0,0 @@ -From c6266e423fa26aafa01f1df71de7c6613273155e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz> -Date: Tue, 14 May 2024 16:24:07 +0200 -Subject: [PATCH] Make the validation test for entry-points work with Python - 3.13+ - -The exception in importlib.metadata has changed. -See https://github.com/python/importlib_metadata/issues/488 - -This makes an existing test pass with Python 3.13. - -Partially fixes https://github.com/pypa/setuptools/issues/4196 ---- - setuptools/_entry_points.py | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/setuptools/_entry_points.py b/setuptools/_entry_points.py -index 747a69067e..b244e78387 100644 ---- a/setuptools/_entry_points.py -+++ b/setuptools/_entry_points.py -@@ -17,7 +17,8 @@ def ensure_valid(ep): - """ - try: - ep.extras -- except AttributeError as ex: -+ except (AttributeError, AssertionError) as ex: -+ # Why both? See https://github.com/python/importlib_metadata/issues/488 - msg = ( - f"Problems to parse {ep}.\nPlease ensure entry-point follows the spec: " - "https://packaging.python.org/en/latest/specifications/entry-points/" diff --git a/dev-python/setuptools/setuptools-70.0.0.ebuild b/dev-python/setuptools/setuptools-72.2.0.ebuild index 9b177c5796d4..61f356920900 100644 --- a/dev-python/setuptools/setuptools-70.0.0.ebuild +++ b/dev-python/setuptools/setuptools-72.2.0.ebuild @@ -21,11 +21,10 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" -# check */_vendor/vendored.txt RDEPEND=" !!<dev-python/setuptools-rust-1.8.0 >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] @@ -47,6 +46,7 @@ BDEPEND=" >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] + dev-python/jaraco-test[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] dev-python/pyproject-hooks[${PYTHON_USEDEP}] @@ -55,18 +55,21 @@ BDEPEND=" dev-python/pytest-subprocess[${PYTHON_USEDEP}] dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] ' "${PYTHON_TESTED[@]}") - $(python_gen_cond_dep ' - >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] - ' 3.10) ) " # setuptools-scm is here because installing plugins apparently breaks stuff at # runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 PDEPEND=" dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}] " src_prepare() { @@ -81,12 +84,10 @@ src_prepare() { sed -i -e '/--import-mode/d' pytest.ini || die # remove bundled dependencies - rm -r */_vendor || die + rm -r */_vendor setuptools/_distutils/_vendor || die - # remove the ugly */extern hack that breaks on unvendored deps - rm -r */extern || die find -name '*.py' -exec sed \ - -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ + -e 's:from [.]_vendor[.]:from :' \ -i {} + || die } @@ -97,20 +98,14 @@ python_test() { local EPYTEST_DESELECT=( # network - # TODO: see if PRE_BUILT_SETUPTOOLS_* helps - setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg - setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py setuptools/tests/test_editable_install.py - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies setuptools/tests/test_virtualenv.py::test_test_command_install_requirements # TODO setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors - setuptools/tests/test_extern.py::test_distribution_picklable # expects bundled deps in virtualenv setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel @@ -118,19 +113,14 @@ python_test() { setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts # TODO, probably some random package setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass - # Internet, sigh - setuptools/tests/test_integration.py + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config ) - case ${EPYTHON} in - python3.12) - EPYTEST_DESELECT+=( - # TODO - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency - ) - esac - local EPYTEST_XDIST=1 - epytest -o tmp_path_retention_policy=all setuptools + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools } diff --git a/dev-python/setuptools/setuptools-70.1.1.ebuild b/dev-python/setuptools/setuptools-73.0.1.ebuild index 374be7465b00..99f798f9e34d 100644 --- a/dev-python/setuptools/setuptools-70.1.1.ebuild +++ b/dev-python/setuptools/setuptools-73.0.1.ebuild @@ -21,19 +21,17 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" -# check */_vendor/vendored.txt RDEPEND=" !!<dev-python/setuptools-rust-1.8.0 >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] >=dev-python/packaging-24[${PYTHON_USEDEP}] >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] - >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}] $(python_gen_cond_dep ' >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] ' 3.10) @@ -47,6 +45,7 @@ BDEPEND=" >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] + dev-python/jaraco-test[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] dev-python/pyproject-hooks[${PYTHON_USEDEP}] @@ -55,18 +54,21 @@ BDEPEND=" dev-python/pytest-subprocess[${PYTHON_USEDEP}] dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] ' "${PYTHON_TESTED[@]}") - $(python_gen_cond_dep ' - >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] - ' 3.10) ) " # setuptools-scm is here because installing plugins apparently breaks stuff at # runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 PDEPEND=" dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}] " src_prepare() { @@ -81,12 +83,10 @@ src_prepare() { sed -i -e '/--import-mode/d' pytest.ini || die # remove bundled dependencies - rm -r */_vendor || die + rm -r */_vendor setuptools/_distutils/_vendor || die - # remove the ugly */extern hack that breaks on unvendored deps - rm -r */extern || die find -name '*.py' -exec sed \ - -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ + -e 's:from [.]_vendor[.]:from :' \ -i {} + || die } @@ -97,20 +97,14 @@ python_test() { local EPYTEST_DESELECT=( # network - # TODO: see if PRE_BUILT_SETUPTOOLS_* helps - setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg - setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py setuptools/tests/test_editable_install.py - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies setuptools/tests/test_virtualenv.py::test_test_command_install_requirements # TODO setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors - setuptools/tests/test_extern.py::test_distribution_picklable # expects bundled deps in virtualenv setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel @@ -118,22 +112,14 @@ python_test() { setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts # TODO, probably some random package setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass - # Internet, sigh - setuptools/tests/test_integration.py - # flaky - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config ) - case ${EPYTHON} in - python3.12) - EPYTEST_DESELECT+=( - # TODO - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency - ) - esac - local EPYTEST_XDIST=1 - epytest -o tmp_path_retention_policy=all setuptools + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools } diff --git a/dev-python/setuptools/setuptools-69.5.1-r1.ebuild b/dev-python/setuptools/setuptools-74.0.0.ebuild index bcb1a8e87e20..9cb620d24ab3 100644 --- a/dev-python/setuptools/setuptools-69.5.1-r1.ebuild +++ b/dev-python/setuptools/setuptools-74.0.0.ebuild @@ -21,19 +21,17 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" -# check */_vendor/vendored.txt RDEPEND=" !!<dev-python/setuptools-rust-1.8.0 >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] >=dev-python/packaging-24[${PYTHON_USEDEP}] >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] - >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}] $(python_gen_cond_dep ' >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] ' 3.10) @@ -42,38 +40,41 @@ BDEPEND=" ${RDEPEND} test? ( $(python_gen_cond_dep ' - dev-python/build[${PYTHON_USEDEP}] - >=dev-python/ini2toml-0.9[${PYTHON_USEDEP}] + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] + dev-python/jaraco-test[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] ' "${PYTHON_TESTED[@]}") - $(python_gen_cond_dep ' - >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] - ' python3_10 pypy3) ) " # setuptools-scm is here because installing plugins apparently breaks stuff at # runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 PDEPEND=" dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}] " src_prepare() { local PATCHES=( # TODO: remove this when we're 100% PEP517 mode "${FILESDIR}/setuptools-62.4.0-py-compile.patch" - - # https://github.com/pypa/setuptools/pull/4357 - "${FILESDIR}/${P}-py313.patch" ) distutils-r1_src_prepare @@ -82,12 +83,10 @@ src_prepare() { sed -i -e '/--import-mode/d' pytest.ini || die # remove bundled dependencies - rm -r */_vendor || die + rm -r */_vendor setuptools/_distutils/_vendor || die - # remove the ugly */extern hack that breaks on unvendored deps - rm -r */extern || die find -name '*.py' -exec sed \ - -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ + -e 's:from [.]_vendor[.]:from :' \ -i {} + || die } @@ -98,20 +97,14 @@ python_test() { local EPYTEST_DESELECT=( # network - # TODO: see if PRE_BUILT_SETUPTOOLS_* helps - setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg - setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py setuptools/tests/test_editable_install.py - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies setuptools/tests/test_virtualenv.py::test_test_command_install_requirements # TODO setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors - setuptools/tests/test_extern.py::test_distribution_picklable # expects bundled deps in virtualenv setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel @@ -119,19 +112,16 @@ python_test() { setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts # TODO, probably some random package setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass - # Internet, sigh - setuptools/tests/test_integration.py + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config + # TODO + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist ) - case ${EPYTHON} in - python3.12) - EPYTEST_DESELECT+=( - # TODO - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_distutils_command_dep - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_transitive_extra_dependency - ) - esac - local EPYTEST_XDIST=1 - epytest -o tmp_path_retention_policy=all setuptools + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools } diff --git a/dev-python/setuptools/setuptools-69.0.3-r1.ebuild b/dev-python/setuptools/setuptools-74.1.0.ebuild index c0efaa62a9ae..e1b22ccd2771 100644 --- a/dev-python/setuptools/setuptools-69.0.3-r1.ebuild +++ b/dev-python/setuptools/setuptools-74.1.0.ebuild @@ -7,7 +7,7 @@ EAPI=8 # please bump dev-python/ensurepip-setuptools along with this package! DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( python3_{10..12} pypy3 ) +PYTHON_TESTED=( python3_{10..13} pypy3 ) PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) PYTHON_REQ_USE="xml(+)" @@ -21,7 +21,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" @@ -29,24 +29,29 @@ RDEPEND=" !!<dev-python/setuptools-rust-1.8.0 >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] - >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}] + >=dev-python/packaging-24[${PYTHON_USEDEP}] >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] - >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] - >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.10) " BDEPEND=" ${RDEPEND} test? ( $(python_gen_cond_dep ' - dev-python/build[${PYTHON_USEDEP}] - >=dev-python/ini2toml-0.9[${PYTHON_USEDEP}] + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] + dev-python/jaraco-test[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] @@ -56,26 +61,29 @@ BDEPEND=" " # setuptools-scm is here because installing plugins apparently breaks stuff at # runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 PDEPEND=" dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}] " src_prepare() { local PATCHES=( # TODO: remove this when we're 100% PEP517 mode - "${FILESDIR}"/setuptools-62.4.0-py-compile.patch + "${FILESDIR}/setuptools-62.4.0-py-compile.patch" ) distutils-r1_src_prepare + # breaks tests + sed -i -e '/--import-mode/d' pytest.ini || die + # remove bundled dependencies rm -r */_vendor || die - - # remove the ugly */extern hack that breaks on unvendored deps - rm -r */extern || die - find -name '*.py' -exec sed \ - -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ - -i {} + || die } python_test() { @@ -85,20 +93,14 @@ python_test() { local EPYTEST_DESELECT=( # network - # TODO: see if PRE_BUILT_SETUPTOOLS_* helps - setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg - setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py setuptools/tests/test_editable_install.py - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies setuptools/tests/test_virtualenv.py::test_test_command_install_requirements # TODO setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors - setuptools/tests/test_extern.py::test_distribution_picklable # expects bundled deps in virtualenv setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel @@ -106,8 +108,16 @@ python_test() { setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts # TODO, probably some random package setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config + # TODO + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist ) local EPYTEST_XDIST=1 - epytest -o tmp_path_retention_policy=all setuptools + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools } |