Skip to content

v1.9.0

Compare
Choose a tag to compare
@zhangkun83 zhangkun83 released this 11 Jan 19:29
· 4192 commits to master since this release

Features

  • core: record RPC upstarts to Census. Combined with the number of RPC completions, users can derive count of active RPCs. (#3708)
  • core,okhttp: handle unresolved proxy addresses (#3789)
  • core: user-agent is now supported in InProcess (#3853)
  • netty: server sockets now configurable (#3755)
  • netty: grpc-netty-shaded is now available as an alternative to grpc-netty. It shades grpc-netty and netty, so that users can safely depend on a different version of netty. It is safe to have both grpc-netty and grpc-netty-shaded as dependencies (#2485)
  • cronet: allow multiple annotation objects attached to stream (#3695)
  • compiler: the code-generator is now buildable on aarch64 (#3785)
  • core/grpclb: resolve TXT records in DNS name resolver and include balancer addresses. This is part of larger work that’s still in progress, so is disabled by default. It can be enabled via -Dio.grpc.internal.DnsNameResolverProvider.enable_jndi=true (#3852)

API changes

Stabilized

  • HandlerRegistry (#3760)
  • ManagedChannelBuilder.overrideAuthority() (#3761)

New

  • Add useTransportSecurity() in ManagedChannelBuilder. This can be used to reverse the effects of usePlaintext() (#3561)

Deleted

  • noopMethodDescriptor, NoopClientCall, NoopServerCall, various APIs from TestUtils. These were previously marked deprecated (#3790)
  • DeadlineSubject removed from the testing package to avoid requiring newer Guava versions brought in by the Truth dependency. We anticipate few users will be impacted; if this impacts you please open an issue (#3786)

Behavior changes

  • auth: Treat IOExceptions as UNAVAILABLE. Previously they were UNAUTHENTICATED. This only applies when retrieving credentials, like OAuth tokens (#3757)
  • core: Increase server handshake timeout to 120s (#3799)
  • grpclb: switch to fallback mode if all connections are lost (#3744)

Performance improvements

  • auth: Use async version of getRequestMetadata() and avoid using DelayedStream and a thread hop when the credentials are known immediately. (#3758)

Dependencies

  • Switch from com.google.instrumentation to io.opencensus 0.10.0 for stats reporting. (#3647)
  • proto-google-common-protos upgraded to 1.0.0 (#3765)
  • netty: netty upgraded to 4.1.17-Final (#3770). Users will need to upgrade to netty-tcnative 2.0.7.Final.
  • okhttp: okio upgraded to 1.13.0 (#3806)
  • Protobuf upgraded to 3.5.1 (protoc to 3.5.1-1) (#3921)

Bug fixes

  • core: no ProxyDetector for GAE+JDK7 (#3677, fixes #3676)
  • netty: fix server keepalive unexpected ping ack (#3730, fixes #3684)
  • netty: fix unknown content type handling on server (#3735, fixes #3370)
  • core: workaround for Atomic*FieldUpdater bug on some Samsung Android 5.0.x devices (#3754)
  • core: fixed Attributes value equality (#3859, fixes #3857)