gRPC v1.20.0 Release Notes
Release Date: 2019-04-10 // about 5 years ago-
π Dependencies and Build Changes
- β¬οΈ Upgraded to Netty 4.1.34 and Netty TCNative 2.0.22
- β¬οΈ Upgraded to Protobuf 3.7.1
- β¬οΈ Test code upgraded to Mockito 2 (fixes #5319)
- β io.grpc:grpc-testing no longer (transitively) depends on mockito
- π Bazel 0.23 or newer is required. This was required to support --incompatible_use_toolchain_providers_in_java_common . As of Bazel 0.24, grpc is compatible with all incompatible flags marked for migration
- β¬οΈ auth: Upgraded google-auth-library-java to 0.13.0
- bazel: grpc_java_repositories: fix com_google_protobuf_javalite sha256. (#5456)
π Bug Fixes
- π core: suppress android lint error for javax.naming.*
- π bom: added missing artifact (protoc-gen-grpc-java) to bom, removed grpc-compiler.
- services/grpclb: use Stopwatch to count for LB backoff time.
- π core: fixed an issue that DNS JNDI does not work if there is an unavailability cause (#5500)
- 0οΈβ£ netty: fixed a memory leak due to the default grace time (#5443)
- π core: make the newNameResolver() change backward compatible for callers (#5564, fixes #5556)
- π okhttp: fixed a deadlock (#5570)
- core: corrected config key for hedging max attempts (#5373)
- β‘οΈ grpclb: keep track of state updates for cached Subchannels. (#5441)
π New Features
- bazel: created bazel targets for grpc-services (#5384)
- ALTS: added ComputeEngineChannelBuilder (#5473)
- π okhttp: add socketFactory method to channel builder (#5378)
- 0οΈβ£ grpclb: now supports "pick_first" child policy in addition to the default "round_robin" (#5438)
Behavior Changes
- grpclb: use fallback addresses if no balancer address is given (#5445)
API Changes
- π core: Deprecated ClientStreamTracer.Factory#newClientStreamTracer is now deleted(#5377)
- core: NameResolver no longer needs to be thread-safe (#5364)
- core: Added ManagedChannelBuilder.defaulServiceConfig() and disableServiceConfigLookUp()
- π core: deprecated LoadBalancer.Helper#getNameResolverFactory (#5418)
π Documentation
- β‘οΈ COMPILING.md: updated document for codegen plugin compilation instruction.
- π SECURITY.md: document that tcnative/ALPN works on Alpine. It is unclear how long Alpine has been capable of working
- π examples: add an example of server-side compression support (#5358)
Acknowledgments
Thanks to all of our contributors:
- Nick Hill (@njhill) (#5504, #5506, #5492)
- Tim van der Lippe (@TimvdLippe) (#5484)
- Fabio Kung (@fabiokung) (#5443)
- Derek Perez (@οΏΌperezd) (#5384)
- Brendan Linn (@Ubehebe)(#5456)
- AmiDavidW (@AmiDavidW) (#5358)
- Rodrigo Queiro (@drigz) (#5411, #5410)
- Nguyen Quang Huy (@huynq0911) (#5387, #5388)
- David Hoover (@deadmoose) (#5379)
- Dan (@danfaer) (#5373)
- Dan Torrey (@danotorrey) (#5472)