Skip to content

Update module google.golang.org/grpc to v1.64.0

renovate requested to merge renovate/google.golang.org-grpc-1.x into master

This MR contains the following updates:

Package Type Update Change
google.golang.org/grpc require minor v1.58.3 -> v1.64.0

Release Notes

grpc/grpc-go (google.golang.org/grpc)

v1.64.0: Release 1.64.0

Compare Source

API Changes

  • stats: Deprecate InPayload.Data and OutPayload.Data; they were experimental and will be deleted in the next release (#​7121)

Behavior Changes

  • codec: Remove handling of environment variable GRPC_GO_ADVERTISE_COMPRESSORS to suppress setting supported compressors in grpc-accept-encoding header. Compressors will always be advertised, as they have been by default for some time (#​7203)

New Features

  • resolver/dns: Add SetMinResolutionInterval to set the minimum interval at which DNS re-resolutions may occur (#​6962)
  • peer/peer: Implement the fmt.Stringer interface for pretty printing Peer, and
  • metadata/metadata: Implement the fmt.Stringer interface for pretty printing MD (#​7137)

Performance Improvements

  • client: Improve RPC performance by reducing work while holding a lock (#​7132)

Bug Fixes

  • transport/server: Display the proper timeout value when keepalive pings are not ack'd in time (#​7038)
  • channelz: Fix bug that was causing the subchannel's target to be unset (#​7189)
  • stats: Fix bug where peer was not set in context when calling stats handler for OutPayload, InPayload, and End (#​7096)

Dependencies

  • deps: Remove dependency on deprecated github.com/golang/protobuf module (#​7122)

Documentation

  • grpc: Deprecate WithBlock, WithReturnConnectionError, FailOnNonTempDialError which are ignored by NewClient (#​7097)
  • grpc: Deprecate Dial and DialContext. These will continue to be supported throughout 1.x, but are deprecated to direct users to NewClient (See #​7090 for more information)
  • examples: Add custom lb example (#​6691)

v1.63.2: Release 1.63.2

Compare Source

Bugs

  • Fix the user agent string

v1.63.1: Release 1.63.1

Compare Source

Bugs

API Changes

  • grpc: remove Deprecated tag from Dial and DialContext; these will be deprecated in v1.64 instead (#​7103)

v1.63.0: Release 1.63.0

Compare Source

Behavior Changes

  • grpc: Return canonical target string from resolver.Address.String() (experimental) (#​6923)
  • client & server: when using write buffer pooling, use input value for buffer size instead of size*2 (#​6983)

New Features

  • grpc: add ClientConn.CanonicalTarget() to return the canonical target string. (#​7006)
  • xds: implement LRS named metrics support (gRFC A64) (#​7027)
  • grpc: introduce grpc.NewClient to allow users to create new clients in idle mode and with "dns" as the default resolver (#​7010)

API Changes

  • grpc: stabilize experimental method ClientConn.Target() (#​7006)

Bug Fixes

  • xds: fix an issue that would cause the client to send an empty list of resources for LDS/CDS upon reconnecting with the management server (#​7026)
  • server: Fix some errors returned by a server when using a grpc.Server as an http.Handler with the Go stdlib HTTP server (#​6989)
  • resolver/dns: add SetResolvingTimeout to allow configuring the DNS resolver's global timeout (#​6917)
  • Set the security level of Windows named pipes to NoSecurity (#​6956)

v1.62.2: Release 1.62.2

Compare Source

Dependencies

v1.62.1: Release 1.62.1

Compare Source

Bug Fixes

  • xds: fix a bug that results in no matching virtual host found RPC errors due to a difference between the target and LDS resource names (#​6997)
  • server: fixed stats handler data InPayload.Length for unary RPC calls (#​6766)
  • grpc: the experimental RecvBufferPool DialOption and ServerOption are now active during unary RPCs with compression (#​6766)
  • grpc: trim whitespaces in accept-encoding header before determining compressors

v1.62.0: Release 1.62.0

Compare Source

New Features

  • grpc: Add StaticMethod CallOption as a signal to stats handler that a method is safe to use as an instrument key (#​6986)

Behavior Changes

  • grpc: Return canonical target string from ClientConn.Target() and resolver.Address.String() (#​6923)

Bug Fixes

  • server: wait to close connection until incoming socket is drained (with timeout) to prevent data loss on client-side (#​6977)

Performance Improvements

  • *: Allow building without x/net/trace by using grpcnotrace to enable dead code elimination (#​6954)
  • rand: improve performance and simplify implementation of grpcrand by adopting math/rand's top-level functions for go version 1.21.0 and newer. (#​6925)

Dependencies

  • *: Use google.golang.org/protobuf/proto instead of github.com/golang/protobuf. (#​6919)

[!NOTE] The above change in proto library usage introduces a minor behavior change within those libraries. The old github.com/golang/protobuf library would error if given a nil message to Marshal, while the new google.golang.org/protobuf library will successfully output zero bytes in this case. This means server method handlers that did return nil, nil will now return an empty message and no error, while it used to return an error. This also affects the client side, where clients sending nil messages used to fail without sending the RPC, and now they will send an empty message.

v1.61.2: Release 1.61.2

Compare Source

Dependencies

v1.61.1: Release 1.61.1

Compare Source

Bug Fixes

  • server: wait to close connection until incoming socket is drained (with timeout) to prevent data loss on client-side (#​6977)

v1.61.0: Release 1.61.0

Compare Source

New Features

  • resolver: provide method, AuthorityOverrider, to allow resolver.Builders to override the default authority for a ClientConn. (EXPERIMENTAL) (#​6752)
  • xds: add support for mTLS Credentials in xDS bootstrap (gRFC A65) (#​6757)
  • server: add grpc.WaitForHandlers ServerOption to cause Server.Stop to block until method handlers return. (EXPERIMENTAL) (#​6922)

Performance Improvements

Bug Fixes

  • client: correctly enable TCP keepalives with OS defaults on windows (#​6863)
  • server: change some stream operations to return UNAVAILABLE instead of UNKNOWN when underlying connection is broken (#​6891)
  • server: fix GracefulStop to block until all method handlers return (v1.60 regression). (#​6922)
  • server: fix two bugs that could lead to panics at shutdown when using NumStreamWorkers (EXPERIMENTAL). (#​6856)
  • reflection: do not send invalid descriptors to clients for files that cannot be fully resolved (#​6771)
  • xds: don't fail channel/server startup when xds creds is specified, but bootstrap is missing certificate providers (#​6848)
  • xds: Atomically read and write xDS security configuration client side (#​6796)
  • xds/server: fix RDS handling for non-inline route configs (#​6915)

v1.60.1

Compare Source

Bug Fixes

  • server: fix two bugs that could lead to panics at shutdown when using NumStreamWorkers (experimental feature).

v1.60.0: Release 1.60.0

Compare Source

Security

  • credentials/tls: if not set, set TLS MinVersion to 1.2 and CipherSuites according to supported suites not forbidden by RFC7540.
    • This is a behavior change to bring us into better alignment with RFC 7540.

API Changes

  • resolver: remove deprecated and experimental ClientConn.NewServiceConfig (#​6784)
  • client: remove deprecated grpc.WithServiceConfig DialOption (#​6800)

Bug Fixes

  • client: fix race that could cause a deadlock while entering idle mode and receiving a name resolver update (#​6804)
  • client: always enable TCP keepalives with OS defaults (#​6834)
  • credentials/alts: fix a bug preventing ALTS from connecting to the metadata server if the default scheme is overridden (#​6686)

Behavior Changes

  • server: Do not return from Stop() or GracefulStop() until all resources are released (#​6489)

Documentation

  • codes: clarify that only codes defined by this package are valid and that users should not cast other values to codes.Code (#​6701)

v1.59.0: Release 1.59.0

Compare Source

Behavior Changes

  • balancer: grpc will switch to case-sensitive balancer names soon; log a warning if a capital letter is encountered in an LB policy name (#​6647)
  • server: allow applications to send arbitrary data in the grpc-status-details-bin trailer (#​6662)
  • client: validate grpc-status-details-bin trailer and pass through the trailer to the application directly (#​6662)

New Features

  • tap (experimental): Add Header metadata to tap handler (#​6652)
  • grpc: channel idleness enabled by default with an idle_timeout of 30m (#​6585)

Documentation

  • examples: add an example of flow control behavior (#​6648)

Bug Fixes

  • xds: fix hash policy header to skip "-bin" headers and read content-type header as expected (#​6609)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited by renovate

Merge request reports