commit:     41dbf11b8f717b76e1e8f1e1cbb0526f96dc1e7f
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 10 01:20:33 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jun 10 12:36:22 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41dbf11b

dev-python/grpcio: Bump to 1.73.0

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

 dev-python/grpcio/Manifest             |   3 +
 dev-python/grpcio/grpcio-1.73.0.ebuild | 120 +++++++++++++++++++++++++++++++++
 2 files changed, 123 insertions(+)

diff --git a/dev-python/grpcio/Manifest b/dev-python/grpcio/Manifest
index e86b3bdd8203..3ca1324af6f9 100644
--- a/dev-python/grpcio/Manifest
+++ b/dev-python/grpcio/Manifest
@@ -1,6 +1,9 @@
 DIST grpc-1.72.0.gh.tar.gz 14730317 BLAKE2B 
f4b16fcef3efa086cce043197e0d7bb6dc858074c329c3c993f33a5a65db72d8cf8106bc3d96cf72a12cf3040405e91f1d2fda2ac64b558ed00b18d6aef5821a
 SHA512 
e56c37f6b2370426df63e700d9cf227864812911ae071f1c34626d0c336d6b6b42ca5d7cdc6d5d04744009aca6be8769fe9b0f15992f3aa2112e6166ed326f6a
 DIST grpc-1.72.1.gh.tar.gz 14732943 BLAKE2B 
fe72ef9e39b798bb0858127ebf2c873c1f4a44ad44f0dda1c2250a913496a0d147c2f67b08b51298cd1063463f62f268e49cbe788bddad051b25f95859b79cab
 SHA512 
6351c52bf0116653ab67f5ea7b4ba7b048c3663fc85acf9fb91a17f1c5940346dfe125d3397ca71d8c2de3076a67a1eea1aad0f979d2896d6c486a30ec5ea931
+DIST grpc-1.73.0.gh.tar.gz 14873144 BLAKE2B 
f4abf617cd97dc3a72cee410a09db29965a98e5db2a5bfa88312d643f78a760ffa2cb3dba803c18d79a2bbf24e826b6e2edb772b3e6b3f0c3be49d9f5ce0904d
 SHA512 
697a6fd38f396505ff207ff8f44fc69f4f88134fd53415926bb14860f1ef973e5257d58e9ca19c436ff7190568d36fb336d4a727c0819ac614240a4a75885bef
 DIST grpcio-1.72.0.tar.gz 12588545 BLAKE2B 
baa9d4432900fd3ec700b0cd1794ad129f7a3dfeb3cb98e235eb4f0d944838beb1f6e7b823e6c465c6cb770236f76ef42e01f2dc0dc51db0157e9ab01371eaea
 SHA512 
d1a178a58c0579bf1a975548b9d52bd312b03cacc13e056f5ed7d0da0aa4dc1391f293bac481d1ccf2d8c0940cbc47d862f5d272a1df8bafb4f6f8d8665bf843
 DIST grpcio-1.72.1.tar.gz 12584286 BLAKE2B 
f5418185b519cd08038ada4c28abe3a329dc52c31d15e6e5f0c6a38688cbfb47a94400f5f0d846d3819e5c6c0616ca5fcf22eae5a1dcd33303083a2e7c8d061a
 SHA512 
43e4df035102271d703c2e29c2b605352251251ac163a7635952b43cc1355ae745575a5976e3d12d428bd56f177b6e822280f8ba297ebd4ca16f1d1003957654
+DIST grpcio-1.73.0.tar.gz 12786424 BLAKE2B 
4c9e69c006820399c8372caab86ba2370527a76ecf48e6d3c4f51efcf7a64f9724ad7768344009a3c987fce2f07a01ca187d8b25c4e7a57adf56e36bedb7ce37
 SHA512 
fb7f8890b0e1286e64a2d0e6e32212b9d33c5988663edbaeddec9a4da7bf52b5a14ad7b4541084314056cacb65426d54376afa6228c3235d600630980ad3d715
 DIST grpcio_tools-1.72.0.tar.gz 5396558 BLAKE2B 
db25a36efd70270b0b91c0e3b73f7595cf32b613dacf6c9d053659610e5a10773666a18776bf01d4904222ebe2b855def3accfc4c778ecd1f37f0d1f7913a3ba
 SHA512 
b2317fdaba0d1c7cffc652443a42fd4d452fa9d188d9908eb73826448bafbce76ac898497da2fb3dbf709fed6666916f026c05af3e4a6dd5db71a13f895d345a
 DIST grpcio_tools-1.72.1.tar.gz 5404888 BLAKE2B 
d32da8170add8ed1b3f59ac0f0ec263ef97cfe3d201cf3df6d7ea0fd07d1a2b008d19ad7bdc4c614734d090d87d674ccb83c64ebe73529a361df0c4c4369c104
 SHA512 
b28eb3519d9898b815d5cb05514332db0371d592a96cb8ea5bacadd1e24a325d6af3662a76964ecd16e4e80c495480676c08ef5dd53195c144579458240543d8
+DIST grpcio_tools-1.73.0.tar.gz 5430439 BLAKE2B 
f8761b874e668285d9d013f2732d8a4c94b7b0b555a33304dea399dc85906e87be2d36f073930d4b58e8d5b131a84ea4a2cc09dce57da4bb1f40d6389cb52359
 SHA512 
