16 Commits

Author SHA256 Message Date
9221130f96 Accepting request 1317622 from network
OBS-URL: https://build.opensuse.org/request/show/1317622
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=52
2025-11-13 17:24:06 +00:00
b96f39409e * Update to version 1.76.0.
* Minor rebase of fix-return-values.patch to apply cleanly.
* Drop setting _default_patch_fuzz to 2 as all patches have been rebased to apply cleanly.

OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=107
2025-11-13 15:13:39 +00:00
6d43d5ed21 Accepting request 1313308 from network
* Add (Build)Requires: python-typing_extensions, needed since
  version 1.75.0.
* Update to version 1.75.1

OBS-URL: https://build.opensuse.org/request/show/1313308
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=51
2025-10-24 15:23:34 +00:00
4d5acd5741 OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=105 2025-10-24 05:39:32 +00:00
8136254d31 OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=104 2025-10-24 05:37:03 +00:00
b7e7014f53 - Update to version 1.75.1
* Release grpcio wheels with Python 3.14 support (#40403)
  * Asyncio: fixes grpc shutdown race condition occurring
    during python interpreter finalizations. (#40447)
  * This also addresses previously reported issues with empty
    error message on Python interpreter exit (Error in
    sys.excepthook:/Original exception was: empty): (#36655),
    (#38679), (#33342)
  * Python 3.14: preserve current behavior when using grpc.aio
    async methods outside of a running event loop. (#40750)
  * Note: using async methods outside of a running event loop
    is discouraged by Python, and will be deprecated in future
    gRPC releases. Please use the asyncio.run() function (or
    asyncio.Runner for custom loop factories). For interactive
    mode, use dedicated asyncio REPL: python -m asyncio.
- from version 1.75.0
  * [Security] Cherry Pick Spiffe Verification. (#40515)
  * [Python][Typeguard] Part 3 - Add Typeguard to AIO stack
    in tests. (#40217)
  * [c-ares] update version to 1.34.5. (#39508)
  * [pick_first] fix bug that caused us to stop attempting to
    connect. (#40162)
  * [OTel C++] Implement retry metrics. (#39195)
  * Fix data race by adding custom getter for state property
    with @synchronized locking. (#40146)
  * gRPC Python (grpcio) now depends on typing-extensions~=4.13. (#40137)
  * Update musllinux wheels from musllinux_1_1 to musllinux_1_2. (#40317)
    * Dropping musllinux_1_1 because it reached EOL in November 2024
    * Reference on musllinux platform tags: PEP 656
  * grpc.aio typehint fixes. (#40215, #40217)

OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=103
2025-10-24 04:57:21 +00:00
a9f96d4829 Accepting request 1297210 from network
OBS-URL: https://build.opensuse.org/request/show/1297210
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=50
2025-08-03 11:39:07 +00:00
ca852efda5 * Update to version 1.74.0.
* Update fix-return-values.patch for new version (copied from obs://devel:tools/grpc/return-values.patch).

OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=101
2025-08-03 08:26:53 +00:00
078f79dff0 Accepting request 1293843 from network
- Require Cython >= 3.0.0 instead of 3.1.1 as the latest version
  available on TW is 3.0.2 currently.
- Fix build error for Leap 15.6.

OBS-URL: https://build.opensuse.org/request/show/1293843
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=49
2025-07-17 15:18:36 +00:00
8175737e5b OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=99 2025-07-16 14:36:38 +00:00
6776d4a3dd OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=98 2025-07-16 14:35:49 +00:00
331dfe3518 - Fix build error for Leap 15.6.
OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=97
2025-07-16 13:56:17 +00:00
92380c385a Accepting request 1286792 from network
OBS-URL: https://build.opensuse.org/request/show/1286792
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=48
2025-06-20 14:48:52 +00:00
a109e9dff0 Update to version 1.73.0.
OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=95
2025-06-18 20:46:34 +00:00
2ebcb68520 Accepting request 1277838 from network
OBS-URL: https://build.opensuse.org/request/show/1277838
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-grpcio?expand=0&rev=47
2025-05-20 07:33:03 +00:00
efda3d44c8 Update to version 1.72.0. Rebase fix-return-values.patch: adapt to changed file path.
OBS-URL: https://build.opensuse.org/package/show/network/python-grpcio?expand=0&rev=93
2025-05-15 15:26:30 +00:00
5 changed files with 176 additions and 41 deletions

View File

@@ -1,64 +1,81 @@
Index: grpcio-1.68.1/src/core/lib/promise/party.h
From: Jan Engelhardt <ej@inai.de>
Date: 2025-02-09 21:28:54.517217439 +0100
Fix some terrible code.
[ 28s] /home/abuild/rpmbuild/BUILD/grpc-1.70.1-build/grpc-1.70.1/src/core/lib/transport/call_state.h:157:3: error: control reaches end of non-void function [-Werror=return-type]
---
src/core/call/call_state.h | 5 +++++
src/core/channelz/channelz.h | 1 +
src/core/lib/promise/inter_activity_mutex.h | 2 ++
3 files changed, 8 insertions(+)
Index: grpcio-1.76.0/src/core/call/call_state.h
===================================================================
--- grpcio-1.68.1.orig/src/core/lib/promise/party.h
+++ grpcio-1.68.1/src/core/lib/promise/party.h
@@ -269,6 +269,7 @@ class Party : public Activity, private W
Crash(
"unreachable: promises should not be repolled after completion");
}
+ return false;
}
// Outside party poll: check whether the spawning party has completed this
@@ -281,6 +282,7 @@ class Party : public Activity, private W
case State::kResult:
return std::move(result_);
}
+ return Pending{};
}
void Destroy() override { this->Unref(); }
Index: grpcio-1.68.1/src/core/lib/transport/call_state.h
===================================================================
--- grpcio-1.68.1.orig/src/core/lib/transport/call_state.h
+++ grpcio-1.68.1/src/core/lib/transport/call_state.h
@@ -151,6 +151,7 @@ class CallState {
--- grpcio-1.76.0.orig/src/core/call/call_state.h
+++ grpcio-1.76.0/src/core/call/call_state.h
@@ -155,6 +155,7 @@ class CallState {
case ClientToServerPullState::kTerminated:
return "Terminated";
}
+ return "";
+ return "Undefined";
}
template <typename Sink>
friend void AbslStringify(Sink& out, ClientToServerPullState state) {
@@ -181,6 +182,7 @@ class CallState {
@@ -185,6 +186,7 @@ class CallState {
case ClientToServerPushState::kFinished:
return "Finished";
}
+ return "";
+ return "Undefined";
}
template <typename Sink>
friend void AbslStringify(Sink& out, ClientToServerPushState state) {
@@ -231,6 +233,7 @@ class CallState {
@@ -235,6 +237,7 @@ class CallState {
case ServerToClientPullState::kTerminated:
return "Terminated";
}
+ return "";
+ return "Undefined";
}
template <typename Sink>
friend void AbslStringify(Sink& out, ServerToClientPullState state) {
@@ -268,6 +271,7 @@ class CallState {
@@ -275,6 +278,7 @@ class CallState {
case ServerToClientPushState::kFinished:
return "Finished";
}
+ return "";
+ return "Undefined";
}
template <typename Sink>
friend void AbslStringify(Sink& out, ServerToClientPushState state) {
@@ -298,6 +302,7 @@ class CallState {
@@ -305,6 +309,7 @@ class CallState {
case ServerTrailingMetadataState::kPulledCancel:
return "PulledCancel";
}
+ return "";
+ return "Undefined";
}
template <typename Sink>
friend void AbslStringify(Sink& out, ServerTrailingMetadataState state) {
Index: grpcio-1.76.0/src/core/channelz/channelz.h
===================================================================
--- grpcio-1.76.0.orig/src/core/channelz/channelz.h
+++ grpcio-1.76.0/src/core/channelz/channelz.h
@@ -173,6 +173,7 @@ class BaseNode : public DualRefCounted<B
case EntityType::kResourceQuota:
return "resource_quota";
}
+ return "unknown";
}
static std::optional<EntityType> KindToEntityType(absl::string_view kind) {
Index: grpcio-1.76.0/src/core/lib/promise/inter_activity_mutex.h
===================================================================
--- grpcio-1.76.0.orig/src/core/lib/promise/inter_activity_mutex.h
+++ grpcio-1.76.0/src/core/lib/promise/inter_activity_mutex.h
@@ -307,6 +307,8 @@ class InterActivityMutex {
case State::kMovedFrom:
LOG(FATAL) << "Mutex acquirer already moved from";
}
+ // Control never actually reaches here
+ return Pending{};
}
private:

Binary file not shown.

3
grpcio-1.76.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7be78388d6da1a25c0d5ec506523db58b18be22d9c37d8d3a32c08be4987bd73
size 12785182

View File

@@ -1,3 +1,108 @@
-------------------------------------------------------------------
Sun Nov 9 09:25:23 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.76.0:
* gRPC AsyncIO: Improve CompletionQueue polling performance
(gh#grpc/grpc#39993).
- Minor rebase of fix-return-values.patch to apply cleanly.
- Drop setting _default_patch_fuzz to 2 as all patches have been
rebased to apply cleanly.
-------------------------------------------------------------------
Fri Oct 24 05:39:05 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Add (Build)Requires: python-typing_extensions, needed since
version 1.75.0.
-------------------------------------------------------------------
Fri Oct 17 09:31:11 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to version 1.75.1
* Release grpcio wheels with Python 3.14 support (#40403)
* Asyncio: fixes grpc shutdown race condition occurring
during python interpreter finalizations. (#40447)
* This also addresses previously reported issues with empty
error message on Python interpreter exit (Error in
sys.excepthook:/Original exception was: empty): (#36655),
(#38679), (#33342)
* Python 3.14: preserve current behavior when using grpc.aio
async methods outside of a running event loop. (#40750)
* Note: using async methods outside of a running event loop
is discouraged by Python, and will be deprecated in future
gRPC releases. Please use the asyncio.run() function (or
asyncio.Runner for custom loop factories). For interactive
mode, use dedicated asyncio REPL: python -m asyncio.
- from version 1.75.0
* [Security] Cherry Pick Spiffe Verification. (#40515)
* [Python][Typeguard] Part 3 - Add Typeguard to AIO stack
in tests. (#40217)
* [c-ares] update version to 1.34.5. (#39508)
* [pick_first] fix bug that caused us to stop attempting to
connect. (#40162)
* [OTel C++] Implement retry metrics. (#39195)
* Fix data race by adding custom getter for state property
with @synchronized locking. (#40146)
* gRPC Python (grpcio) now depends on typing-extensions~=4.13. (#40137)
* Update musllinux wheels from musllinux_1_1 to musllinux_1_2. (#40317)
* Dropping musllinux_1_1 because it reached EOL in November 2024
* Reference on musllinux platform tags: PEP 656
* grpc.aio typehint fixes. (#40215, #40217)
* Metadata type validation: Fixed metadata handling to support
all sequence types (not just tuples), preventing runtime errors.
Enhanced metadata type validation: isinstance(metadata, Sequence)
instead of isinstance(metadata, tuple)
* Serializer parameters: Changed to Optional[SerializingFunction]
for more accurate type representation
* Fixing the error in public API: ClientCallDetails.method was
declared as str but always called with bytes, see InterceptedUnaryUnaryCall.
* Fixes issue #40325 with grpcio failing to install on all non-Mac
Apple devices internal builds. (#40347)
* Ruby: Mark credential object in channel. (#40394)
* [Ruby] Add rubygems support for linux-gnu and linux-musl platforms. (#39549)
- from version 1.74.1
* [Backport of #40394 to v1.74.x] Mark credential object in channel to fix (#40368)
- Increase _default_patch_fuzz to 2 to allow patches to apply
-------------------------------------------------------------------
Mon Jul 28 11:25:28 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.74.0:
* Fix gRPC Python docs website layout - use spaces optimally
(gh#grpc/grpc#40073).
- Update fix-return-values.patch for new version (copied from
obs://devel:tools/grpc/return-values.patch).
-------------------------------------------------------------------
Wed Jul 16 14:36:00 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Require Cython >= 3.0.0 instead of 3.1.1 as the latest version
available on TW is 3.0.2 currently.
-------------------------------------------------------------------
Mon Jul 14 12:20:42 UTC 2025 - ecsos <ecsos@opensuse.org>
- Fix build error for Leap 15.6.
-------------------------------------------------------------------
Sun Jun 15 06:02:08 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.73.0:
* Pin Cython to 3.1.1 (gh#grpc/grpc#39609).
* grpc_tools: make PythonGrpcGenerator handle dot . in proto
paths the same way as native Generator/PyiGenerator
(gh#grpc/grpc#39586).
-------------------------------------------------------------------
Sat May 10 15:27:08 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.72.0:
* No documented python specific changes.
- Changes from version 1.71.0:
* Drop Python 3.8 (gh#grpc/grpc##38747).
* Support musl-linux binary wheels on arm64
(gh#grpc/grpc##38223).
- Rebase fix-return-values.patch: adapt to changed file path.
-------------------------------------------------------------------
Mon Jan 20 14:23:28 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-grpcio
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%global modname grpcio
%{?sle15_python_module_pythons}
Name: python-grpcio
Version: 1.69.0
Version: 1.76.0
Release: 0
Summary: HTTP/2-based Remote Procedure Call implementation
License: Apache-2.0
@@ -31,15 +31,23 @@ Patch1: xxhash-avoid-armv6-unaligned-access.patch
# PATCH-FIX-SLE xxhash-ppc64le-gcc7.patch boo#1208794 alarrosa@suse.com -- fix build failure on ppc64le when using gcc 7
Patch2: xxhash-ppc64le-gcc7.patch
Patch3: fix-return-values.patch
BuildRequires: %{python_module Cython >= 0.29.8}
BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module Cython >= 3.0.0}
BuildRequires: %{python_module devel >= 3.9}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module protobuf >= 6.30 }
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module typing_extensions >= 4.13}
BuildRequires: %{python_module wheel >= 0.29}
BuildRequires: abseil-cpp-devel >= 20220623.0
BuildRequires: abseil-cpp-devel >= 20250127.0
BuildRequires: ca-certificates
BuildRequires: fdupes
%if 0%{?suse_version} < 1600
BuildRequires: gcc13
BuildRequires: gcc13-c++
%else
BuildRequires: gcc
BuildRequires: gcc-c++
%endif
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: pkgconfig(libcares)
@@ -47,6 +55,7 @@ BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(re2)
BuildRequires: pkgconfig(zlib)
Requires: ca-certificates
Requires: python-typing_extensions >= 4.13
Recommends: python-enum34 >= 1.0.4
Recommends: python-futures >= 2.2.0
%python_subpackages
@@ -60,6 +69,10 @@ connected systems.
%autosetup -p1 -n grpcio-%{version}
%build
%if 0%{?suse_version} < 1600
export CC=gcc-13
export CXX=g++-13
%endif
export GRPC_BUILD_WITH_BORING_SSL_ASM=false
export GRPC_PYTHON_BUILD_SYSTEM_ABSL=true
export GRPC_PYTHON_BUILD_SYSTEM_CARES=true