balancer: log a warning if a balancer is registered with uppercase letters, as balancer names should be lowercase. In a future release, balancer names will be treated as case-insensitive; see #5288 for details. (#8837)
xds: update resource error handling and re-resolution logic (#8907)
Re-resolve all LOGICAL_DNS clusters simultaneously when re-resolution is requested.
Fail all in-flight RPCs immediately upon receipt of listener or route resource errors, instead of allowing them to complete.
Bug Fixes
xds: support the LB policy configured in LOGICAL_DNS cluster resources instead of defaulting to pick_first. (#8733)
credentials/tls: perform per-RPC authority validation against the leaf certificate instead of the entire peer certificate chain. (#8831)
xds: enabling A76 ring hash endpoint keys no longer causes EDS resources with invalid proxy metadata to be NACKed when HTTP CONNECT (gRFC A86) is disabled. (#8875)
xds: validate that the sum of endpoint weights in a locality does not exceed the maximum uint32 value. (#8899)
xds: fix incorrect proto field access in the weighted round robin (WRR) configuration where blackout_period was used instead of weight_expiration_period. (#8915)
xds/rbac: handle addresses with ports in IP matchers. (#8990)
New Features
ringhash: enable gRFC A76 (endpoint hash keys and request hash headers) by default. (#8922)
Performance Improvements
credentials/alts: pool write buffers to reduce memory allocations and usage. (#8919)
grpc: enable the use of pooled write buffers for buffering HTTP/2 frame writes by default. This reduces memory usage when connections are idle. Use the WithSharedWriteBuffer dial option or the SharedWriteBuffer server option to disable this feature. (#8957)
xds/priority: stop caching child LB policies removed from the configuration. This will help reduce memory and cpu usage when localities are constantly switching between priorities. (#8997)
server: fix an authorization bypass where malformed :path headers (missing the leading slash) could bypass path-based restricted "deny" rules in interceptors like grpc/authz. Any request with a non-canonical path is now immediately rejected with an Unimplemented error. (#8981)
experimental/stats: Update MetricsRecorder to require embedding the new UnimplementedMetricsRecorder (a no-op struct) in all implementations for forward compatibility. (#8780)
Behavior Changes
balancer/weightedtarget: Remove handling of Addresses and only handle Endpoints in resolver updates. (#8841)
New Features
experimental/stats: Add support for asynchronous gauge metrics through the new AsyncMetricReporter and RegisterAsyncReporter APIs. (#8780)
pickfirst: Add support for weighted random shuffling of endpoints, as described in gRFC A113.
This is enabled by default, and can be turned off using the environment variable GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING. (#8864)
xds: Implement :authority rewriting, as specified in gRFC A81. (#8779)
balancer/randomsubsetting: Implement the random_subsetting LB policy, as specified in gRFC A68. (#8650)
This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `v1.78.0` → `v1.80.0` |  |  |
---
### Release Notes
<details>
<summary>grpc/grpc-go (google.golang.org/grpc)</summary>
### [`v1.80.0`](https://github.com/grpc/grpc-go/releases/tag/v1.80.0): Release 1.80.0
[Compare Source](https://github.com/grpc/grpc-go/compare/v1.79.3...v1.80.0)
### Behavior Changes
- balancer: log a warning if a balancer is registered with uppercase letters, as balancer names should be lowercase. In a future release, balancer names will be treated as case-insensitive; see [#​5288](https://github.com/grpc/grpc-go/issues/5288) for details. ([#​8837](https://github.com/grpc/grpc-go/issues/8837))
- xds: update resource error handling and re-resolution logic ([#​8907](https://github.com/grpc/grpc-go/issues/8907))
- Re-resolve all `LOGICAL_DNS` clusters simultaneously when re-resolution is requested.
- Fail all in-flight RPCs immediately upon receipt of listener or route resource errors, instead of allowing them to complete.
### Bug Fixes
- xds: support the LB policy configured in `LOGICAL_DNS` cluster resources instead of defaulting to `pick_first`. ([#​8733](https://github.com/grpc/grpc-go/issues/8733))
- credentials/tls: perform per-RPC authority validation against the leaf certificate instead of the entire peer certificate chain. ([#​8831](https://github.com/grpc/grpc-go/issues/8831))
- xds: enabling A76 ring hash endpoint keys no longer causes EDS resources with invalid proxy metadata to be NACKed when HTTP CONNECT (gRFC A86) is disabled. ([#​8875](https://github.com/grpc/grpc-go/issues/8875))
- xds: validate that the sum of endpoint weights in a locality does not exceed the maximum `uint32` value. ([#​8899](https://github.com/grpc/grpc-go/issues/8899))
- Special Thanks: [@​RAVEYUS](https://github.com/RAVEYUS)
- xds: fix incorrect proto field access in the weighted round robin (WRR) configuration where `blackout_period` was used instead of `weight_expiration_period`. ([#​8915](https://github.com/grpc/grpc-go/issues/8915))
- Special Thanks: [@​gregbarasch](https://github.com/gregbarasch)
- xds/rbac: handle addresses with ports in IP matchers. ([#​8990](https://github.com/grpc/grpc-go/issues/8990))
### New Features
- ringhash: enable gRFC A76 (endpoint hash keys and request hash headers) by default. ([#​8922](https://github.com/grpc/grpc-go/issues/8922))
### Performance Improvements
- credentials/alts: pool write buffers to reduce memory allocations and usage. ([#​8919](https://github.com/grpc/grpc-go/issues/8919))
- grpc: enable the use of pooled write buffers for buffering HTTP/2 frame writes by default. This reduces memory usage when connections are idle. Use the [WithSharedWriteBuffer](https://pkg.go.dev/google.golang.org/grpc#WithSharedWriteBuffer) dial option or the [SharedWriteBuffer](https://pkg.go.dev/google.golang.org/grpc#SharedWriteBuffer) server option to disable this feature. ([#​8957](https://github.com/grpc/grpc-go/issues/8957))
- xds/priority: stop caching child LB policies removed from the configuration. This will help reduce memory and cpu usage when localities are constantly switching between priorities. ([#​8997](https://github.com/grpc/grpc-go/issues/8997))
- mem: add a faster tiered buffer pool; use the experimental [mem.NewBinaryTieredBufferPool](https://pkg.go.dev/google.golang.org/grpc/mem@master#NewBinaryTieredBufferPool) function to create such pools. ([#​8775](https://github.com/grpc/grpc-go/issues/8775))
### [`v1.79.3`](https://github.com/grpc/grpc-go/releases/tag/v1.79.3): Release 1.79.3
[Compare Source](https://github.com/grpc/grpc-go/compare/v1.79.2...v1.79.3)
### Security
- server: fix an authorization bypass where malformed :path headers (missing the leading slash) could bypass path-based restricted "deny" rules in interceptors like `grpc/authz`. Any request with a non-canonical path is now immediately rejected with an `Unimplemented` error. ([#​8981](https://github.com/grpc/grpc-go/issues/8981))
### [`v1.79.2`](https://github.com/grpc/grpc-go/releases/tag/v1.79.2): Release 1.79.2
[Compare Source](https://github.com/grpc/grpc-go/compare/v1.79.1...v1.79.2)
### Bug Fixes
- stats: Prevent redundant error logging in health/ORCA producers by skipping stats/tracing processing when no stats handler is configured. ([#​8874](https://github.com/grpc/grpc-go/pull/8874))
### [`v1.79.1`](https://github.com/grpc/grpc-go/releases/tag/v1.79.1): Release 1.79.1
[Compare Source](https://github.com/grpc/grpc-go/compare/v1.79.0...v1.79.1)
### Bug Fixes
- grpc: Remove the `-dev` suffix from the User-Agent header. ([#​8902](https://github.com/grpc/grpc-go/pull/8902))
### [`v1.79.0`](https://github.com/grpc/grpc-go/releases/tag/v1.79.0): Release 1.79.0
[Compare Source](https://github.com/grpc/grpc-go/compare/v1.78.0...v1.79.0)
### API Changes
- mem: Add experimental API `SetDefaultBufferPool` to change the default buffer pool. ([#​8806](https://github.com/grpc/grpc-go/issues/8806))
- Special Thanks: [@​vanja-p](https://github.com/vanja-p)
- experimental/stats: Update `MetricsRecorder` to require embedding the new `UnimplementedMetricsRecorder` (a no-op struct) in all implementations for forward compatibility. ([#​8780](https://github.com/grpc/grpc-go/issues/8780))
### Behavior Changes
- balancer/weightedtarget: Remove handling of `Addresses` and only handle `Endpoints` in resolver updates. ([#​8841](https://github.com/grpc/grpc-go/issues/8841))
### New Features
- experimental/stats: Add support for asynchronous gauge metrics through the new `AsyncMetricReporter` and `RegisterAsyncReporter` APIs. ([#​8780](https://github.com/grpc/grpc-go/issues/8780))
- pickfirst: Add support for weighted random shuffling of endpoints, as described in [gRFC A113](https://github.com/grpc/proposal/pull/535).
- This is enabled by default, and can be turned off using the environment variable `GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING`. ([#​8864](https://github.com/grpc/grpc-go/issues/8864))
- xds: Implement `:authority` rewriting, as specified in [gRFC A81](https://github.com/grpc/proposal/blob/master/A81-xds-authority-rewriting.md). ([#​8779](https://github.com/grpc/grpc-go/issues/8779))
- balancer/randomsubsetting: Implement the `random_subsetting` LB policy, as specified in [gRFC A68](https://github.com/grpc/proposal/blob/master/A68-random-subsetting.md). ([#​8650](https://github.com/grpc/grpc-go/issues/8650))
- Special Thanks: [@​marek-szews](https://github.com/marek-szews)
### Bug Fixes
- credentials/tls: Fix a bug where the port was not stripped from the authority override before validation. ([#​8726](https://github.com/grpc/grpc-go/issues/8726))
- Special Thanks: [@​Atul1710](https://github.com/Atul1710)
- xds/priority: Fix a bug causing delayed failover to lower-priority clusters when a higher-priority cluster is stuck in `CONNECTING` state. ([#​8813](https://github.com/grpc/grpc-go/issues/8813))
- health: Fix a bug where health checks failed for clients using legacy compression options (`WithDecompressor` or `RPCDecompressor`). ([#​8765](https://github.com/grpc/grpc-go/issues/8765))
- Special Thanks: [@​sanki92](https://github.com/sanki92)
- transport: Fix an issue where the HTTP/2 server could skip header size checks when terminating a stream early. ([#​8769](https://github.com/grpc/grpc-go/issues/8769))
- Special Thanks: [@​joybestourous](https://github.com/joybestourous)
- server: Propagate status detail headers, if available, when terminating a stream during request header processing. ([#​8754](https://github.com/grpc/grpc-go/issues/8754))
- Special Thanks: [@​joybestourous](https://github.com/joybestourous)
### Performance Improvements
- credentials/alts: Optimize read buffer alignment to reduce copies. ([#​8791](https://github.com/grpc/grpc-go/issues/8791))
- mem: Optimize pooling and creation of `buffer` objects. ([#​8784](https://github.com/grpc/grpc-go/issues/8784))
- transport: Reduce slice re-allocations by reserving slice capacity. ([#​8797](https://github.com/grpc/grpc-go/issues/8797))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled because a matching PR was automerged previously.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDAuMiIsInVwZGF0ZWRJblZlciI6IjQzLjEwMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
### ℹ️ Artifact update notice
##### File name: go.mod
In order to perform the update(s) described in the table above, Renovate ran the `go get` command, which resulted in the following additional change(s):
- 1 additional dependency was updated
Details:
| **Package** | **Change** |
| :------------------------------------------ | :--------------------------------------------------------------------------- |
| `google.golang.org/genproto/googleapis/rpc` | `v0.0.0-20251222181119-0a764e51fe1b` -> `v0.0.0-20260120221211-b8f7ae30c516` |
Renovate-Clanker
changed title from fix(deps): update module google.golang.org/grpc to v1.80.0 to fix(deps): update module google.golang.org/grpc to v1.80.0 - autoclosed2026-04-01 21:22:59 +07:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
v1.78.0→v1.80.0Release Notes
grpc/grpc-go (google.golang.org/grpc)
v1.80.0: Release 1.80.0Compare Source
Behavior Changes
LOGICAL_DNSclusters simultaneously when re-resolution is requested.Bug Fixes
LOGICAL_DNScluster resources instead of defaulting topick_first. (#8733)uint32value. (#8899)blackout_periodwas used instead ofweight_expiration_period. (#8915)New Features
Performance Improvements
v1.79.3: Release 1.79.3Compare Source
Security
grpc/authz. Any request with a non-canonical path is now immediately rejected with anUnimplementederror. (#8981)v1.79.2: Release 1.79.2Compare Source
Bug Fixes
v1.79.1: Release 1.79.1Compare Source
Bug Fixes
-devsuffix from the User-Agent header. (#8902)v1.79.0: Release 1.79.0Compare Source
API Changes
SetDefaultBufferPoolto change the default buffer pool. (#8806)MetricsRecorderto require embedding the newUnimplementedMetricsRecorder(a no-op struct) in all implementations for forward compatibility. (#8780)Behavior Changes
Addressesand only handleEndpointsin resolver updates. (#8841)New Features
AsyncMetricReporterandRegisterAsyncReporterAPIs. (#8780)GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING. (#8864):authorityrewriting, as specified in gRFC A81. (#8779)random_subsettingLB policy, as specified in gRFC A68. (#8650)Bug Fixes
CONNECTINGstate. (#8813)WithDecompressororRPCDecompressor). (#8765)Performance Improvements
bufferobjects. (#8784)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled because a matching PR was automerged previously.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
ℹ️ Artifact update notice
File name: go.mod
In order to perform the update(s) described in the table above, Renovate ran the
go getcommand, which resulted in the following additional change(s):Details:
google.golang.org/genproto/googleapis/rpcv0.0.0-20251222181119-0a764e51fe1b->v0.0.0-20260120221211-b8f7ae30c516fix(deps): update module google.golang.org/grpc to v1.80.0to fix(deps): update module google.golang.org/grpc to v1.80.0 - autoclosedPull request closed