Skip to content

Releases: grpc/grpc-go

GCP Observability v1.0.0

18 Apr 17:27
b91b884

Choose a tag to compare

The observability module provides GCP users with a simple way to export RPC logging, tracing, and metrics to Google Cloud Operations. This is the first (GA) release of this module. For more information, please see this blog post.

OpenCensus v1.0.0

17 Apr 23:42
eab9e20

Choose a tag to compare

This module adds support for instrumenting gRPC with OpenCensus tracing and metrics. It does so through a Dial Option and a Server Option users can attach to their created Channels and Servers.

Release 1.54.0

22 Mar 00:44
2997e84

Choose a tag to compare

Behavior Changes

  • xds: remove support for xDS v2 transport API (#6013)

New Features

  • server: expose SetSendCompressor API to set send compressor name (#5744)
  • xdsclient: include Node proto only in the first discovery request message, to improve performance (#6078)

Bug Fixes

  • metadata: fix validation logic and properly validate metadata appended via AppendToOutgoingContext (#6001)
  • transport: do not close connections when we encounter I/O errors until after all data is consumed (#6110)
  • ringhash: ensure addresses are consistently hashed across updates (#6066)
  • xds/clusterimpl: fix a bug causing unnecessary closing and re-opening of LRS streams (#6112)
  • xds: NACK route configuration if sum of weights of weighted clusters exceeds uint32_max (#6085)

Documentation

  • resolver: update Resolver.Scheme() docstring to mention requirement of lowercase scheme names (#6014)
  • resolver: document expected error handling of UpdateState errors (#6002)
    • Special Thanks: @fho
  • examples: add example for ORCA load reporting (#6114)
  • examples: add an example to illustrate authorization (authz) support (#5920)

protoc-gen-go-grpc v1.3.0

01 Mar 23:51
8ba23be

Choose a tag to compare

New features

  • Export consts for full method names (#5886)
  • Include file level comment from proto definition in pb.go output, similar to protoc-gen-go (#5540)

Release 1.53.0

07 Feb 22:01
dba26e1

Choose a tag to compare

API Changes

  • balancer: support injection of per-call metadata from LB policies (#5853)
  • resolver: remove deprecated field resolver.Target.Endpoint and replace with resolver.Target.Endpoint() (#5852)

New Features

  • xds/ringhash: introduce GRPC_RING_HASH_CAP environment variable to override the maximum ring size. (#5884)
  • rls: propagate headers received in RLS response to backends (#5883)

Bug Fixes

  • transport: drain client transport when streamID approaches MaxStreamID (#5889)
  • server: after GracefulStop, ensure connections are closed when final RPC completes (#5968)
  • server: fix a few issues where grpc server uses RST_STREAM for non-HTTP/2 errors (#5893)
  • xdsclient: fix race which can happen when multiple load reporting calls are made at the same time. (#5927)
  • rls: fix a data race involving the LRU cache (#5925)
  • xds: fix panic involving double close of channel in xDS transport (#5959)
  • gcp/observability: update method name validation (#5951)

Documentation

  • credentials/oauth: mark NewOauthAccess as deprecated (#5882)

Release 1.52.3

25 Jan 20:26
fe39661

Choose a tag to compare

Bug Fixes

  • Fix user-agent version

Release 1.52.2

25 Jan 19:44
533d7fd

Choose a tag to compare

Bug Fixes

  • xds: fix panic involving double close of channel in xDS transport (#5959)

Release 1.52.1

24 Jan 21:21
2b4813f

Choose a tag to compare

Bug Fixes

  • grpclb: rename grpclbstate package back to state (#5963)

Release 1.52.0

10 Jan 22:28
ce56cef

Choose a tag to compare

New Features

  • xdsclient: log node ID with verbosity INFO (#5860)
  • ringhash: impose cap on max_ring_size to reduce possibility of OOMs (#5801)

Behavior Changes

  • client: return an error from Dial if an empty target is passed and no custom dialer is present; the ClientConn would otherwise be unable to connect and perform RPCs (#5732)

Bug Fixes

  • transport (net/http server handler): respond to bad HTTP requests with status 400 (Bad Request) instead of 500 (Internal Server Error). (#5804)
  • transport: Fixed closing a closed channel panic in handlePing (#5854)
  • server: fix ChainUnaryInterceptor and ChainStreamInterceptor to allow retrying handlers (#5666)
  • transport: ensure value of :authority header matches server name used in TLS handshake when the latter is overridden by the name resolver (#5748)

Documentation

  • examples: add an example to illustrate the usage of stats handler (#5657)
  • examples: add new example to show updating metadata in interceptors (#5788)

Release 1.51.0

18 Nov 16:57
eeb9afa

Choose a tag to compare

Behavior Changes

  • xds: NACK EDS resources with duplicate addresses in accordance with a recent spec change (#5715)
  • grpc: restrict status codes that can be generated by the control plane (gRFC A54) (#5653)

New Features

  • client: set grpc-accept-encoding header with all registered compressors (#5541)
  • xds/weightedtarget: return a more meaningful error when all child policies are in TRANSIENT_FAILURE (#5711)
  • gcp/observability: add "started rpcs" metric (#5768)
  • xds: de-experimentalize the google-c2p-resolver (#5707)
  • balancer: add experimental Producer types and methods (#5669)
  • orca: provide a way for LB policies to receive OOB load reports (#5669)

Bug Fixes

  • go.mod: upgrade x/text dependency to address CVE 2022-32149 (#5769)
  • client: fix race that could lead to an incorrect connection state if it was closed immediately after the server's HTTP/2 preface was received (#5714)
  • xds: ensure sum of the weights of all EDS localities at the same priority level does not exceed uint32 max (#5703)
  • client: fix binary logging bug which logs a server header on a trailers-only response (#5763)
  • balancer/priority: fix a bug where unreleased references to removed child policies (and associated state) was causing a memory leak (#5682)
  • xds/google-c2p: validate URI schema for no authorities (#5756)