da55c48034128d6914aa8ec1dac36e4402d8eecd72c7c04123a82432a94d8074da29cf1bc69017d5d1d4a10e148920c8ab131fe10211de96e69c5a6ea8c12581

diff --git a/dev-python/grpcio/grpcio-1.73.0.ebuild 
b/dev-python/grpcio/grpcio-1.73.0.ebuild
new file mode 100644
index 000000000000..be4c4bfc19d4
--- /dev/null
+++ b/dev-python/grpcio/grpcio-1.73.0.ebuild
@@ -0,0 +1,120 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..14} )
+
+inherit distutils-r1 flag-o-matic multiprocessing pypi
+
+MY_P=grpc-${PV}
+DESCRIPTION="HTTP/2-based RPC framework"
+HOMEPAGE="
+       https://grpc.io/
+       https://github.com/grpc/grpc/
+       https://pypi.org/project/grpcio/
+"
+# Tests need other packages from the source tree, so use a GitHub
+# archive.  sdist provides bundled library sources (git submodules).
+SRC_URI+="
+       test? (
+               https://github.com/grpc/grpc/archive/v${PV}.tar.gz
+                       -> ${MY_P}.gh.tar.gz
+               $(pypi_sdist_url grpcio_tools)
+       )
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+DEPEND="
+       dev-libs/openssl:=
+       net-dns/c-ares:=
+       sys-libs/zlib:=
+"
+RDEPEND="
+       ${DEPEND}
+"
+# TODO: try to remove coverage dep
+BDEPEND="
+       >=dev-python/cython-3.1.1[${PYTHON_USEDEP}]
+       test? (
+               dev-python/coverage[${PYTHON_USEDEP}]
+               >=dev-python/protobuf-6.30.0[${PYTHON_USEDEP}]
+       )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_configure() {
+       export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS="$(makeopts_jobs)"
+       # system abseil-cpp crashes with USE=-debug, sigh
+       # https://bugs.gentoo.org/942021
+       #export GRPC_PYTHON_BUILD_SYSTEM_ABSL=1
+       export GRPC_PYTHON_BUILD_SYSTEM_CARES=1
+       export GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=1
+       # re2 needs to be built against the same abseil-cpp version
+       #export GRPC_PYTHON_BUILD_SYSTEM_RE2=1
+       export GRPC_PYTHON_BUILD_SYSTEM_ZLIB=1
+       export GRPC_PYTHON_BUILD_WITH_CYTHON=1
+
+       # copied from setup.py, except for removed -std= that does not apply
+       # to C code and causes warnings
+       export GRPC_PYTHON_CFLAGS="-fvisibility=hidden -fno-wrapv 
-fno-exceptions"
+       # required by abseil-cpp
+       append-cxxflags -std=c++17
+       # silence a lot of harmless noise from bad quality code
+       append-cxxflags -Wno-attributes
+}
+
+python_test() {
+       local EPYTEST_DESELECT=(
+               # Internet
+               
tests/unit/_dns_resolver_test.py::DNSResolverTest::test_connect_loopback
+               # not a test
+               tests/unit/_compression_test.py::test_compression
+               
tests_aio/unit/channel_argument_test.py::test_if_reuse_port_enabled
+               # expects grpcio-admin
+               
tests/unit/test_all_modules_installed.py::TestAllModulesInstalled::test_import_all_modules
+               # TODO
+               
tests_py3_only/unit/_simple_stubs_test.py::SimpleStubsTest::test_default_ssl
+       )
+       local EPYTEST_IGNORE=(
+               # not a test
+               tests/unit/test_common.py
+               # requires oauth2client
+               tests/unit/beta/_implementations_test.py
+       )
+       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+       cp -a "${BUILD_DIR}"/{install,test} || die
+       local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
+
+       # grpcio proper builds against system libs
+       # grpcio_tools supports bundled libs only, and requires different
+       # flags
+       unset GRPC_PYTHON_CFLAGS
+       cd "${WORKDIR}/grpcio_tools-${PV}" || die
+       distutils_pep517_install "${BUILD_DIR}"/test
+
+       cd "${WORKDIR}/${MY_P}" || die
+       local protodir=src/proto/grpc/testing
+       local testdir=src/python/grpcio_tests
+       "${EPYTHON}" -m grpc_tools.protoc -I. --python_out="${testdir}" \
+               "${protodir}"/{empty,messages}.proto || die
+       "${EPYTHON}" -m grpc_tools.protoc -I. --grpc_python_out="${testdir}" \
+               "${protodir}"/test.proto || die
+
+       cd "${testdir}" || die
+       "${EPYTHON}" -m grpc_tools.protoc -I. --python_out=. \
+               tests/testing/proto/{requests,services}.proto || die
+       "${EPYTHON}" -m grpc_tools.protoc -I. --grpc_python_out=. \
+               tests/testing/proto/services.proto || die
+
+       # TODO: aio tests are failing randomly, so we're skipping them entirely
+       epytest tests{_py3_only,}/unit
+}

Reply via email to