summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2026-01-29 05:17:17 +0100
committerMichał Górny <mgorny@gentoo.org>2026-01-29 05:38:51 +0100
commit07c3cb16da1e957b4e8d071a05e9cb7b676d6903 (patch)
treef01fe1ad1f8381d6f7a9da191dfd9b63b44a4bd1 /dev-python
parentfc35dc44ac18dfbc984da26df417ec5e38fefada (diff)
downloadgentoo-07c3cb16da1e957b4e8d071a05e9cb7b676d6903.tar.gz
gentoo-07c3cb16da1e957b4e8d071a05e9cb7b676d6903.tar.bz2
gentoo-07c3cb16da1e957b4e8d071a05e9cb7b676d6903.zip
dev-python/absl-py: Bump to 2.4.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/absl-py/Manifest1
-rw-r--r--dev-python/absl-py/absl-py-2.4.0.ebuild85
2 files changed, 86 insertions, 0 deletions
diff --git a/dev-python/absl-py/Manifest b/dev-python/absl-py/Manifest
index 727d3c5648b9..bede6b627273 100644
--- a/dev-python/absl-py/Manifest
+++ b/dev-python/absl-py/Manifest
@@ -1 +1,2 @@
DIST abseil-py-2.3.1.gh.tar.gz 239285 BLAKE2B 5b9a0449bf07b3d46a3f8e0c2ce1deefd076bf373d0b2d07c1f35dfae73e2fe34d5436b7c63e4122f09f86df75c4d0cfbfd3339c7dae4798a39dc462b8a48516 SHA512 926b9ddb17342f74e05142fa353331c6cc1699302dadad5b7ec8c68813f2b65becb0743b299f26cc1899fc688e9f70f1d2ed4919a76539c940e963a38feba3ba
+DIST abseil-py-2.4.0.gh.tar.gz 241073 BLAKE2B bd1d2d0771f64be4eedfa8475dae16cb4590cda5fe66edc8ccfcb395b93cc9f95a561538d1002eccf5fb764c4c4e902ddfa5bf736a31cbaec1450f89105ba225 SHA512 26278e1b64e803f3a171cb7cbe4e188df0d1e27c69042b932a97160b77778e72af518b62564f5682b0a6d506ec74f8491015e37dcd1b1e1a305ac19b1505a935
diff --git a/dev-python/absl-py/absl-py-2.4.0.ebuild b/dev-python/absl-py/absl-py-2.4.0.ebuild
new file mode 100644
index 000000000000..c362a278bce5
--- /dev/null
+++ b/dev-python/absl-py/absl-py-2.4.0.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{11..14} )
+
+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="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ distutils-r1_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_sharding_test_helper_no_tests.py:absl/testing/tests/absltest_sharding_test_helper_no_tests
+ absl/testing/tests/absltest_test_helper.py:absl/testing/tests/absltest_test_helper
+ absl/testing/tests/absltest_test_helper_skipped.py:absl/testing/tests/absltest_test_helper_skipped
+ 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 -e 's:\(app_test_helper\)\.py:\1_pure_python:' \
+ -i absl/tests/app_test.py || die
+ sed -e 's:\(logging_functional_test_helper\)\.py:\1:' \
+ -i absl/logging/tests/logging_functional_test.py || die
+}
+
+python_test() {
+ local -x PYTHONPATH=.
+ local -x COLUMNS=80
+ local fails=0
+ while read -r -d '' x; do
+ # This test is plain broken, as it assumes shutil.get_terminal_size()
+ # will fail and a broken mock will take over.
+ [[ ${x} == *flags_formatting_test* ]] && continue
+ 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
+}