This is the 1.13.0 release (gloriosa) of gRPC Core.
Please see the notes for the previous releases here: https://github.com/grpc/grpc/releases. Please consult https://grpc.io/ for all information regarding this product.
This release contains refinements, improvements, and bug fixes, with highlights listed below.
Core
- gRPC stats will only be collected for debug builds or if
GRPC_COLLECT_STATS
is defined. It will be disabled for opt builds. (#15280) - Fix for Issue #13553. Unlimited can now be set as the max receive message length. (#15394)
C++
- cmake install now also installs should also installs the roots.pem file (#15319)
C#
- Remove the workaround code to detect channel disconnects and rely on C core functionality instead. Note that there is a small change in behavior. Before, clients would detect disconnected channels immediately.
(#14577) - Provide debugging symbols for the
grpc_csharp_ext
native library used by the C# code. Only available for Windows currently. (#14908) - Allow creating instances of ServerCallContext in tests (#15214)
- Fix handling of some less common situations in C# code generator (#15583, #15639)
Objective-C
- CFStream networking layer open for experiment (#15069, #15677, #15718)
- Fixed issue where BoringSSL podspec cannot be accessed from China (#15428, #15612)
- Bug fixes for gRPC Objective-C (#13180, #15050, #15285, #15429, #15531, )
PHP
- Experimental support for the client-side interceptor. (#13342, #15779)
- Add upper bound for the persistent channel per target, which can be set by the option ‘grpc_target_persist_bound’. By default, only 1 channel will be persisted for each target. (#15218)
- Add experimental API for the call invoker. (#15749)
Python
- Binary wheels for Python 3.7 on
manylinux1
platform are now available. - Source code is now Pylint 1.9.2-compliant (#15682).
- Testing utilities for gRPC Python are now readily available via
grpcio-testing
from PyPI (#15819). requirements.txt
no longer lists thefutures
package as a dependency—whose installation used to be unnecessary on Python 3 but now actively breaks on Python 3 (#15362).- Python errors have become more verbose. They now surface the actual error from gRPC Core: #13689
GRPC_ENABLE_FORK_SUPPORT=false
is no longer required when runningfork
-exec
.- Relying on an explicit
with
statement or explicitly callingChannel.close
to release the underlying resources inChannel
objects is now a required coding practice starting inv1.13.0
.