This is the 1.20.0 release (godric) 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
- Fix bug in CFStream endpoint. (#18381)
- Fix a NULL deref in tcp_client_windows.cc. (#18545)
- Avoid using grpc_core::Executor when the background poller is available. (#18501)
- Update the c-ares submodule to the 1.15 release. (#18519)
- Remove unnecessary hack which causes data races. (#18481)
- Fix Potentially Dangerous Typo - locked function being run outside of combiner. (#18482)
- Trace log the status of every c-ares lookup; cleanup error handling. (#18384)
- Add SPIFFE security stack to gRPC . (#18115)
- Nuking the poll-cv polling engine. (#18298)
- Backport #18201 to fix "symbol not found: _ares_library_init" error in Bazel on MacOS build. (#18202)
- Roll-forward PR17308. (#18157)
- Run run_after_write closures in h2 once write action is done. (#18163)
- Transition into state CONNECTING when we start name resolution. (#18141)
- Support "darwin_x86_64" CPU in cares.BUILD. (#18125)
- Move grpc_shutdown internals to a detached thread. (#17308)
- Fix c-ares on Windows "DNS resolution failure" triggered by logging. (#18084)
- Disable c-ares on Android. (#18046)
C++
- Global Interceptor Registration allowed only once. (#17978)
- cmake fix: builds disabled by CODEGEN=OFF should not be installed. (#18151)
- cmake: when cross-compiling, the host grpc_cpp_plugin should be used. (#11795)
C#
- Make AuthContext constructor public. (#18500)
- Grpc.Tools: Ensure errors link to correct line numbers through the VS Error List. (#18446)
- Grpc.Tools: support generated filename corner cases. (#18470)
- Grpc.Tools: change the case to 'Protobuf' consistently. (#18471)
- C#: Add NativeCallbackDispatcher. (#18327)
- Grpc.Tools: Enable design time builds by default. (#18356)
- C#: also target netstandard2.0. (#18351)
- Update Grpc.Tools to ensure error details appear in VS. (#18355)
- Fix source stepping in IDE by upgrading sourcelink. (#18363)
- C#: Activate sourcelink when building nuget packages. (#18333)
- Add UserState dictionary to C# ServerCallContext. (#18086)
- C#: Fix il2cpp build on Unity Android. (#18039)
Objective-C
- Use cached grpc ssl credential for ObjC library. (#18336)
PHP
- Add ini settings for fork support to PHP extension. (#18539)
- PHP: fixed seg fault caused by access client after it is closed. (#18302)
Python
- Add Python example for error handling. (#18488)
- python docs: details are UTF-8 encodable, not just ASCII. (#18414)
- Use C-Core API to perform time conversion. (#18398)
- Use correct C integer types in Cython. (#18383)
- Add the missing grpc_cfstream dependency. (#18296)
- Strip Python wheel binary. (#18241)
- Simplify batch operations event interpretation. (#18218)
- add enter_graceful_shutdown() to health service. (#18112)
Ruby
- Ruby: Fix default pool keep alive. (#16240)