diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest index 240c220ac3..8deef9cdd8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/Manifest @@ -1,4 +1,2 @@ -DIST hatch-hatchling-v1.22.5.gh.tar.gz 782757 BLAKE2B 3431ef7c4e5f0754e51507e29d88ed0277b530d220eb75bdeab459d88172ba51de3cf2456074fa88483cc89e72726f3e147b97e995f9ccaf699b6c2699776a8c SHA512 d4e77872e34e3aba3fce286f911861b795005c37550a2ca72a83216cea67d53be891afc8861b11582c66d38748f9c8d4980548d216c0fb21b2b4e1cadc314e58 -DIST hatch-hatchling-v1.23.0.gh.tar.gz 802345 BLAKE2B 571ae18bda737acf05bd830c4d835b2c785a595844cefbed030383e9ede166b0cd8bba2d7a6e0a4c7b504be825fbca4fa89861e9ae265e9a24bc756025da8d07 SHA512 ed504577d856e42b46ab861972cfb1c47589ae85887c2fc0aa78ded7a2f1cc8eaef796b9331d4ff853a86b6d808080b15d11943775c600c5d10b191ae65cb400 -DIST hatch-hatchling-v1.24.1.gh.tar.gz 803276 BLAKE2B 61966dbc170ef2b130ae49f78e9c99f81eedc69f6d7f30b28c48be8a2d6aa17f128ca08adc3740c3dead0da30581208b967a3b8e02fd5d3f3f46ab9be1813460 SHA512 47c6f93072f82b15c56eb61b342cde44bb34cc23b89ac426120215ae71ea956380a1a66d12a70a11088df921c0df31a448bb40953e2e3bb32c74ed34a94b9640 DIST hatch-hatchling-v1.24.2.gh.tar.gz 1054297 BLAKE2B b2da7dc3f3d58998b57d6ee625a2b7e890afc078c0d8f6cb9c332480df561090bb8bc255e3e60d5d25fa55001869429f822014891fe1cec0098b61fbe02efe52 SHA512 e83f57089707a267685c9cac7f29cd5862adec62f6346097aa62bd5b3b9f7222621b2ea71004dd52f62798dab71bcf05c33a2c43dbe39d1bbc5f4a4f99f28c40 +DIST hatch-hatchling-v1.25.0.gh.tar.gz 5276942 BLAKE2B 76de1a824086889370a996945ad031179132dc74f4ef8a79da29913fc587c85210db49e89f400f4db2533d6706452cd4c67b87ff4ca97be0c3dc1879cf2bd77e SHA512 54f4e5f9383e846a9192e47b61f5147d4c48f20c41df752898dc5e22dd0bf196ea60fe4866dd04dc09c763aac67f7c047c40d978398e910878eb772af887d607 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.22.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.22.5-r1.ebuild deleted file mode 100644 index 8fd32731e8..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.22.5-r1.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 2022-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..12} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) - -inherit distutils-r1 - -TAG=${P/-/-v} -MY_P=hatch-${TAG} -DESCRIPTION="Modern, extensible Python build backend" -HOMEPAGE=" - https://pypi.org/project/hatchling/ - https://github.com/pypa/hatch/ -" -SRC_URI=" - https://github.com/pypa/hatch/archive/${TAG}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P}/backend - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" - -# deps are listed in backend/src/hatchling/ouroboros.py -# editables are optional but required for editable installs -RDEPEND=" - >=dev-python/editables-0.3[${PYTHON_USEDEP}] - >=dev-python/packaging-21.3[${PYTHON_USEDEP}] - >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}] - >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}] - ' 3.10) -" -# always depend on the newest version available, at least until upstream -# stops treating unknown classifiers as a fatal error -# https://github.com/pypa/hatch/issues/1368 -RDEPEND+=" - >=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}] -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/atomicwrites[${PYTHON_USEDEP}] - dev-python/click[${PYTHON_USEDEP}] - dev-python/httpx[${PYTHON_USEDEP}] - dev-python/platformdirs[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/rich[${PYTHON_USEDEP}] - dev-python/tomli-w[${PYTHON_USEDEP}] - dev-python/virtualenv[${PYTHON_USEDEP}] - ' "${PYTHON_TESTED[@]}") - ) -" - -distutils_enable_tests pytest - -python_test() { - if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then - einfo "Skipping tests on ${EPYTHON}" - return - fi - - local -x EPYTEST_DESELECT=( - # these run pip to install stuff - tests/backend/dep/test_core.py::test_dependency_found - tests/backend/dep/test_core.py::test_extra_met - tests/backend/dep/test_core.py::test_extra_no_dependencies - tests/backend/dep/test_core.py::test_extra_unmet - tests/backend/dep/test_core.py::test_unknown_extra - tests/backend/dep/test_core.py::test_version_unmet - # broken if CARGO is set - tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo - ) - - # top-level "tests" directory contains tests both for hatch - # and hatchling - cd "${WORKDIR}/${MY_P}" || die - local -x PYTHONPATH="src:${PYTHONPATH}" - # sigh; standalone test suites are overrated, right? - echo "__version__ = '${PV}'" > src/hatch/_version.py || die - # tests mock cargo subprocess call but the backend raises if CARGO - # is not set and shutil.which() can't find it - local -x CARGO=cargo - epytest tests/backend -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.1.ebuild deleted file mode 100644 index 0f7cc99b5b..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.1.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 2022-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..12} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) - -inherit distutils-r1 - -TAG=${P/-/-v} -MY_P=hatch-${TAG} -DESCRIPTION="Modern, extensible Python build backend" -HOMEPAGE=" - https://pypi.org/project/hatchling/ - https://github.com/pypa/hatch/ -" -SRC_URI=" - https://github.com/pypa/hatch/archive/${TAG}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P}/backend - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" - -# deps are listed in backend/src/hatchling/ouroboros.py -# editables are optional but required for editable installs -RDEPEND=" - >=dev-python/editables-0.3[${PYTHON_USEDEP}] - >=dev-python/packaging-23.2[${PYTHON_USEDEP}] - >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}] - >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}] - ' 3.10) -" -# always depend on the newest version available, at least until upstream -# stops treating unknown classifiers as a fatal error -# https://github.com/pypa/hatch/issues/1368 -RDEPEND+=" - >=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}] -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/atomicwrites[${PYTHON_USEDEP}] - dev-python/click[${PYTHON_USEDEP}] - dev-python/httpx[${PYTHON_USEDEP}] - dev-python/platformdirs[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/rich[${PYTHON_USEDEP}] - dev-python/tomli-w[${PYTHON_USEDEP}] - dev-python/virtualenv[${PYTHON_USEDEP}] - ' "${PYTHON_TESTED[@]}") - ) -" - -distutils_enable_tests pytest - -python_test() { - if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then - einfo "Skipping tests on ${EPYTHON}" - return - fi - - local -x EPYTEST_DESELECT=( - # these run pip to install stuff - tests/backend/dep/test_core.py::test_dependency_found - tests/backend/dep/test_core.py::test_extra_met - tests/backend/dep/test_core.py::test_extra_no_dependencies - tests/backend/dep/test_core.py::test_extra_unmet - tests/backend/dep/test_core.py::test_unknown_extra - tests/backend/dep/test_core.py::test_version_unmet - # broken if CARGO is set - tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo - ) - - # top-level "tests" directory contains tests both for hatch - # and hatchling - cd "${WORKDIR}/${MY_P}" || die - local -x PYTHONPATH="src:${PYTHONPATH}" - # sigh; standalone test suites are overrated, right? - echo "__version__ = '${PV}'" > src/hatch/_version.py || die - # tests mock cargo subprocess call but the backend raises if CARGO - # is not set and shutil.which() can't find it - local -x CARGO=cargo - epytest tests/backend -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.2.ebuild index 0f7cc99b5b..4d265ef658 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.24.2.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..12} ) +PYTHON_TESTED=( pypy3 python3_{10..13} ) PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) inherit distutils-r1 @@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}/backend LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" # deps are listed in backend/src/hatchling/ouroboros.py # editables are optional but required for editable installs @@ -61,6 +61,31 @@ BDEPEND=" distutils_enable_tests pytest +src_test() { + # top-level "tests" directory contains tests both for hatch + # and hatchling + cd "${WORKDIR}/${MY_P}" || die + + # sigh; standalone test suites are overrated, right? + echo "__version__ = '${PV}'" > src/hatch/_version.py || die + local -x PYTHONPATH="src:${PYTHONPATH}" + + # do not require uv for portability, sigh + mkdir "${T}/bin" || die + cat > "${T}/bin/uv" <<-EOF || die + #!/bin/sh + exit 127 + EOF + chmod +x "${T}/bin/uv" || die + local -x PATH=${T}/bin:${PATH} + + # tests mock cargo subprocess call but the backend raises if CARGO + # is not set and shutil.which() can't find it + local -x CARGO=cargo + + distutils-r1_src_test +} + python_test() { if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then einfo "Skipping tests on ${EPYTHON}" @@ -68,25 +93,13 @@ python_test() { fi local -x EPYTEST_DESELECT=( - # these run pip to install stuff - tests/backend/dep/test_core.py::test_dependency_found - tests/backend/dep/test_core.py::test_extra_met - tests/backend/dep/test_core.py::test_extra_no_dependencies - tests/backend/dep/test_core.py::test_extra_unmet - tests/backend/dep/test_core.py::test_unknown_extra - tests/backend/dep/test_core.py::test_version_unmet + # most of these run uv to install stuff + # the few remaining tests aren't worth running + tests/backend/dep/test_core.py # broken if CARGO is set tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo ) - # top-level "tests" directory contains tests both for hatch - # and hatchling - cd "${WORKDIR}/${MY_P}" || die - local -x PYTHONPATH="src:${PYTHONPATH}" - # sigh; standalone test suites are overrated, right? - echo "__version__ = '${PV}'" > src/hatch/_version.py || die - # tests mock cargo subprocess call but the backend raises if CARGO - # is not set and shutil.which() can't find it - local -x CARGO=cargo - epytest tests/backend + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock tests/backend } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.23.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.25.0.ebuild similarity index 83% rename from sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.23.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.25.0.ebuild index 0f7cc99b5b..33191ee7e5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.23.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/hatchling/hatchling-1.25.0.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..12} ) +PYTHON_TESTED=( pypy3 python3_{10..13} ) PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) inherit distutils-r1 @@ -61,6 +61,31 @@ BDEPEND=" distutils_enable_tests pytest +src_test() { + # top-level "tests" directory contains tests both for hatch + # and hatchling + cd "${WORKDIR}/${MY_P}" || die + + # sigh; standalone test suites are overrated, right? + echo "__version__ = '${PV}'" > src/hatch/_version.py || die + local -x PYTHONPATH="src:${PYTHONPATH}" + + # do not require uv for portability, sigh + mkdir "${T}/bin" || die + cat > "${T}/bin/uv" <<-EOF || die + #!/bin/sh + exit 127 + EOF + chmod +x "${T}/bin/uv" || die + local -x PATH=${T}/bin:${PATH} + + # tests mock cargo subprocess call but the backend raises if CARGO + # is not set and shutil.which() can't find it + local -x CARGO=cargo + + distutils-r1_src_test +} + python_test() { if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then einfo "Skipping tests on ${EPYTHON}" @@ -68,25 +93,13 @@ python_test() { fi local -x EPYTEST_DESELECT=( - # these run pip to install stuff - tests/backend/dep/test_core.py::test_dependency_found - tests/backend/dep/test_core.py::test_extra_met - tests/backend/dep/test_core.py::test_extra_no_dependencies - tests/backend/dep/test_core.py::test_extra_unmet - tests/backend/dep/test_core.py::test_unknown_extra - tests/backend/dep/test_core.py::test_version_unmet + # most of these run uv to install stuff + # the few remaining tests aren't worth running + tests/backend/dep/test_core.py # broken if CARGO is set tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo ) - # top-level "tests" directory contains tests both for hatch - # and hatchling - cd "${WORKDIR}/${MY_P}" || die - local -x PYTHONPATH="src:${PYTHONPATH}" - # sigh; standalone test suites are overrated, right? - echo "__version__ = '${PV}'" > src/hatch/_version.py || die - # tests mock cargo subprocess call but the backend raises if CARGO - # is not set and shutil.which() can't find it - local -x CARGO=cargo - epytest tests/backend + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock tests/backend }