diff --git a/dev-python/textx/Manifest b/dev-python/textx/Manifest index 64a9d96ccaba4..03bc5ce7dba31 100644 --- a/dev-python/textx/Manifest +++ b/dev-python/textx/Manifest @@ -1 +1,2 @@ DIST textX-4.2.3.gh.tar.gz 2137561 BLAKE2B 952a86a32ce3ca4ac8b17ee6995545bdb2a36236bf19050ebd4a49af1ca8fca149e7c56537135a9261a096f5c86eaff4fd7db0a500de2ada0a0bb933961c8457 SHA512 e66421bc197a706ca8e3e48ab933904671ce12b32d7802cc3e4fa2005482927d3131162c72b4a4bb42c5af124289bfd7bf27e8ba42cd14901233978fbfd5c1d9 +DIST textX-4.3.0.gh.tar.gz 2228585 BLAKE2B 5693a3304d16c45d5048999fffb3a4954ca7102b79e23f4c8186bcca5a7629931db61ca666be6cb022da05e8299a756656f7aa58e0ef0ac72a5c00a605bbf2dc SHA512 602ffed8be2b333eb9cb53d4af4e03dfdac615d5491d3c146a90d7fcada1109f0384af5f98f99656f6d8c6ca1022e1f8d7d735cfaa30690509b88f7075317031 diff --git a/dev-python/textx/textx-4.3.0.ebuild b/dev-python/textx/textx-4.3.0.ebuild new file mode 100644 index 0000000000000..b0c4248337302 --- /dev/null +++ b/dev-python/textx/textx-4.3.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 + +MY_P=textX-${PV} +DESCRIPTION="Meta-language for DSL implementation inspired by Xtext" +HOMEPAGE=" + https://pypi.org/project/textX/ + https://github.com/textX/textX/ +" +SRC_URI=" + https://github.com/textX/textX/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/arpeggio-2.0.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/html5lib[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + cp -a "${BUILD_DIR}"/{install,test} || die + local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH} + + # Update the shebang + sed -e "s:install/usr/bin/${EPYTHON}:test/usr/bin/${EPYTHON}:" \ + -i "${BUILD_DIR}"/test/usr/bin/textx || die + + # Install necessary plugins + local plugins=( + tests/functional/subcommands/example_project + tests/functional/registration/projects/* + ) + local p + for p in "${plugins[@]}"; do + pushd "${p}" >/dev/null || die + distutils_pep517_install "${BUILD_DIR}"/test + popd >/dev/null || die + done + + epytest tests/functional +}