From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 8D3C81582EF for ; Tue, 11 Mar 2025 08:47:59 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 4AC4E343160 for ; Tue, 11 Mar 2025 08:47:59 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 5AB891103E2; Tue, 11 Mar 2025 08:47:42 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 47EDB1103E2 for ; Tue, 11 Mar 2025 08:47:42 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id C8F45343111 for ; Tue, 11 Mar 2025 08:47:41 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 06E9828E0 for ; Tue, 11 Mar 2025 08:47:39 +0000 (UTC) From: "Michał Górny" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" Message-ID: <1741682844.c38b6b3e3aa802b88f10a934c138b305dcdc0d33.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/grpcio/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/grpcio/Manifest dev-python/grpcio/grpcio-1.71.0.ebuild X-VCS-Directories: dev-python/grpcio/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: c38b6b3e3aa802b88f10a934c138b305dcdc0d33 X-VCS-Branch: master Date: Tue, 11 Mar 2025 08:47:39 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 7df40237-51db-4145-abc2-173a54db3972 X-Archives-Hash: 8969fd843dffd3ffaed63ea99cf4dd43 commit: c38b6b3e3aa802b88f10a934c138b305dcdc0d33 Author: Michał Górny gentoo org> AuthorDate: Tue Mar 11 06:07:05 2025 +0000 Commit: Michał Górny gentoo org> CommitDate: Tue Mar 11 08:47:24 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c38b6b3e dev-python/grpcio: Bump to 1.71.0 Signed-off-by: Michał Górny gentoo.org> dev-python/grpcio/Manifest | 3 + dev-python/grpcio/grpcio-1.71.0.ebuild | 119 +++++++++++++++++++++++++++++++++ 2 files changed, 122 insertions(+) diff --git a/dev-python/grpcio/Manifest b/dev-python/grpcio/Manifest index e1f4581ee355..661590a8a307 100644 --- a/dev-python/grpcio/Manifest +++ b/dev-python/grpcio/Manifest @@ -1,9 +1,12 @@ DIST grpc-1.67.0.gh.tar.gz 17317493 BLAKE2B 81aaf9a4d293dd41d9d068e81eb8a9898b610498722dd6f9c5ff88118fc5a31a936ac83c7cdb4f56c288d131c7721beed8e307dd91bf3de5cc25951cdb06de5a SHA512 5e76a3147ca051e5304d5d64eefe124cd446dd5d7bd9a65667bae5474b59f70b32368d225e8345c9414bddb968c1390b8bcd08ed97abb62b543528289b29ec35 DIST grpc-1.68.1.gh.tar.gz 17320674 BLAKE2B 46f4ae35c6a3a6ddfd47918a68a42d10e115ef81052715e8d8a73abf973063c730ddda06373278f3a4a6280dd4938e530a5e7377ab76aa653bb208583deab7f3 SHA512 cfb88a1290e2ee46fbd5f2b50b9c066ac174b1077170088c3b1a30bd37e66c6ca5254d2b951329a3991ac2b4320d12a50b1464babffbfc3bcf4eab670a449fd1 DIST grpc-1.70.0.gh.tar.gz 17507321 BLAKE2B 0b158f42a18243bd85817da5fe2b0f3171a0576bfdefd7154806bec569a1c148d4af6428070d4ac51da0d4d2b5d74b8b4fb8ffb43966d05a79fd85865bc2802b SHA512 076610c92fc05bbf716d2ba2d031f478ea533c40342d20eda16c174a91441ca1a221c1b9d1f795cf7d3484f16de5f8339479b3a75d7a2fd72abe6f79297628ea +DIST grpc-1.71.0.gh.tar.gz 14659092 BLAKE2B 8c08020eca27c97d5a47e61a758e482662425c8afe6feef8f3ba9cd0fe2d2c100c9087b16fbf3f2ba3d447aee5d7da3267db7c6e642e2a94f554640364135990 SHA512 25783f75295919d0a077e3d0ff70ea2e651eaf107da2ebe8af40a584540f2f56aae0e04c7b809f3b1eb7d5adc3892f84464662d80b1234a111836f454ba84a18 DIST grpcio-1.67.0.tar.gz 12569330 BLAKE2B 597efd14625898daf8c7aeff65e1d5aac4e08f7152263784c41f6b9bf0b83b8774b01ada85bfd461191d34c547296be82b994694585a57ee306d6aceebf4a9dd SHA512 201ca2548b68561135a06de971dc5a2a87bebbb6e48b4aeca23389fdd3046a11677a440af75730a0ce7cc2b7c9c7e3ab4a43d0e040c803768d04a27be645bc4e DIST grpcio-1.68.1.tar.gz 12694654 BLAKE2B 73dc8ef4371f43d232e452b4aba4a7a3c32f83a93631179123a020660484ecb54ce6da14ef262442ab537a60859c624876e9b6285882f998a17c3a1a144c5416 SHA512 98f517687a9e46f316a08943122e2d002eac03637049e319b070832121ec8b4f140a0e0e1c530d6f3e83973e3503b5a50cdf1532b59e23a2b2e3d8514cd4132d DIST grpcio-1.70.0.tar.gz 12788932 BLAKE2B 890c066cd5f9cc6d92eaeee00b639f5c0c8ac5e7f113fb5f3cc0232d1861f002594179fcaac6fa350254f9aeb27cd049290bcd05c17704caf7bb05df7e4bbca6 SHA512 0e01b8042352d8f6be28b30be64f9bf17d29d19f2d8889e21e6bdd56c6f78cea39a4bd4534afb2e3ded48c119a6ad9a863912088642f306088a5a319c8bfd784 +DIST grpcio-1.71.0.tar.gz 12549828 BLAKE2B c533654643d4c67edbf9b7416f4bda82e5c910e44c2ed08427b9fecace6aeca01e427f4ad2d235309e740d3039600c21eff15d80dea61b3b6d3fcda931446d2a SHA512 07df111b787ac84a2d8ff824ed62603ea9040c8d522e689bc4901243b582c120ec0a71ed2037f7d5f7833b19453c6bf891c7c5611a6c64641651d01c53c4c3ec DIST grpcio_tools-1.67.0.tar.gz 5159163 BLAKE2B 54a7db77514033c4747d20a13fded114828fed23f649587c649f5ad2716d4bb31b80eeda560d55ae087a564cb9d34563a612cc91df581ae6b9a761f307828397 SHA512 f9644b4424aa68f1ae4d679c7b635db9bbfc0b493c76caf7d2e9fe0a49e5e81b6f146666c8dba3fc1d1c0db141f8fb362dd0ede0842c34cb178009412a672ec5 DIST grpcio_tools-1.68.1.tar.gz 5275384 BLAKE2B 29f504ccb3335c8f183c78c286b36c8e220dd30bd3ffb07770d330b232e40f87977bfe10e0099b05ca2a1d86c5743b056a5a4ae54f5343d9de0a9036a9b5cde4 SHA512 a967137875a50a28293d90a2b4ba6ceb35ce7532b73ea727cca0a40e734227a70e2b1f4ce201477b8418c4b29766e21d40fe33c92522d7d94c92c3a55cf265c4 DIST grpcio_tools-1.70.0.tar.gz 5323149 BLAKE2B 01867dcf3a90411143852484d8bafe1a2149f1fffe971b048f7dbb6eae20176a838e378e9619484e2429061c63502461e2a67db5a2dd10caa315cde9862cfa51 SHA512 5751e2408e04b7b73388c224aa0c6b49603875464f43ae21b08e0017772a91d675f1b2a11a2a0a25fbffcfe6b913a10010ce6dd7ca599e9669c815f017d2a1bf +DIST grpcio_tools-1.71.0.tar.gz 5326008 BLAKE2B 70dae192880c861e659f1901e00d7189637843c25c309791857fdc1ef58692fcd3a42d34587896b67d19b2a067561d0cc51e5c9f530352d5345fd06f00fea045 SHA512 33ec4c4a5f09e41af3c20cf030a16f69b8b9d0b8f107f84be6666afce026367d710c0fe4b383f3b45a56e3403fd4f23309ca16ea7d1a122245572868bf7a1507 diff --git a/dev-python/grpcio/grpcio-1.71.0.ebuild b/dev-python/grpcio/grpcio-1.71.0.ebuild new file mode 100644 index 000000000000..2fb789413064 --- /dev/null +++ b/dev-python/grpcio/grpcio-1.71.0.ebuild @@ -0,0 +1,119 @@ +# 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_{10..13} ) + +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[${PYTHON_USEDEP}] + test? ( + dev-python/coverage[${PYTHON_USEDEP}] + >=dev-python/protobuf-5.29.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_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 +}