forked from pool/python-grpcio
Compare commits
24 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 9221130f96 | |||
| b96f39409e | |||
| 6d43d5ed21 | |||
| 4d5acd5741 | |||
| 8136254d31 | |||
| b7e7014f53 | |||
| a9f96d4829 | |||
| ca852efda5 | |||
| 078f79dff0 | |||
| 8175737e5b | |||
| 6776d4a3dd | |||
| 331dfe3518 | |||
| 92380c385a | |||
| a109e9dff0 | |||
| 2ebcb68520 | |||
| efda3d44c8 | |||
| 3b4332731a | |||
| ebbf72c6b6 | |||
| 01d3e672a8 | |||
| e783f98748 | |||
| 5eb0de3581 | |||
| 7e90cd57fa | |||
| fb7d63cec2 | |||
| cfea6d07d9 |
81
fix-return-values.patch
Normal file
81
fix-return-values.patch
Normal file
@@ -0,0 +1,81 @@
|
||||
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.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 "Undefined";
|
||||
}
|
||||
template <typename Sink>
|
||||
friend void AbslStringify(Sink& out, ClientToServerPullState state) {
|
||||
@@ -185,6 +186,7 @@ class CallState {
|
||||
case ClientToServerPushState::kFinished:
|
||||
return "Finished";
|
||||
}
|
||||
+ return "Undefined";
|
||||
}
|
||||
template <typename Sink>
|
||||
friend void AbslStringify(Sink& out, ClientToServerPushState state) {
|
||||
@@ -235,6 +237,7 @@ class CallState {
|
||||
case ServerToClientPullState::kTerminated:
|
||||
return "Terminated";
|
||||
}
|
||||
+ return "Undefined";
|
||||
}
|
||||
template <typename Sink>
|
||||
friend void AbslStringify(Sink& out, ServerToClientPullState state) {
|
||||
@@ -275,6 +278,7 @@ class CallState {
|
||||
case ServerToClientPushState::kFinished:
|
||||
return "Finished";
|
||||
}
|
||||
+ return "Undefined";
|
||||
}
|
||||
template <typename Sink>
|
||||
friend void AbslStringify(Sink& out, ServerToClientPushState state) {
|
||||
@@ -305,6 +309,7 @@ class CallState {
|
||||
case ServerTrailingMetadataState::kPulledCancel:
|
||||
return "PulledCancel";
|
||||
}
|
||||
+ 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:
|
||||
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2c7891f66daefc80cce1bed6bc0c2802d26dac46544ba1be79c4e7d85661dd73
|
||||
size 12243603
|
||||
3
grpcio-1.76.0.tar.gz
Normal file
3
grpcio-1.76.0.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7be78388d6da1a25c0d5ec506523db58b18be22d9c37d8d3a32c08be4987bd73
|
||||
size 12785182
|
||||
@@ -1,3 +1,136 @@
|
||||
-------------------------------------------------------------------
|
||||
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>
|
||||
|
||||
- Update to version 1.69.0
|
||||
* [Build] Override MACOSX_DEPLOYMENT_TARGET for gRPC Python. (#37997)
|
||||
- from version 1.68.2
|
||||
* No Python-specific changes.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 18 11:13:30 UTC 2024 - Atri Bhattacharya <badshah400@gmail.com>
|
||||
|
||||
- Update to version 1.68.1 (CVE-2024-11407, bsc#1233821):
|
||||
* No Python specific changes.
|
||||
- Changes from version 1.68.0:
|
||||
* Add templating and support for Python 3.13
|
||||
(gh#grpc/grpc#37643).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 11 14:35:18 UTC 2024 - Adrian Schröter <adrian@suse.de>
|
||||
|
||||
- Update to version 1.67.1 (CVE-2024-7246, bsc#1228919):
|
||||
* Add templating and support for Python 3.13
|
||||
* Add templating and support for Python 3.13
|
||||
* Change warning to RuntimeError for version incompatibility.
|
||||
* reflection returns original_request.
|
||||
- Added fix-return-values.patch for compile failures
|
||||
- Removed obsolete terminate.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 17 10:56:55 UTC 2024 - Atri Bhattacharya <badshah400@gmail.com>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package python-grpcio
|
||||
#
|
||||
# Copyright (c) 2024 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.65.0
|
||||
Version: 1.76.0
|
||||
Release: 0
|
||||
Summary: HTTP/2-based Remote Procedure Call implementation
|
||||
License: Apache-2.0
|
||||
@@ -30,17 +30,24 @@ Source: https://files.pythonhosted.org/packages/source/g/grpcio/grpcio-%
|
||||
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
|
||||
# PATCH-FIX-UPSTREAM Fix issues about control reaching end of non-void function
|
||||
Patch3: terminate.patch
|
||||
BuildRequires: %{python_module Cython >= 0.29.8}
|
||||
BuildRequires: %{python_module devel >= 3.7}
|
||||
Patch3: fix-return-values.patch
|
||||
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)
|
||||
@@ -48,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
|
||||
@@ -61,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
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Date: 2024-01-31 20:50:55.596208216 +0100
|
||||
|
||||
[ 221s] src/core/lib/promise/party.h: In member function 'bool grpc_core::Party::PromiseParticipantImpl<SuppliedFactory>::PollParticipantPromise() [with SuppliedFactory = grpc_core::ForwardCall(CallHandler, CallInitiator, ClientMetadataHandle)::<lambda()> mutable::<lambda(grpc_core::MessageHandle)> mutable::<lambda()>]':
|
||||
[ 221s] src/core/lib/promise/party.h:541:5: error: control reaches end of non-void function [-Werror=return-type]
|
||||
[ 221s] src/core/lib/promise/party.h: In member function 'grpc_core::Poll<typename grpc_core::promise_detail::OncePromiseFactory<void, F>::Promise::Result> grpc_core::Party::PromiseParticipantImpl<SuppliedFactory>::PollCompletion() [with SuppliedFactory = grpc_core::ForwardCall(CallHandler, CallInitiator, ClientMetadataHandle)::<lambda()> mutable::<lambda(grpc_core::MessageHandle)> mutable::<lambda()>]':
|
||||
[ 221s] src/core/lib/promise/party.h:553:5: error: control reaches end of non-void function [-Werror=return-type]
|
||||
|
||||
That enum class only has three numerators, and it's not clear why gcc
|
||||
would warn, given all three cases return.
|
||||
|
||||
---
|
||||
src/core/lib/promise/party.h | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
Index: grpcio-1.65.0/src/core/lib/promise/party.h
|
||||
===================================================================
|
||||
--- grpcio-1.65.0.orig/src/core/lib/promise/party.h
|
||||
+++ grpcio-1.65.0/src/core/lib/promise/party.h
|
||||
@@ -567,6 +567,7 @@ class Party : public Activity, private W
|
||||
Crash(
|
||||
"unreachable: promises should not be repolled after completion");
|
||||
}
|
||||
+ std::terminate();
|
||||
}
|
||||
|
||||
// Outside party poll: check whether the spawning party has completed this
|
||||
@@ -579,6 +580,7 @@ class Party : public Activity, private W
|
||||
case State::kResult:
|
||||
return std::move(result_);
|
||||
}
|
||||
+ std::terminate();
|
||||
}
|
||||
|
||||
void Destroy() override { this->Unref(); }
|
||||
Reference in New Issue
Block a user