Releases: grpc/grpc-go
Releases · grpc/grpc-go
Release list
Release 1.68.1
Release 1.67.2
Bug Fixes
- credentials/alts: avoid SRV and TXT lookups for handshaker service to work around hangs caused by buggy versions of systemd-resolved. (#7861)
Release 1.68.0
Known Issues
- The recently added
grpc.NewClientfunction is incompatible with forward proxies, because it resolves the target hostname on the client instead of passing the hostname to the proxy. This bug has been present since the introduction ofNewClient. A fix is expected to be a part of grpc-go v1.70. (#7556)
Behavior Changes
- stats/opentelemetry/csm: Get mesh_id local label from "CSM_MESH_ID" environment variable, rather than parsing from bootstrap file (#7740)
- orca (experimental): if using an ORCA listener, it must now be registered only on a READY SubConn, and the listener will automatically be stopped when the connection is lost. (#7663)
- client:
ClientConn.Close()now closes transports simultaneously and waits for transports to be closed before returning. (#7666) - credentials: TLS credentials created via
NewTLSthat usetls.Config.GetConfigForClientwill now have CipherSuites, supported TLS versions and ALPN configured automatically. These were previously only set for configs not using theGetConfigForClientoption. (#7709)
Bug Fixes
- transport: prevent deadlock in client transport shutdown when writing the GOAWAY frame hangs. (#7662)
- mem: reuse buffers more accurately by using slice capacity instead of length (#7702)
- Special Thanks: @PapaCharlie
- status: Fix regression caused by #6919 in status.Details() causing it to return a wrapped type when getting proto messages generated with protoc-gen-go < v1. (#7724)
Dependencies
- Bump minimum supported Go version to
go1.22.7. (#7624)
Release 1.65.1
Bug Fixes
- xds/server: Fix xDS Server memory leak. (#7664)
Release 1.67.1
Release 1.66.3
Release 1.67.0
Bug Fixes
- ringhash: when used with multiple EDS priorities, fix bug that could prevent a higher priority from recovering from transient failure. (#7364)
- Special Thanks: @atollena
Behavior Changes
- In accordance with RFC 7540, clients and servers will now reject TLS connections that don't support ALPN. This can be disabled by setting the environment variable
GRPC_ENFORCE_ALPN_ENABLEDtofalse(case insensitive). Please file a bug if you encounter any issues with this behavior. The environment variable to revert this behavior will be removed in an upcoming release. (#7535)
Release 1.66.2
Release 1.66.0
New Features
- metadata: stabilize
ValueFromIncomingContext(#7368)- Special Thanks: @KarthikReddyPuli
- client: stabilize the
WaitForStateChangeandGetStatemethods, which were previously experimental. (#7425) - xds: Implement ADS flow control mechanism (#7458)
- See grpc/grpc#34099 for context.
- balancer/rls: Add metrics for data cache and picker internals (#7484, #7495)
- xds: LRS load reports now include the
total_issued_requestsfield. (#7544)
Bug Fixes
- grpc: Clients now return status code INTERNAL instead of UNIMPLEMENTED when the server uses an unsupported compressor. This is consistent with the gRPC compression spec. (#7461)
- Special Thanks: @Gayathri625
- transport: Fix a bug which could result in writes busy looping when the underlying
conn.Writereturns errors (#7394)- Special Thanks: @veshij
- client: fix race that could lead to orphaned connections and associated resources. (#7390)
- xds: use locality from the connected address for load reporting with pick_first (#7378)
- without this fix, if a priority contains multiple localities with pick_first, load was reported for the wrong locality
- client: prevent hanging during ClientConn.Close() when the network is unreachable (#7540)
Performance Improvements
- transport: double buffering is avoided when using an http connect proxy and the target server waits for client to send the first message. (#7424)
- codec: Implement a new
Codecwhich uses buffer recycling for encoded message (#7356)- introduce a
mempackage to facilitate buffer reuse (#7432) - Special Thanks: @PapaCharlie
- introduce a
protoc-gen-go-grpc v1.5.1
Dependencies
- Removed
replacedirective (needed only for testing), since it is incompatible withgo install(#7451).