summaryrefslogtreecommitdiff
path: root/dev-python/grpcio
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/grpcio')
-rw-r--r--dev-python/grpcio/Manifest1
-rw-r--r--dev-python/grpcio/files/1.59.0-cython3.patch59
-rw-r--r--dev-python/grpcio/grpcio-1.59.0.ebuild49
3 files changed, 109 insertions, 0 deletions
diff --git a/dev-python/grpcio/Manifest b/dev-python/grpcio/Manifest
new file mode 100644
index 00000000..c53eb55d
--- /dev/null
+++ b/dev-python/grpcio/Manifest
@@ -0,0 +1 @@
+DIST grpcio-1.59.0.tar.gz 24842974 BLAKE2B d883d9800f5b2025774c37a6c076500e113121b7e1254368d9c4b95c1170593969af4568492744527f909f828121630dd870210d2e2de718ba907be09f9b826b SHA512 1b345c2b87593934aa15e8019d858c6f7000d3e66ffd20ae538028aa109d8553ccff819ad8796b19c51d647851139d13b9158c9f2639b0b9506347ceff646637
diff --git a/dev-python/grpcio/files/1.59.0-cython3.patch b/dev-python/grpcio/files/1.59.0-cython3.patch
new file mode 100644
index 00000000..67834966
--- /dev/null
+++ b/dev-python/grpcio/files/1.59.0-cython3.patch
@@ -0,0 +1,59 @@
+diff -Nur a/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi b/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
+--- a/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi 2023-09-29 00:27:01.000000000 +0100
++++ b/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi 2023-10-20 23:32:19.961712516 +0100
+@@ -48,7 +48,7 @@
+ @staticmethod
+ cdef void functor_run(
+ grpc_completion_queue_functor* functor,
+- int succeed)
++ int succeed) noexcept
+
+ cdef grpc_completion_queue_functor *c_functor(self)
+
+diff -Nur a/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi b/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
+--- a/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi 2023-09-29 00:27:01.000000000 +0100
++++ b/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi 2023-10-20 23:32:19.961712516 +0100
+@@ -50,7 +50,7 @@
+ @staticmethod
+ cdef void functor_run(
+ grpc_completion_queue_functor* functor,
+- int success):
++ int success) noexcept:
+ cdef CallbackContext *context = <CallbackContext *>functor
+ cdef object waiter = <object>context.waiter
+ if not waiter.cancelled():
+diff -Nur a/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi b/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
+--- a/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi 2023-09-29 00:27:01.000000000 +0100
++++ b/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi 2023-10-20 23:39:10.583700341 +0100
+@@ -314,7 +314,7 @@
+ return credentials
+
+ cdef grpc_ssl_certificate_config_reload_status _server_cert_config_fetcher_wrapper(
+- void* user_data, grpc_ssl_server_certificate_config **config) with gil:
++ void* user_data, grpc_ssl_server_certificate_config **config) noexcept with gil:
+ # This is a credentials.ServerCertificateConfig
+ cdef ServerCertificateConfig cert_config = None
+ if not user_data:
+diff -Nur a/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi b/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
+--- a/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi 2023-09-29 00:27:01.000000000 +0100
++++ b/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi 2023-10-20 23:32:19.960712516 +0100
+@@ -13,16 +13,16 @@
+ # limitations under the License.
+
+ # TODO(https://github.com/grpc/grpc/issues/15662): Reform this.
+-cdef void* _copy_pointer(void* pointer):
++cdef void* _copy_pointer(void* pointer) noexcept:
+ return pointer
+
+
+ # TODO(https://github.com/grpc/grpc/issues/15662): Reform this.
+-cdef void _destroy_pointer(void* pointer):
++cdef void _destroy_pointer(void* pointer) noexcept:
+ pass
+
+
+-cdef int _compare_pointer(void* first_pointer, void* second_pointer):
++cdef int _compare_pointer(void* first_pointer, void* second_pointer) noexcept:
+ if first_pointer < second_pointer:
+ return -1
+ elif first_pointer > second_pointer:
diff --git a/dev-python/grpcio/grpcio-1.59.0.ebuild b/dev-python/grpcio/grpcio-1.59.0.ebuild
new file mode 100644
index 00000000..74b56c15
--- /dev/null
+++ b/dev-python/grpcio/grpcio-1.59.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 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_{9..11} )
+
+inherit distutils-r1 multiprocessing prefix pypi
+
+DESCRIPTION="High-performance RPC framework (python libraries)"
+HOMEPAGE="https://grpc.io"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
+
+RDEPEND="
+ >=dev-libs/openssl-1.1.1:0=[-bindist(-)]
+ >=dev-libs/re2-0.2021.11.01:=
+ >=dev-python/cython-0.29.36[${PYTHON_USEDEP}]
+ <dev-python/protobuf-python-5[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-python-4.21.3[${PYTHON_USEDEP}]
+ net-dns/c-ares:=
+ sys-libs/zlib:=
+"
+
+DEPEND="${RDEPEND}"
+
+python_prepare_all() {
+ if has_version ">=dev-python/cython-3.0.0[${PYTHON_USEDEP}]"; then
+ PATCHES=( "${FILESDIR}/1.59.0-cython3.patch" )
+ fi
+ distutils-r1_python_prepare_all
+ hprefixify setup.py
+}
+
+python_configure_all() {
+ # os.environ.get('GRPC_BUILD_WITH_BORING_SSL_ASM', True)
+ export GRPC_BUILD_WITH_BORING_SSL_ASM=
+ export GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY=1
+ export GRPC_PYTHON_BUILD_SYSTEM_CARES=1
+ export GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=1
+ export GRPC_PYTHON_BUILD_WITH_SYSTEM_RE2=1
+ export GRPC_PYTHON_BUILD_SYSTEM_ZLIB=1
+ export GRPC_PYTHON_BUILD_WITH_CYTHON=1
+ export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS="$(makeopts_jobs)"
+}