From 47cd3f21edd4145cefb0ece5ee042429c4064e74 Mon Sep 17 00:00:00 2001 From: Viorel Munteanu Date: Mon, 1 Apr 2024 12:29:26 +0300 Subject: [PATCH 01/14] metadata/stabilization-groups: add virtualbox group Signed-off-by: Viorel Munteanu --- metadata/stabilization-groups/virtualbox.group | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 metadata/stabilization-groups/virtualbox.group diff --git a/metadata/stabilization-groups/virtualbox.group b/metadata/stabilization-groups/virtualbox.group new file mode 100644 index 0000000000000..32aa379b4bb4f --- /dev/null +++ b/metadata/stabilization-groups/virtualbox.group @@ -0,0 +1,5 @@ +app-emulation/virtualbox +app-emulation/virtualbox-modules +app-emulation/virtualbox-guest-additions +app-emulation/virtualbox-additions +app-emulation/virtualbox-extpack-oracle From a003748ebdafb2835e15ccabce09060139e7cfe7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 1 Apr 2024 05:42:39 +0200 Subject: [PATCH 02/14] dev-python/mkdocs-material: Bump to 9.5.16 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/mkdocs-material/Manifest | 1 + .../mkdocs-material-9.5.16.ebuild | 67 +++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 dev-python/mkdocs-material/mkdocs-material-9.5.16.ebuild diff --git a/dev-python/mkdocs-material/Manifest b/dev-python/mkdocs-material/Manifest index f5a35e5824e56..cdc13d0b98017 100644 --- a/dev-python/mkdocs-material/Manifest +++ b/dev-python/mkdocs-material/Manifest @@ -1,3 +1,4 @@ DIST mkdocs-material-9.5.13.gh.tar.gz 14797946 BLAKE2B fa525ff6577eb9409f08a3dd3b609f85d5bd0eabf3922d2f32751ee3d2fd52a09bdcbf4aa73f8a5c5185ced8eed542a33f414980a1632cc995d572b50fdb277d SHA512 57cb9a8d18bbb1d4ce43976b59737fc9619d8755f1736687b8399df7edbe0f44e91a97256ede886f45583a32d3cfdd049361c817310bbaca045b96e1a0d3e5e6 DIST mkdocs-material-9.5.14.gh.tar.gz 14819394 BLAKE2B 27c083e03d46ba8e24750065eb498bf8f1745715e9ec1e0c6785f532a93e05415fe1d4d8490d738c2b6f016573cca1897dfcc05837d5e3fda90b14d65889caf2 SHA512 6d371e43cf6051fbe58c2eca60cf9371626876be5640bfe478ec97f4c9c8ae4f019211c8d8fcfd1fbddb88a35680c821cb6870c565b41a337f0b7aecc59abf9b DIST mkdocs-material-9.5.15.gh.tar.gz 14819594 BLAKE2B f0d992962acc7636218222913fcd8d40b6b74c3c4555d1ed8d5b30a4d438c137849624a28d3ed015d04d8c62955d9fffcb5d4e12a3008512a3d3247818789d9e SHA512 341069be531e8caed1e13fed1fabecf2dc4903afedfcccecd36955b22c859b748c88a900c7fca485b796d53812a893f3e49f2e8e519c1bcd8f5b8e7bf32d788d +DIST mkdocs-material-9.5.16.gh.tar.gz 14839628 BLAKE2B 670066c57a4aa2bf3be295d58a8194b1602b829ece99b3b2b44e951f97e11379f525309dbd3757dfe493ba8a96d913217f2f86099d27d90b889ff3f4fb6cd9e1 SHA512 57a49d8a85e6703670f208dee86e14aa26d1378993c92c79fc401e161951cc6e0d1ba89ce8624f67504d6ecae7435e811d0a26143c9053f5214fbe57793f714b diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.16.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.16.ebuild new file mode 100644 index 0000000000000..46c2a0851fa99 --- /dev/null +++ b/dev-python/mkdocs-material/mkdocs-material-9.5.16.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{10..12} ) + +DOCS_BUILDER="mkdocs" +DOCS_DEPEND=" + dev-python/mkdocs-material-extensions + dev-python/mkdocs-minify-plugin + dev-python/mkdocs-redirects +" + +inherit distutils-r1 docs + +DESCRIPTION="A Material Design theme for MkDocs" +HOMEPAGE=" + https://github.com/squidfunk/mkdocs-material/ + https://pypi.org/project/mkdocs-material/ +" +SRC_URI=" + https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="social" + +RDEPEND=" + >=dev-python/Babel-2.10.3[${PYTHON_USEDEP}] + >=dev-python/colorama-0.4[${PYTHON_USEDEP}] + >=dev-python/jinja-3.0.2[${PYTHON_USEDEP}] + >=dev-python/lxml-4.6[${PYTHON_USEDEP}] + >=dev-python/markdown-3.2[${PYTHON_USEDEP}] + >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}] + >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}] + >=dev-python/pygments-2.16[${PYTHON_USEDEP}] + >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}] + >=dev-python/readtime-2.0[${PYTHON_USEDEP}] + >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}] + >=dev-python/requests-2.26[${PYTHON_USEDEP}] + social? ( + >=dev-python/pillow-10.2[${PYTHON_USEDEP}] + >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}] +" +# mkdocs-material-extensions depends on mkdocs-material creating a circular dep +PDEPEND=" + >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}] +" + +PATCHES=( + # simplify pyproject to remove extra deps for metadata + "${FILESDIR}/${PN}-8.5.7-simplify-build.patch" +) + +src_prepare() { + echo "__version__ = '${PV}'" > gentoo_version.py || die + distutils-r1_src_prepare +} From a0d9b97d7aa8542ea13b747f47f626017c8ad015 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 1 Apr 2024 05:46:23 +0200 Subject: [PATCH 03/14] dev-python/types-gdb: Bump to 12.1.4.20240401 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/types-gdb/Manifest | 1 + .../types-gdb/types-gdb-12.1.4.20240401.ebuild | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild diff --git a/dev-python/types-gdb/Manifest b/dev-python/types-gdb/Manifest index 2650abef25ac7..c189d05df4331 100644 --- a/dev-python/types-gdb/Manifest +++ b/dev-python/types-gdb/Manifest @@ -1,2 +1,3 @@ DIST types-gdb-12.1.4.20240322.tar.gz 10912 BLAKE2B d9fbb963fa6110c5f1c38e483a8b75eb00fd28d5d97eace31006515bfe731a78b9e57f5ec7814f5281363c2e3179494fe54ca6ca86b4c030161122253423d7f3 SHA512 9424844c4ac7386729a6156479252031ce80e6ca58b56a12c224a6f66ce8ee436671a84d50ea57ab9a027a5ad0340b576ea295d117ccfe3cc39230ca4ff52e81 DIST types-gdb-12.1.4.20240327.tar.gz 10993 BLAKE2B 9902a7c2d75eba37c53c0579a8f29b36389438c96661fe520aa501f45700b917f74c332c0f466125c10a3b2d66364870b65e763523ba33f61aaf03fb740617cf SHA512 c0e34c42b28034df086a50b8ddd795ab23f3d978d477f01b375c09ed709577d7b54acfefa3c414cb0b3ea002005a7e8b3f1cb6cd6349ec351209c8a956fe2b0b +DIST types-gdb-12.1.4.20240401.tar.gz 11710 BLAKE2B 63a0e6aa2bc738bf05c24a81d3f031dc5be0010a66c445a8bc485e6617b8d3bd2cc85894e5caf68e7dcc619e72e80ab0a0eb4b4fc0d5c90e50345e0658620aad SHA512 0a145da20e847da00a1fdfb29e56845878b67bb99f344e6059f86d1fc4d84a6b32f1d16eadd19616b9a7619b7f832fa41772beea1bd314678d337e2fc009afa4 diff --git a/dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild b/dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild new file mode 100644 index 0000000000000..bb9b717448e5f --- /dev/null +++ b/dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild @@ -0,0 +1,17 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Typing stubs for gdb" +HOMEPAGE="https://pypi.org/project/types-gdb/" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" From d8be2f7b0f04c3b71370c60106326db665a686fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 1 Apr 2024 05:49:06 +0200 Subject: [PATCH 04/14] dev-python/pytest-xprocess: Bump to 1.0.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/pytest-xprocess/Manifest | 1 + .../pytest-xprocess-1.0.1.ebuild | 27 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 dev-python/pytest-xprocess/pytest-xprocess-1.0.1.ebuild diff --git a/dev-python/pytest-xprocess/Manifest b/dev-python/pytest-xprocess/Manifest index 8fd9164f72ec3..5c24781f92c54 100644 --- a/dev-python/pytest-xprocess/Manifest +++ b/dev-python/pytest-xprocess/Manifest @@ -1 +1,2 @@ DIST pytest-xprocess-0.23.0.tar.gz 31350 BLAKE2B 71492aa1bbc438221c6ac2825bf2bd678a75c12e8b5a8654d333c1ba2ad5c66b21f85e572998f0e5f1835097483a4895942d664ef7d8f078cad7923a9ee2e962 SHA512 97aa2a8ba0bcca62d53c0a0523696f6ae5fec5eae29e3e2cfe1a3ec8f14622c2c31f0802b2e65b55aa16778dd6ea82951e15af768c9d84cfd13aa2d427f94c9e +DIST pytest-xprocess-1.0.1.tar.gz 38665 BLAKE2B ddda66a3aed155f857d6f55c38ddb687e46cd5e0e8eefa0183fc853e884d6167d836f67045cf3aa8be7558fd8b56b98110bfd6b0e1a562f95428da124685d77f SHA512 4bf4545149e7cf99b51f0ba710b04d673664e5c93083d6848dbe5d0ecb7d948bb6180d0de5980a2d576381ed9f7a10085f57469f6ece93585fc451ac02441920 diff --git a/dev-python/pytest-xprocess/pytest-xprocess-1.0.1.ebuild b/dev-python/pytest-xprocess/pytest-xprocess-1.0.1.ebuild new file mode 100644 index 0000000000000..7ed4e7ad9828d --- /dev/null +++ b/dev-python/pytest-xprocess/pytest-xprocess-1.0.1.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{10..12} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Manage external processes across test runs" +HOMEPAGE=" + https://pypi.org/project/pytest-xprocess/ + https://github.com/pytest-dev/pytest-xprocess/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest From e686f42afb87ef04362e6c24968d5050e6bb5c91 Mon Sep 17 00:00:00 2001 From: Sebastian Parborg Date: Mon, 25 Mar 2024 16:08:41 +0100 Subject: [PATCH 05/14] git-r3.eclass: Fix fetching git lfs files at certain refs. Only prune when needed. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If a lfs files was changed between the checked out ref and the git head commit, it would fail to fetch them. Now correctly specify the ref for the lfs fetch as well to ensure that we can fetch the correct lfs files. Only prune when we have existing lfs files. For bigger repos with submodules, it will be quite slow to try to prune. So if there are no files to prune, don't attempt it. This also speeds up checkout when only a few of the checked out git repos are lfs repos. Signed-off-by: Sebastian Parborg Signed-off-by: Michał Górny --- eclass/git-r3.eclass | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass index de89fdc3a2236..a498bb8a5563e 100644 --- a/eclass/git-r3.eclass +++ b/eclass/git-r3.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: git-r3.eclass @@ -813,13 +813,17 @@ git-r3_fetch() { if [[ ${EGIT_LFS} ]]; then # Fetch the LFS files from the current ref (if any) - local lfs_fetch_command=( git lfs fetch "${r}" ) + local lfs_fetch_command=( git lfs fetch "${r}" "${remote_ref}" ) case "${EGIT_LFS_CLONE_TYPE}" in shallow) - lfs_fetch_command+=( - --prune - ) + if [[ -d ${GIT_DIR}/lfs/objects ]] && ! rmdir "${GIT_DIR}"/lfs/objects 2> /dev/null; then + # Only prune if the lfs directory is not empty. + # The prune command can take a very long time to resolve even if there are no lfs objects. + lfs_fetch_command+=( + --prune + ) + fi ;; single) ;; From 838b52b4a3e44aaa2b86db7c68803d0018cfba98 Mon Sep 17 00:00:00 2001 From: Sebastian Parborg Date: Mon, 25 Mar 2024 16:15:17 +0100 Subject: [PATCH 06/14] git-r3.eclass: Add the ability to checkout ignored submodules. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If the submodules is specified in EGIT_SUBMODULES then it will ignore the "none" check. Signed-off-by: Sebastian Parborg Closes: https://github.com/gentoo/gentoo/pull/35911 Signed-off-by: Michał Górny --- eclass/git-r3.eclass | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass index a498bb8a5563e..565f6ada8382c 100644 --- a/eclass/git-r3.eclass +++ b/eclass/git-r3.eclass @@ -429,6 +429,7 @@ _git-r3_set_submodules() { l=${l#submodule.} local subname=${l%%.url=*} + local is_manually_specified= # filter out on EGIT_SUBMODULES if declare -p EGIT_SUBMODULES &>/dev/null; then @@ -449,13 +450,14 @@ _git-r3_set_submodules() { continue else einfo "Using submodule ${parent_path}${subname}" + is_manually_specified=1 fi fi # skip modules that have 'update = none', bug #487262. local upd=$(echo "${data}" | git config -f /dev/fd/0 \ submodule."${subname}".update) - [[ ${upd} == none ]] && continue + [[ ${upd} == none && ! ${is_manually_specified} ]] && continue # https://github.com/git/git/blob/master/refs.c#L31 # we are more restrictive than git itself but that should not From d3a4df00a967d8358ab90480be77ca667e25f8c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 17:55:26 +0100 Subject: [PATCH 07/14] distutils-r1.eclass: Bump minimal dep versions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 9be9945955297..e4b17c433e5d7 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -230,7 +230,7 @@ _distutils_set_globals() { ;; hatchling) bdep+=' - >=dev-python/hatchling-1.17.0[${PYTHON_USEDEP}] + >=dev-python/hatchling-1.21.1[${PYTHON_USEDEP}] ' ;; jupyter) @@ -240,7 +240,7 @@ _distutils_set_globals() { ;; maturin) bdep+=' - >=dev-util/maturin-1.0.1[${PYTHON_USEDEP}] + >=dev-util/maturin-1.4.0[${PYTHON_USEDEP}] ' ;; no) @@ -249,12 +249,12 @@ _distutils_set_globals() { ;; meson-python) bdep+=' - >=dev-python/meson-python-0.13.1[${PYTHON_USEDEP}] + >=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}] ' ;; pbr) bdep+=' - >=dev-python/pbr-5.11.1[${PYTHON_USEDEP}] + >=dev-python/pbr-6.0.0[${PYTHON_USEDEP}] ' ;; pdm) @@ -264,27 +264,27 @@ _distutils_set_globals() { ;; pdm-backend) bdep+=' - >=dev-python/pdm-backend-2.1.0[${PYTHON_USEDEP}] + >=dev-python/pdm-backend-2.1.8[${PYTHON_USEDEP}] ' ;; poetry) bdep+=' - >=dev-python/poetry-core-1.6.1[${PYTHON_USEDEP}] + >=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}] ' ;; scikit-build-core) bdep+=' - >=dev-python/scikit-build-core-0.4.6[${PYTHON_USEDEP}] + >=dev-python/scikit-build-core-0.8.2[${PYTHON_USEDEP}] ' ;; setuptools) bdep+=' - >=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}] + >=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}] ' ;; sip) bdep+=' - >=dev-python/sip-6.7.9[${PYTHON_USEDEP}] + >=dev-python/sip-6.8.3[${PYTHON_USEDEP}] ' ;; standalone) @@ -299,7 +299,7 @@ _distutils_set_globals() { eqawarn "is enabled." fi else - local setuptools_dep='>=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}]' + local setuptools_dep='>=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}]' case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in no|manual) @@ -508,7 +508,7 @@ distutils_enable_sphinx() { _DISTUTILS_SPHINX_PLUGINS=( "${@}" ) local deps autodoc=1 d - deps=">=dev-python/sphinx-5.3.0[\${PYTHON_USEDEP}]" + deps=">=dev-python/sphinx-7.2.6[\${PYTHON_USEDEP}]" for d; do if [[ ${d} == --no-autodoc ]]; then autodoc= @@ -532,7 +532,7 @@ distutils_enable_sphinx() { use doc || return 0 local p - for p in ">=dev-python/sphinx-5.3.0" \ + for p in ">=dev-python/sphinx-7.2.6" \ "${_DISTUTILS_SPHINX_PLUGINS[@]}" do python_has_version "${p}[${PYTHON_USEDEP}]" || @@ -540,7 +540,7 @@ distutils_enable_sphinx() { done } else - deps=">=dev-python/sphinx-5.3.0" + deps=">=dev-python/sphinx-7.2.6" fi sphinx_compile_all() { @@ -621,7 +621,7 @@ distutils_enable_tests() { test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]' ;; pytest) - test_pkgs='>=dev-python/pytest-7.3.1[${PYTHON_USEDEP}]' + test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]' if [[ -n ${EPYTEST_TIMEOUT} ]]; then test_pkgs+=' dev-python/pytest-timeout[${PYTHON_USEDEP}]' fi From 715da0fdbbe67cf6952831af4cf04d86d6d8b78b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 18:01:04 +0100 Subject: [PATCH 08/14] distutils-r1.eclass: Run pdm.pep517.api via pdm-backend MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index e4b17c433e5d7..16d97501012be 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -124,8 +124,6 @@ esac # # - pbr - pbr backend # -# - pdm - pdm.pep517 backend -# # - pdm-backend - pdm.backend backend # # - poetry - poetry-core backend @@ -257,11 +255,6 @@ _distutils_set_globals() { >=dev-python/pbr-6.0.0[${PYTHON_USEDEP}] ' ;; - pdm) - bdep+=' - >=dev-python/pdm-pep517-1.1.4[${PYTHON_USEDEP}] - ' - ;; pdm-backend) bdep+=' >=dev-python/pdm-backend-2.1.8[${PYTHON_USEDEP}] @@ -1002,12 +995,6 @@ _distutils-r1_print_package_versions() { dev-python/wheel ) ;; - pdm) - packages+=( - dev-python/pdm-pep517 - dev-python/setuptools - ) - ;; pdm-backend) packages+=( dev-python/pdm-backend @@ -1214,12 +1201,9 @@ _distutils-r1_backend_to_key() { pbr.build) echo pbr ;; - pdm.backend) + pdm.backend|pdm.pep517.api) echo pdm-backend ;; - pdm.pep517.api) - echo pdm - ;; poetry.core.masonry.api|poetry.masonry.api) echo poetry ;; @@ -1280,6 +1264,9 @@ _distutils-r1_get_backend() { flit.buildapi) new_backend=flit_core.buildapi ;; + pdm.pep517.api) + new_backend=pdm.backend + ;; poetry.masonry.api) new_backend=poetry.core.masonry.api ;; From 095b98f29e55a63eab429ab71af6338b18d1d928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 18:01:37 +0100 Subject: [PATCH 09/14] dev-python/jsonref: Use pdm-backend MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/jsonref/jsonref-1.1.0.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev-python/jsonref/jsonref-1.1.0.ebuild b/dev-python/jsonref/jsonref-1.1.0.ebuild index 59041a7158cf4..6233424f0523f 100644 --- a/dev-python/jsonref/jsonref-1.1.0.ebuild +++ b/dev-python/jsonref/jsonref-1.1.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -DISTUTILS_USE_PEP517=pdm +DISTUTILS_USE_PEP517=pdm-backend PYTHON_COMPAT=( python3_{10..12} ) inherit distutils-r1 From 1423ac82bf7a4ae558a0eb637b46a183235d912e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 18:04:30 +0100 Subject: [PATCH 10/14] distutils-r1.eclass: Remove nosetests support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 8 -------- 1 file changed, 8 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 16d97501012be..44553f8da6f3a 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -572,8 +572,6 @@ distutils_enable_sphinx() { # with the specified test runner. Also copies the current value # of RDEPEND to test?-BDEPEND. The test-runner argument must be one of: # -# - nose: nosetests (dev-python/nose) -# # - pytest: dev-python/pytest # # - setup.py: setup.py test (no deps included) @@ -610,9 +608,6 @@ distutils_enable_tests() { local test_deps=${RDEPEND} local test_pkgs case ${1} in - nose) - test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]' - ;; pytest) test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]' if [[ -n ${EPYTEST_TIMEOUT} ]]; then @@ -1594,9 +1589,6 @@ distutils-r1_python_test() { fi case ${_DISTUTILS_TEST_RUNNER} in - nose) - "${EPYTHON}" -m nose -v "${@}" - ;; pytest) epytest ;; From 380a5cbd2745ddfea53724246bf3b98976982064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 19:44:50 +0100 Subject: [PATCH 11/14] distutils-r1.eclass: Refactor `distutils_enable_tests pytest` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Refactor `distutils_enable_tests pytest` to move `test_pkgs` logic straight into pytest block, as it is not used by any other variant anymore. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 44553f8da6f3a..a1617999a037b 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -606,16 +606,23 @@ distutils_enable_tests() { [[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner" local test_deps=${RDEPEND} - local test_pkgs case ${1} in pytest) - test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]' + local test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]' if [[ -n ${EPYTEST_TIMEOUT} ]]; then test_pkgs+=' dev-python/pytest-timeout[${PYTHON_USEDEP}]' fi if [[ ${EPYTEST_XDIST} ]]; then test_pkgs+=' dev-python/pytest-xdist[${PYTHON_USEDEP}]' fi + + if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then + test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}" + else + test_deps+=" $(python_gen_cond_dep " + ${test_pkgs} + ")" + fi ;; setup.py) ;; @@ -634,15 +641,6 @@ distutils_enable_tests() { _DISTUTILS_TEST_RUNNER=${1} python_test() { distutils-r1_python_test; } - if [[ -n ${test_pkgs} ]]; then - if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then - test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}" - else - test_deps+=" $(python_gen_cond_dep " - ${test_pkgs} - ")" - fi - fi if [[ -n ${test_deps} ]]; then IUSE+=" test" RESTRICT+=" !test? ( test )" From 0168114f8343530be3e879828eb6fa559aa8f936 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 19:47:39 +0100 Subject: [PATCH 12/14] distutils-r1.eclass: Fix `det unittest` with 3.12 only MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes: https://bugs.gentoo.org/926964 Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index a1617999a037b..22b28e9158595 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -628,11 +628,11 @@ distutils_enable_tests() { ;; unittest) # unittest-or-fail is needed in py<3.12 - test_deps+=" - $(python_gen_cond_dep ' + local test_pkgs="$(python_gen_cond_dep ' dev-python/unittest-or-fail[${PYTHON_USEDEP}] - ' 3.10 3.11) - " + ' 3.10 3.11 + )" + [[ -n ${test_pkgs} ]] && test_deps+=" ${test_pkgs}" ;; *) die "${FUNCNAME}: unsupported argument: ${1}" From 73c49f3c00415dee99407dabba8d3b22895c9d25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 25 Mar 2024 20:01:52 +0100 Subject: [PATCH 13/14] distutils-r1.eclass: Remove more junk from .dist-info MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes: https://bugs.gentoo.org/927818 Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 22b28e9158595..7a314673a90bc 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -1314,14 +1314,23 @@ distutils_wheel_install() { printf '%s\n' "${cmd[*]}" "${cmd[@]}" || die "Wheel install failed" - # remove installed licenses + # remove installed licenses and other junk find "${root}$(python_get_sitedir)" -depth \ - \( -path '*.dist-info/COPYING*' \ - -o -path '*.dist-info/LICENSE*' \ + \( -ipath '*.dist-info/AUTHORS*' \ + -o -ipath '*.dist-info/CHANGELOG*' \ + -o -ipath '*.dist-info/CODE_OF_CONDUCT*' \ + -o -ipath '*.dist-info/COPYING*' \ + -o -ipath '*.dist-info/*LICEN[CS]E*' \ + -o -ipath '*.dist-info/NOTICE*' \ + -o -ipath '*.dist-info/*Apache*' \ + -o -ipath '*.dist-info/*GPL*' \ + -o -ipath '*.dist-info/*MIT*' \ + -o -path '*.dist-info/RECORD' \ -o -path '*.dist-info/license_files/*' \ -o -path '*.dist-info/license_files' \ -o -path '*.dist-info/licenses/*' \ -o -path '*.dist-info/licenses' \ + -o -path '*.dist-info/zip-safe' \ \) -delete || die } From 1f35acddca01e91d4477f3d0340c47329517f474 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Fri, 29 Mar 2024 16:53:11 +0100 Subject: [PATCH 14/14] python-utils-r1.eclass: epytest, error out on missing async plugin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Explicitly error out if epytest is run without an appropriate async plugin, and the test suite contains async tests. Currently, these tests are skipped with a warning but that is usually a mistake, and one can easily miss it when pytest-asyncio or a similar plugin is installed on the test system. However, a missing dependency can result in the tests being skipped afterwards on the tinderbox. Signed-off-by: Michał Górny Closes: https://github.com/gentoo/gentoo/pull/35913 Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index caa39813feec7..bbf7513994762 100644 --- a/eclass/python-utils-r1.eclass +++ b/eclass/python-utils-r1.eclass @@ -1349,6 +1349,9 @@ epytest() { # override filterwarnings=error, we do not really want -Werror # for end users, as it tends to fail on new warnings from deps -Wdefault + # however, do error out if the package failed to load + # an appropriate async plugin + -Werror::pytest.PytestUnhandledCoroutineWarning # override color output "--color=${color}" # count is more precise when we're dealing with a large number