Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-grpcio-tools for
openSUSE:Factory checked in at 2023-07-03 17:43:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-grpcio-tools (Old)
and /work/SRC/openSUSE:Factory/.python-grpcio-tools.new.13546 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-grpcio-tools"
Mon Jul 3 17:43:23 2023 rev:23 rq:1096365 version:1.56.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-grpcio-tools/python-grpcio-tools.changes
2023-06-11 19:58:27.180307676 +0200
+++
/work/SRC/openSUSE:Factory/.python-grpcio-tools.new.13546/python-grpcio-tools.changes
2023-07-03 17:43:31.460979602 +0200
@@ -1,0 +2,7 @@
+Fri Jun 30 15:49:31 UTC 2023 - Atri Bhattacharya <[email protected]>
+
+- Update to version 1.56.0:
+ * [aio types] Fix some grpc.aio python types
+ (gh#grpc/grpc#32475).
+
+-------------------------------------------------------------------
Old:
----
grpcio-tools-1.55.0.tar.gz
New:
----
grpcio-tools-1.56.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-grpcio-tools.spec ++++++
--- /var/tmp/diff_new_pack.CZcg0d/_old 2023-07-03 17:43:32.168983770 +0200
+++ /var/tmp/diff_new_pack.CZcg0d/_new 2023-07-03 17:43:32.172983793 +0200
@@ -20,7 +20,7 @@
%define skip_python2 1
Name: python-grpcio-tools
-Version: 1.55.0
+Version: 1.56.0
Release: 0
Summary: Protobuf code generator for gRPC
License: Apache-2.0
++++++ grpcio-tools-1.55.0.tar.gz -> grpcio-tools-1.56.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grpcio-tools-1.55.0/PKG-INFO
new/grpcio-tools-1.56.0/PKG-INFO
--- old/grpcio-tools-1.55.0/PKG-INFO 2023-05-19 02:19:13.390367000 +0200
+++ new/grpcio-tools-1.56.0/PKG-INFO 2023-06-14 22:44:43.793380300 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpcio-tools
-Version: 1.55.0
+Version: 1.56.0
Summary: Protobuf code generator for gRPC
Home-page: https://grpc.io
Author: The gRPC Authors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpc/event_engine/event_engine.h
new/grpcio-tools-1.56.0/grpc_root/include/grpc/event_engine/event_engine.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpc/event_engine/event_engine.h
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpc/event_engine/event_engine.h
2023-06-14 22:44:24.000000000 +0200
@@ -283,8 +283,9 @@
/// \a on_shutdown will never be called.
///
/// If this method returns a Listener, then \a on_shutdown will be invoked
- /// exactly once, when the Listener is shut down. The status passed to it
will
- /// indicate if there was a problem during shutdown.
+ /// exactly once when the Listener is shut down, and only after all
+ /// \a on_accept callbacks have finished executing. The status passed to it
+ /// will indicate if there was a problem during shutdown.
///
/// The provided \a MemoryAllocatorFactory is used to create \a
/// MemoryAllocators for Endpoint construction.
@@ -353,7 +354,7 @@
absl::AnyInvocable<void(absl::StatusOr<std::vector<SRVRecord>>)>;
/// Called with the result of a TXT record lookup
using LookupTXTCallback =
- absl::AnyInvocable<void(absl::StatusOr<std::string>)>;
+ absl::AnyInvocable<void(absl::StatusOr<std::vector<std::string>>)>;
virtual ~DNSResolver() = default;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpc/grpc_audit_logging.h
new/grpcio-tools-1.56.0/grpc_root/include/grpc/grpc_audit_logging.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpc/grpc_audit_logging.h
1970-01-01 01:00:00.000000000 +0100
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpc/grpc_audit_logging.h
2023-06-14 22:44:24.000000000 +0200
@@ -0,0 +1,96 @@
+//
+//
+// Copyright 2023 gRPC authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
+
+#ifndef GRPC_GRPC_AUDIT_LOGGING_H
+#define GRPC_GRPC_AUDIT_LOGGING_H
+
+#include <grpc/support/port_platform.h>
+
+#include <memory>
+#include <string>
+
+#include "absl/status/statusor.h"
+#include "absl/strings/string_view.h"
+
+#include <grpc/support/json.h>
+
+namespace grpc_core {
+namespace experimental {
+
+// The class containing the context for an audited RPC.
+class AuditContext {
+ public:
+ AuditContext(absl::string_view rpc_method, absl::string_view principal,
+ absl::string_view policy_name, absl::string_view matched_rule,
+ bool authorized)
+ : rpc_method_(rpc_method),
+ principal_(principal),
+ policy_name_(policy_name),
+ matched_rule_(matched_rule),
+ authorized_(authorized) {}
+
+ absl::string_view rpc_method() const { return rpc_method_; }
+ absl::string_view principal() const { return principal_; }
+ absl::string_view policy_name() const { return policy_name_; }
+ absl::string_view matched_rule() const { return matched_rule_; }
+ bool authorized() const { return authorized_; }
+
+ private:
+ absl::string_view rpc_method_;
+ absl::string_view principal_;
+ absl::string_view policy_name_;
+ absl::string_view matched_rule_;
+ bool authorized_;
+};
+
+// This base class for audit logger implementations.
+class AuditLogger {
+ public:
+ virtual ~AuditLogger() = default;
+ virtual absl::string_view name() const = 0;
+ virtual void Log(const AuditContext& audit_context) = 0;
+};
+
+// This is the base class for audit logger factory implementations.
+class AuditLoggerFactory {
+ public:
+ class Config {
+ public:
+ virtual ~Config() = default;
+ virtual absl::string_view name() const = 0;
+ virtual std::string ToString() const = 0;
+ };
+
+ virtual ~AuditLoggerFactory() = default;
+ virtual absl::string_view name() const = 0;
+
+ virtual absl::StatusOr<std::unique_ptr<Config>> ParseAuditLoggerConfig(
+ const Json& json) = 0;
+
+ virtual std::unique_ptr<AuditLogger> CreateAuditLogger(
+ std::unique_ptr<AuditLoggerFactory::Config>) = 0;
+};
+
+// Registers an audit logger factory. This should only be called during
+// initialization.
+void RegisterAuditLoggerFactory(std::unique_ptr<AuditLoggerFactory> factory);
+
+} // namespace experimental
+} // namespace grpc_core
+
+#endif // GRPC_GRPC_AUDIT_LOGGING_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpc/module.modulemap
new/grpcio-tools-1.56.0/grpc_root/include/grpc/module.modulemap
--- old/grpcio-tools-1.55.0/grpc_root/include/grpc/module.modulemap
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpc/module.modulemap
2023-06-14 22:44:24.000000000 +0200
@@ -8,6 +8,7 @@
header "compression.h"
header "fork.h"
header "grpc.h"
+ header "grpc_audit_logging.h"
header "grpc_posix.h"
header "grpc_security.h"
header "grpc_security_constants.h"
@@ -39,6 +40,7 @@
header "support/alloc.h"
header "support/atm.h"
header "support/cpu.h"
+ header "support/json.h"
header "support/log.h"
header "support/log_windows.h"
header "support/port_platform.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpc/support/json.h
new/grpcio-tools-1.56.0/grpc_root/include/grpc/support/json.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpc/support/json.h
1970-01-01 01:00:00.000000000 +0100
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpc/support/json.h
2023-06-14 22:44:24.000000000 +0200
@@ -0,0 +1,218 @@
+//
+// Copyright 2015 gRPC authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+#ifndef GRPC_SUPPORT_JSON_H
+#define GRPC_SUPPORT_JSON_H
+
+#include <grpc/support/port_platform.h>
+
+#include <stdint.h>
+
+#include <map>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include "absl/strings/str_cat.h"
+#include "absl/types/variant.h"
+
+namespace grpc_core {
+namespace experimental {
+
+// A JSON value, which can be any one of null, boolean, number, string,
+// object, or array.
+class Json {
+ public:
+ // The JSON type.
+ enum class Type {
+ kNull, // No payload. Default type when using the zero-arg ctor.
+ kBoolean, // Use boolean() for payload.
+ kNumber, // Numbers are stored in string form to avoid precision
+ // and integer capacity issues. Use string() for payload.
+ kString, // Use string() for payload.
+ kObject, // Use object() for payload.
+ kArray, // Use array() for payload.
+ };
+
+ using Object = std::map<std::string, Json>;
+ using Array = std::vector<Json>;
+
+ // Factory method for kBoolean.
+ static Json FromBool(bool b) {
+ Json json;
+ json.value_ = b;
+ return json;
+ }
+
+ // Factory methods for kNumber.
+ static Json FromNumber(const std::string& str) {
+ Json json;
+ json.value_ = NumberValue{str};
+ return json;
+ }
+ static Json FromNumber(const char* str) {
+ Json json;
+ json.value_ = NumberValue{std::string(str)};
+ return json;
+ }
+ static Json FromNumber(std::string&& str) {
+ Json json;
+ json.value_ = NumberValue{std::move(str)};
+ return json;
+ }
+ static Json FromNumber(int32_t value) {
+ Json json;
+ json.value_ = NumberValue{absl::StrCat(value)};
+ return json;
+ }
+ static Json FromNumber(uint32_t value) {
+ Json json;
+ json.value_ = NumberValue{absl::StrCat(value)};
+ return json;
+ }
+ static Json FromNumber(int64_t value) {
+ Json json;
+ json.value_ = NumberValue{absl::StrCat(value)};
+ return json;
+ }
+ static Json FromNumber(uint64_t value) {
+ Json json;
+ json.value_ = NumberValue{absl::StrCat(value)};
+ return json;
+ }
+ static Json FromNumber(double value) {
+ Json json;
+ json.value_ = NumberValue{absl::StrCat(value)};
+ return json;
+ }
+
+ // Factory methods for kString.
+ static Json FromString(const std::string& str) {
+ Json json;
+ json.value_ = str;
+ return json;
+ }
+ static Json FromString(const char* str) {
+ Json json;
+ json.value_ = std::string(str);
+ return json;
+ }
+ static Json FromString(std::string&& str) {
+ Json json;
+ json.value_ = std::move(str);
+ return json;
+ }
+
+ // Factory methods for kObject.
+ static Json FromObject(const Object& object) {
+ Json json;
+ json.value_ = object;
+ return json;
+ }
+ static Json FromObject(Object&& object) {
+ Json json;
+ json.value_ = std::move(object);
+ return json;
+ }
+
+ // Factory methods for kArray.
+ static Json FromArray(const Array& array) {
+ Json json;
+ json.value_ = array;
+ return json;
+ }
+ static Json FromArray(Array&& array) {
+ Json json;
+ json.value_ = std::move(array);
+ return json;
+ }
+
+ Json() = default;
+
+ // Copyable.
+ Json(const Json& other) = default;
+ Json& operator=(const Json& other) = default;
+
+ // Moveable.
+ Json(Json&& other) noexcept : value_(std::move(other.value_)) {
+ other.value_ = absl::monostate();
+ }
+ Json& operator=(Json&& other) noexcept {
+ value_ = std::move(other.value_);
+ other.value_ = absl::monostate();
+ return *this;
+ }
+
+ // Returns the JSON type.
+ Type type() const {
+ struct ValueFunctor {
+ Json::Type operator()(const absl::monostate&) { return Type::kNull; }
+ Json::Type operator()(bool) { return Type::kBoolean; }
+ Json::Type operator()(const NumberValue&) { return Type::kNumber; }
+ Json::Type operator()(const std::string&) { return Type::kString; }
+ Json::Type operator()(const Object&) { return Type::kObject; }
+ Json::Type operator()(const Array&) { return Type::kArray; }
+ };
+ return absl::visit(ValueFunctor(), value_);
+ }
+
+ // Payload accessor for kBoolean.
+ // Must not be called for other types.
+ bool boolean() const { return absl::get<bool>(value_); }
+
+ // Payload accessor for kNumber or kString.
+ // Must not be called for other types.
+ const std::string& string() const {
+ const NumberValue* num = absl::get_if<NumberValue>(&value_);
+ if (num != nullptr) return num->value;
+ return absl::get<std::string>(value_);
+ }
+
+ // Payload accessor for kObject.
+ // Must not be called for other types.
+ const Object& object() const { return absl::get<Object>(value_); }
+
+ // Payload accessor for kArray.
+ // Must not be called for other types.
+ const Array& array() const { return absl::get<Array>(value_); }
+
+ bool operator==(const Json& other) const { return value_ == other.value_; }
+ bool operator!=(const Json& other) const { return !(*this == other); }
+
+ private:
+ struct NumberValue {
+ std::string value;
+
+ bool operator==(const NumberValue& other) const {
+ return value == other.value;
+ }
+ };
+ using Value = absl::variant<absl::monostate, // kNull
+ bool, // kBoolean
+ NumberValue, // kNumber
+ std::string, // kString
+ Object, // kObject
+ Array>; // kArray
+
+ explicit Json(Value value) : value_(std::move(value)) {}
+
+ Value value_;
+};
+
+} // namespace experimental
+} // namespace grpc_core
+
+#endif // GRPC_SUPPORT_JSON_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/ext/call_metric_recorder.h
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/ext/call_metric_recorder.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/ext/call_metric_recorder.h
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/ext/call_metric_recorder.h
2023-06-14 22:44:24.000000000 +0200
@@ -50,6 +50,14 @@
/// Values outside of the valid range [0, 1] are ignored.
virtual CallMetricRecorder& RecordMemoryUtilizationMetric(double value) = 0;
+ /// Records a call metric measurement for application specific utilization.
+ /// Multiple calls to this method will override the stored value.
+ /// Values may be larger than 1.0 when the usage exceeds the reporter
+ /// dependent notion of soft limits.
+ /// Values outside of the valid range [0, infy] are ignored.
+ virtual CallMetricRecorder& RecordApplicationUtilizationMetric(
+ double value) = 0;
+
/// Records a call metric measurement for queries per second.
/// Multiple calls to this method will override the stored value.
/// Values outside of the valid range [0, infy) are ignored.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/ext/server_metric_recorder.h
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/ext/server_metric_recorder.h
---
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/ext/server_metric_recorder.h
2023-05-19 02:18:45.000000000 +0200
+++
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/ext/server_metric_recorder.h
2023-06-14 22:44:24.000000000 +0200
@@ -52,6 +52,10 @@
/// Values outside of the valid range are rejected.
/// Overrides the stored value when called again with a valid value.
void SetMemoryUtilization(double value);
+ /// Records the application specific utilization in the range [0, infy].
+ /// Values outside of the valid range are rejected.
+ /// Overrides the stored value when called again with a valid value.
+ void SetApplicationUtilization(double value);
/// Records number of queries per second to the server in the range [0,
infy).
/// Values outside of the valid range are rejected.
/// Overrides the stored value when called again with a valid value.
@@ -77,6 +81,8 @@
void ClearCpuUtilization();
/// Clears the server memory utilization if recorded.
void ClearMemoryUtilization();
+ /// Clears the application specific utilization if recorded.
+ void ClearApplicationUtilization();
/// Clears number of queries per second to the server if recorded.
void ClearQps();
/// Clears number of errors per second to the server if recorded.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/security/audit_logging.h
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/security/audit_logging.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/security/audit_logging.h
1970-01-01 01:00:00.000000000 +0100
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/security/audit_logging.h
2023-06-14 22:44:24.000000000 +0200
@@ -0,0 +1,44 @@
+//
+//
+// Copyright 2023 gRPC authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
+
+#ifndef GRPCPP_SECURITY_AUDIT_LOGGING_H
+#define GRPCPP_SECURITY_AUDIT_LOGGING_H
+
+#include <memory>
+#include <string>
+#include <utility>
+
+#include "absl/status/statusor.h"
+
+#include <grpc/grpc_audit_logging.h>
+#include <grpcpp/support/string_ref.h>
+
+namespace grpc {
+namespace experimental {
+
+using grpc_core::experimental::AuditContext; //
NOLINT(misc-unused-using-decls)
+using grpc_core::experimental::AuditLogger; //
NOLINT(misc-unused-using-decls)
+using grpc_core::experimental::
+ AuditLoggerFactory; // NOLINT(misc-unused-using-decls)
+using grpc_core::experimental::
+ RegisterAuditLoggerFactory; // NOLINT(misc-unused-using-decls)
+
+} // namespace experimental
+} // namespace grpc
+
+#endif // GRPCPP_SECURITY_AUDIT_LOGGING_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/server_context.h
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/server_context.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/server_context.h
2023-05-19 02:18:44.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/server_context.h
2023-06-14 22:44:24.000000000 +0200
@@ -206,7 +206,9 @@
/// TryCancel() is called, the serverhandler must return Status::CANCELLED.
/// The only exception is that if the serverhandler is already returning an
/// error status code, it is ok to not return Status::CANCELLED even if
- /// TryCancel() was called.
+ /// TryCancel() was called. Additionally, it is illegal to invoke TryCancel()
+ /// before the call has actually begun, i.e., before metadata has been
+ /// received from the client.
///
/// For reasons such as the above, it is generally preferred to explicitly
/// finish an RPC by returning Status::CANCELLED rather than using TryCancel.
@@ -303,8 +305,8 @@
/// Async only. Has to be called before the rpc starts.
/// Returns the tag in completion queue when the rpc finishes.
/// IsCancelled() can then be called to check whether the rpc was cancelled.
- /// TODO(vjpai): Fix this so that the tag is returned even if the call never
- /// starts (https://github.com/grpc/grpc/issues/10136).
+ /// Note: the tag will only be returned if call starts.
+ /// If the call never starts, this tag will not be returned.
void AsyncNotifyWhenDone(void* tag) {
has_notify_when_done_tag_ = true;
async_notify_when_done_tag_ = tag;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/version_info.h
new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/version_info.h
--- old/grpcio-tools-1.55.0/grpc_root/include/grpcpp/version_info.h
2023-05-19 02:18:44.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/include/grpcpp/version_info.h
2023-06-14 22:44:24.000000000 +0200
@@ -19,9 +19,9 @@
#define GRPCPP_VERSION_INFO_H
#define GRPC_CPP_VERSION_MAJOR 1
-#define GRPC_CPP_VERSION_MINOR 55
+#define GRPC_CPP_VERSION_MINOR 56
#define GRPC_CPP_VERSION_PATCH 0
#define GRPC_CPP_VERSION_TAG ""
-#define GRPC_CPP_VERSION_STRING "1.55.0"
+#define GRPC_CPP_VERSION_STRING "1.56.0"
#endif // GRPCPP_VERSION_INFO_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/src/compiler/csharp_generator.cc
new/grpcio-tools-1.56.0/grpc_root/src/compiler/csharp_generator.cc
--- old/grpcio-tools-1.55.0/grpc_root/src/compiler/csharp_generator.cc
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/src/compiler/csharp_generator.cc
2023-06-14 22:44:24.000000000 +0200
@@ -100,6 +100,14 @@
"null)]\n");
}
+void GenerateObsoleteAttribute(grpc::protobuf::io::Printer* printer,
+ bool is_deprecated) {
+ // Mark the code deprecated using the [ObsoleteAttribute] attribute.
+ if (is_deprecated) {
+ printer->Print("[global::System.ObsoleteAttribute]\n");
+ }
+}
+
template <typename DescriptorType>
bool GenerateDocCommentBody(grpc::protobuf::io::Printer* printer,
const DescriptorType* descriptor) {
@@ -439,6 +447,7 @@
"/// <summary>Base class for server-side implementations of "
"$servicename$</summary>\n",
"servicename", GetServiceClassName(service));
+ GenerateObsoleteAttribute(out, service->options().deprecated());
out->Print(
"[grpc::BindServiceMethod(typeof($classname$), "
"\"BindService\")]\n",
@@ -450,6 +459,7 @@
for (int i = 0; i < service->method_count(); i++) {
const MethodDescriptor* method = service->method(i);
GenerateDocCommentServerMethod(out, method);
+ GenerateObsoleteAttribute(out, method->options().deprecated());
GenerateGeneratedCodeAttribute(out);
out->Print(
"public virtual $returntype$ "
@@ -475,6 +485,7 @@
void GenerateClientStub(Printer* out, const ServiceDescriptor* service) {
out->Print("/// <summary>Client for $servicename$</summary>\n",
"servicename",
GetServiceClassName(service));
+ GenerateObsoleteAttribute(out, service->options().deprecated());
out->Print("public partial class $name$ : grpc::ClientBase<$name$>\n",
"name",
GetClientClassName(service));
out->Print("{\n");
@@ -525,9 +536,11 @@
for (int i = 0; i < service->method_count(); i++) {
const MethodDescriptor* method = service->method(i);
+ const bool is_deprecated = method->options().deprecated();
if (!method->client_streaming() && !method->server_streaming()) {
// unary calls have an extra synchronous stub method
GenerateDocCommentClientMethod(out, method, true, false);
+ GenerateObsoleteAttribute(out, is_deprecated);
GenerateGeneratedCodeAttribute(out);
out->Print(
"public virtual $response$ $methodname$($request$ request, "
@@ -551,6 +564,7 @@
// overload taking CallOptions as a param
GenerateDocCommentClientMethod(out, method, true, true);
+ GenerateObsoleteAttribute(out, is_deprecated);
GenerateGeneratedCodeAttribute(out);
out->Print(
"public virtual $response$ $methodname$($request$ request, "
@@ -573,6 +587,7 @@
method_name += "Async"; // prevent name clash with synchronous method.
}
GenerateDocCommentClientMethod(out, method, false, false);
+ GenerateObsoleteAttribute(out, is_deprecated);
GenerateGeneratedCodeAttribute(out);
out->Print(
"public virtual $returntype$ "
@@ -598,6 +613,7 @@
// overload taking CallOptions as a param
GenerateDocCommentClientMethod(out, method, false, true);
+ GenerateObsoleteAttribute(out, is_deprecated);
GenerateGeneratedCodeAttribute(out);
out->Print(
"public virtual $returntype$ "
@@ -739,6 +755,7 @@
bool internal_access) {
GenerateDocCommentBody(out, service);
+ GenerateObsoleteAttribute(out, service->options().deprecated());
out->Print("$access_level$ static partial class $classname$\n",
"access_level", GetAccessLevel(internal_access), "classname",
GetServiceClassName(service));
@@ -801,7 +818,7 @@
out.PrintRaw(leading_comments.c_str());
}
- out.Print("#pragma warning disable 0414, 1591, 8981\n");
+ out.Print("#pragma warning disable 0414, 1591, 8981, 0612\n");
out.Print("#region Designer generated code\n");
out.Print("\n");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/src/compiler/php_generator.cc
new/grpcio-tools-1.56.0/grpc_root/src/compiler/php_generator.cc
--- old/grpcio-tools-1.55.0/grpc_root/src/compiler/php_generator.cc
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/src/compiler/php_generator.cc
2023-06-14 22:44:24.000000000 +0200
@@ -77,6 +77,9 @@
GeneratedClassName(output_type), output_type->file());
out->Print("/**\n");
+ if (method->options().deprecated()) {
+ out->Print(" * @deprecated\n");
+ }
out->Print(GetPHPComments(method, " *").c_str());
if (method->client_streaming()) {
if (method->server_streaming()) {
@@ -144,6 +147,9 @@
GeneratedClassName(output_type), output_type->file());
out->Print("/**\n");
+ if (method->options().deprecated()) {
+ out->Print(" * @deprecated\n");
+ }
out->Print(GetPHPComments(method, " *").c_str());
const char* method_template;
@@ -222,8 +228,11 @@
map<std::string, std::string> vars;
vars["service_name"] = service->full_name();
+ out->Print("/**\n");
+ if (service->options().deprecated()) {
+ out->Print(" * @deprecated\n");
+ }
out->Print(
- "/**\n"
" * Get the method descriptors of the service for server registration\n"
" *\n"
" * @return array of \\Grpc\\MethodDescriptor for the service methods\n"
@@ -272,6 +281,9 @@
Printer* out) {
map<std::string, std::string> vars;
out->Print("/**\n");
+ if (service->options().deprecated()) {
+ out->Print(" * @deprecated\n");
+ }
out->Print(GetPHPComments(service, " *").c_str());
out->Print(" */\n");
vars["name"] = GetPHPServiceClassname(service, class_suffix, is_server);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpc_root/src/compiler/php_generator_helpers.h
new/grpcio-tools-1.56.0/grpc_root/src/compiler/php_generator_helpers.h
--- old/grpcio-tools-1.55.0/grpc_root/src/compiler/php_generator_helpers.h
2023-05-19 02:18:45.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpc_root/src/compiler/php_generator_helpers.h
2023-06-14 22:44:24.000000000 +0200
@@ -60,8 +60,10 @@
<< grpc_generator::CapitalizeFirstLetter(tokens[i]);
}
}
- return oss.str() + "/" +
- GetPHPServiceClassname(service, class_suffix, is_server) + ".php";
+ std::string path = oss.str();
+ if (!path.empty()) path += "/";
+ path += GetPHPServiceClassname(service, class_suffix, is_server) + ".php";
+ return path;
}
// Get leading or trailing comments in a string. Comment lines start with "//
".
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grpcio-tools-1.55.0/grpc_version.py
new/grpcio-tools-1.56.0/grpc_version.py
--- old/grpcio-tools-1.55.0/grpc_version.py 2023-05-19 02:12:02.000000000
+0200
+++ new/grpcio-tools-1.56.0/grpc_version.py 2023-06-14 22:39:02.000000000
+0200
@@ -14,5 +14,5 @@
# AUTO-GENERATED FROM
`$REPO_ROOT/templates/tools/distrib/python/grpcio_tools/grpc_version.py.template`!!!
-VERSION = '1.55.0'
+VERSION = '1.56.0'
PROTOBUF_VERSION = '3.23.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/grpcio-tools-1.55.0/grpcio_tools.egg-info/PKG-INFO
new/grpcio-tools-1.56.0/grpcio_tools.egg-info/PKG-INFO
--- old/grpcio-tools-1.55.0/grpcio_tools.egg-info/PKG-INFO 2023-05-19
02:19:12.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpcio_tools.egg-info/PKG-INFO 2023-06-14
22:44:43.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpcio-tools
-Version: 1.55.0
+Version: 1.56.0
Summary: Protobuf code generator for gRPC
Home-page: https://grpc.io
Author: The gRPC Authors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpcio_tools.egg-info/SOURCES.txt
new/grpcio-tools-1.56.0/grpcio_tools.egg-info/SOURCES.txt
--- old/grpcio-tools-1.55.0/grpcio_tools.egg-info/SOURCES.txt 2023-05-19
02:19:12.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpcio_tools.egg-info/SOURCES.txt 2023-06-14
22:44:43.000000000 +0200
@@ -10,6 +10,7 @@
grpc_root/include/grpc/compression.h
grpc_root/include/grpc/fork.h
grpc_root/include/grpc/grpc.h
+grpc_root/include/grpc/grpc_audit_logging.h
grpc_root/include/grpc/grpc_cronet.h
grpc_root/include/grpc/grpc_posix.h
grpc_root/include/grpc/grpc_security.h
@@ -142,6 +143,7 @@
grpc_root/include/grpc/support/atm_gcc_sync.h
grpc_root/include/grpc/support/atm_windows.h
grpc_root/include/grpc/support/cpu.h
+grpc_root/include/grpc/support/json.h
grpc_root/include/grpc/support/log.h
grpc_root/include/grpc/support/log_windows.h
grpc_root/include/grpc/support/port_platform.h
@@ -262,6 +264,7 @@
grpc_root/include/grpcpp/impl/codegen/security/auth_context.h
grpc_root/include/grpcpp/security/alts_context.h
grpc_root/include/grpcpp/security/alts_util.h
+grpc_root/include/grpcpp/security/audit_logging.h
grpc_root/include/grpcpp/security/auth_context.h
grpc_root/include/grpcpp/security/auth_metadata_processor.h
grpc_root/include/grpcpp/security/authorization_policy_provider.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/grpcio-tools-1.55.0/grpcio_tools.egg-info/requires.txt
new/grpcio-tools-1.56.0/grpcio_tools.egg-info/requires.txt
--- old/grpcio-tools-1.55.0/grpcio_tools.egg-info/requires.txt 2023-05-19
02:19:12.000000000 +0200
+++ new/grpcio-tools-1.56.0/grpcio_tools.egg-info/requires.txt 2023-06-14
22:44:43.000000000 +0200
@@ -1,3 +1,3 @@
protobuf<5.0dev,>=4.21.6
-grpcio>=1.55.0
+grpcio>=1.56.0
setuptools