commit:     22a639111ab8365d4770cd9c583c728d7e1bb5b7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Jun  2 06:28:33 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jun  2 06:42:30 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=22a63911

dev-python/absl-py: Bump to 1.1.0, enable tests

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/absl-py/Manifest             |  1 +
 dev-python/absl-py/absl-py-1.1.0.ebuild | 79 +++++++++++++++++++++++++++++++++
 2 files changed, 80 insertions(+)

diff --git a/dev-python/absl-py/Manifest b/dev-python/absl-py/Manifest
index 890e194815c1..32415200b530 100644
--- a/dev-python/absl-py/Manifest
+++ b/dev-python/absl-py/Manifest
@@ -1 +1,2 @@
+DIST abseil-py-1.1.0.gh.tar.gz 219274 BLAKE2B 
96848e3a738c295b3396b2eb45a6a2428f02ca7d325f24629d7ef8b87bdb19c8c2a33c95dcd716e286034f24d669bea27dc5470b92fcb3df437266e98a08ae6c
 SHA512 
75e017399d28e38a5229b95b6372ad05b9d6067c3fef1cf7a64b5123399377025654dafaf6a1debc5664440efa8d26b76610629ad440e472faefd4f99b3bc685
 DIST absl-py-1.0.0.tar.gz 223739 BLAKE2B 
958b95ac5d26aa9e3c2efc046b20eb6a143e81de3cde6f9e2478ec3abf4c0a2619db50271d4f0a57034b81dc1e6e09d58d18a4254d4551fa8a644d1558eba94f
 SHA512 
41222ccd8e2eb65a266c88a047acae4c53cb00eb4f5678a11ebcf2b73e071bc4355f208b13697a0b9b71c4c96aa7d13eec9c5a90177f01c3cbabd0688a162aeb

diff --git a/dev-python/absl-py/absl-py-1.1.0.ebuild 
b/dev-python/absl-py/absl-py-1.1.0.ebuild
new file mode 100644
index 000000000000..562ee9e29750
--- /dev/null
+++ b/dev-python/absl-py/absl-py-1.1.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit distutils-r1
+
+MY_P=abseil-py-${PV}
+DESCRIPTION="Abseil Python Common Libraries"
+HOMEPAGE="
+       https://github.com/abseil/abseil-py/
+       https://pypi.org/project/absl-py/
+"
+SRC_URI="
+       https://github.com/abseil/abseil-py/archive/v${PV}.tar.gz
+               -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+       # what a nightmare... well, we could have called bazel but that would
+       # even worse
+       local helpers=(
+               
absl/flags/tests/argparse_flags_test_helper.py:absl/flags/tests/argparse_flags_test_helper
+               
absl/logging/tests/logging_functional_test_helper.py:absl/logging/tests/logging_functional_test_helper
+               
absl/testing/tests/absltest_fail_fast_test_helper.py:absl/testing/tests/absltest_fail_fast_test_helper
+               
absl/testing/tests/absltest_filtering_test_helper.py:absl/testing/tests/absltest_filtering_test_helper
+               
absl/testing/tests/absltest_randomization_testcase.py:absl/testing/tests/absltest_randomization_testcase
+               
absl/testing/tests/absltest_sharding_test_helper.py:absl/testing/tests/absltest_sharding_test_helper
+               
absl/testing/tests/absltest_test_helper.py:absl/testing/tests/absltest_test_helper
+               
absl/testing/tests/xml_reporter_helper_test.py:absl/testing/tests/xml_reporter_helper_test
+               
absl/tests/app_test_helper.py:absl/tests/app_test_helper_pure_python
+       )
+
+       local x
+       for x in "${helpers[@]}"; do
+               local script=${x%:*}
+               local sym=${x#*:}
+               sed -i -e "1i#!/usr/bin/env python" "${script}" || die
+               chmod +x "${script}" || die
+               ln -s "${script##*/}" "${sym}" || die
+       done
+
+       # i don't wanna know how these pass for upstream with wrong helper names
+       sed -i -e 's:\(app_test_helper\)\.py:\1_pure_python:' \
+               absl/tests/app_test.py || die
+       sed -i -e 's:\(logging_functional_test_helper\)\.py:\1:' \
+               absl/logging/tests/logging_functional_test.py || die
+
+       distutils-r1_src_prepare
+}
+
+python_test() {
+       local -x PYTHONPATH=.
+       local fails=0
+       while read -r -d '' x; do
+               ebegin "${x}"
+               "${EPYTHON}" "${x}"
+               eend ${?} || : "$(( fails += 1 ))"
+       done < <(find -name '*_test.py' -print0)
+
+       [[ ${fails} -ne 0 ]] && die "${fails} tests failed on ${EPYTHON}"
+
+       # we actually need to clean this up manually before running the test
+       # suite again...
+       chmod -R u+rwX "${T}"/absl_testing || die
+       rm -rf "${T}"/absl_testing || die
+}

Reply via email to