github grpc/grpc-go v1.40.0
Release 1.40.0

latest releases: v1.68.0, v1.69.0-dev, v1.65.1...
3 years ago

Behavior Changes

  • balancer: client channel no longer connects to idle subchannels that are returned by the pickers; LB policy should call SubConn.Connect instead. (#4579)
    • This change is in line with existing documentation stating the balancer must call Connect on idle SubConns in order for them to connect, and is preparation for an upcoming change that transitions SubConns to the idle state when connections are lost. See https://pkg.go.dev/google.golang.org/grpc/balancer#SubConn for more details.

Bug Fixes

  • transport: fail RPCs without HTTP status 200 (OK), according to the gRPC spec (#4474)
  • binarylog: fail the Write() method if proto marshaling fails (#4582)
  • binarylog: exit the flusher goroutine upon closing the bufferedSink (#4583)

New Features

  • metadata: add Delete method to MD to encapsulate lowercasing (#4549)
  • xds/cds: support logical DNS cluster and aggregated cluster (#4594)
  • stats: add stats.Begin.IsClientStream and IsServerStream to indicate the type of RPC invoked (#4533)

Performance Improvements

  • server: improve performance when multiple interceptors are used (#4524)

Don't miss a new grpc-go release

NewReleases is sending notifications on new releases.