GRPC 1.15.0 已发布,GRPC 是一个高性能、开源、通用的 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。 GRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。
该版本包含优化、改进和 bug 修复,亮点包括:
Core
Document SSL portability and performance considerations. 详情
Simplify call arena size growth. (#16396)
Make gRPC buildable with AIX and Solaris (no official support). (#15926)
PF: Check connectivity state before watching. (#16306)
Added system roots feature to load roots from OS trust store. (#16083)
Fix c-ares compilation under windows (but doesn't yet enable windows DNS queries), and then enables address sorting on Windows. (#16163)
Fix re-resolution in pick first. (#16076)
Allow error strings in final_info to propagate to filters on call destruction. (#16104)
Add resolver executor . (#16010)
Data race fix for lockfree_event. (#16053)
Channelz: Expose new Core API. (#16022)
C++
cmake: disable assembly optimizations only when necessary. (#16415)
C++ sync server: Return status
RESOURCE_EXHAUSTED
if no thread quota available. (#16356)Use correct target name for gflags-config.cmake. (#16343)
Make should generate pkg-config file for gpr as well. (#15295)
Restrict the number of threads in C++ sync server. (#16217)
Allow reset of connection backoff. (#16225)
C#
Add experimental support for Xamarin.Android and Xamarin.iOS, added Helloworld example for Xamarin. 详情
Add experimental support for Unity Android and iOS. 详情
Add server reflection tutorial. 详情
Avoid deadlock while cancelling a call. (#16440)
Subchannel sharing for secure channels now works as expected. (#16438)
Allow dot in metadata keys. (#16444)
Avoid shutdown crash on iOS. (#16308)
Add script for creating a C# package for Unity. (#16208)
Add Xamarin example. (#16194)
Cleanup and update C# examples. (#16144)
Grpc.Core: add support for x86 android emulator. (#16121)
Xamarin iOS: Add libgrpc_csharp_ext.a for iOS into Grpc.Core nuget. (#16109)
Xamarin support improvements . (#16099)
Mark native callbacks with
MonoPInvokeCallback
. (#16094)Xamarin.Android: add support. (#15969)
Objective-C
Make BoringSSL symbols private to gRPC in Obj-C so there is no conflict when linking with OpenSSL. (#16358)
Use environment variable to enable CFStream. (#16261)
Surface error_string to ObjC users. (#16271)
Fix
GRPCCall
refcounting issue. (#16213)
Python
Added support for client-side fork on Linux and Mac by setting the environment variable
GRPC_ENABLE_FORK_SUPPORT=1
. Applications may fork with active RPCs, as long as no user threads are currently invoking gRPC library methods. In-progress RPCs continue in the parent process, and the child process may use gRPC by creating new channels. (#16264)Improve Pypy compatibility. (#16364)
Segmentation fault caused by
channel.close()
when used with connectivity-state subscriptions. (#16296)Add server reflection guide for Python. 详情
Refresh pb2 files in examples/python/multiplex. (#16253)
Adding python version environmental markers in the new style. (#16235)
Add a matching
_unwrap_grpc_arg
. (#16197)Add Cython functionality to directly wrap
grpc_arg
. (#16192)
下载地址: