commit: ab43a2e6f2e8a47d270f542edd7d8d6c22d15ccf
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 3 17:13:56 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Jun 3 17:13:56 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab43a2e6
dev-python/hatchling: add 1.17.1
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
dev-python/hatchling/Manifest | 1 +
dev-python/hatchling/hatchling-1.17.1.ebuild | 84 ++++++++++++++++++++++++++++
2 files changed, 85 insertions(+)
diff --git a/dev-python/hatchling/Manifest b/dev-python/hatchling/Manifest
index f4faeeeaabd7..d622c78b317f 100644
--- a/dev-python/hatchling/Manifest
+++ b/dev-python/hatchling/Manifest
@@ -1 +1,2 @@
DIST hatch-hatchling-v1.17.0.gh.tar.gz 383013 BLAKE2B
469d0d3e017d2dadcfdf9e2b4975f9e484739737a5c2d8fca9c55a4e519cf2e12b1ee44b3e26160476b3b990b15219a7075e692b58dcc4104b76b57395d8b0d1
SHA512
3649f2932c9963184deda5aac91726dad30ed88db2230377dc303714e0cdfd148b2fefc174ddeffff5cd95033bd984a35e3d297da02c29e4bfb7a6fb42f12dbd
+DIST hatch-hatchling-v1.17.1.gh.tar.gz 383218 BLAKE2B
be31190492af5904aa9d8d10fa7f204d664599fc9543a6c3b5a3781bdc68a3f5f3fd2eabbd21e34e21ed8367c8253ed280b6aa5c6387268534799de4b75efa35
SHA512
2a9b163d10834b021f6ebd35484ebff01f22a7addbb2c472ec21dcc7a389e617d955935820bd7247d33fe79c4009e0e368a898b29fa0a3c7fff232f3bd7c424e
diff --git a/dev-python/hatchling/hatchling-1.17.1.ebuild
b/dev-python/hatchling/hatchling-1.17.1.ebuild
new file mode 100644
index 000000000000..e4b0d169c421
--- /dev/null
+++ b/dev-python/hatchling/hatchling-1.17.1.ebuild
@@ -0,0 +1,84 @@
+# Copyright 2022-2023 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 ~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
+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.8 3.9 3.10)
+ dev-python/trove-classifiers[${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_app.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}"
+ # 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
+}