Skip to content

fix(deps): update module google.golang.org/grpc to v1.85.0 - #44

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/google.golang.org-grpc-1.x
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/google.golang.org-grpc-1.x

Conversation

@renovate

@renovate renovate Bot commented Aug 10, 2026 •

Copy link
Copy Markdown
Contributor

Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
google.golang.org/grpc v1.58.3 → v1.85.0 age confidence

Release Notes

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

v1.85.0: Release 1.85.0

Compare Source

New Features

  • stats: Expose the effective client authority (sent on the wire as the HTTP/2 :authority header) in client stats.OutHeader events. (#​9296)
  • metadata: Add ValueFromOutgoingContext, which reads a single metadata value from outgoing context without copying the entire outgoing metadata into a new map. (#​9282)

Bug Fixes

  • transport: Refine control buffer throttling to only count peer-induced control frames, raise the default GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMIT from 100 to 10,000, and close client connections if reads remain throttled for 10s. (#​9563)
  • server: Ensure Stop() forcefully terminates the server while GracefulStop() is waiting for active handlers to complete. (#​9394)
  • server: Unconditionally increment the highest-seen stream ID on when handling HEADERS frames to comply with RFC 7540 §5.1.1. Previously, truncated HEADERS frames left the connection in an inconsistent state and allowed stream IDs to be reused by clients without resulting in a protocol error. (#​9414)
  • server: Terminate streams immediately when a HEADERS frame includes the EndStream bit. Previously, this caused server handlers to hang when reading a message. (#​9391)
  • server: Reject requests missing both :authority and Host headers with HTTP 400 and status Internal. (#​9365)
  • xds: Fix a bug where route header matchers with non-lowercase names failed to match routes. (#​9353)
  • client: Ensure retried RPCs use the correct :authority value specified by the LB policy instead of inheriting it from a previous attempt. (#​9277)
  • transport: Fail streams with io.ErrUnexpectedEOF instead of io.EOF upon receiving truncated message headers or bodies after partial data has already been received. (#​9204)

v1.84.0: Release 1.84.0

Compare Source

Behavior Changes
  • stats/otel: The grpc.lb.pick_first.* metrics have been removed and replaced with grpc.subchannel.* metrics. See gRFC A94 for more details. (#​9215)
New Features
  • xds: Add support for contains_match in route header matchers. (#​9223)
Bug Fixes
  • client: Fix a bug where a ClientConn could get permanently stuck in IDLE when an RPC was canceled during stream creation. Previously, such cancellations triggered stream cleanup twice, corrupting the channel's idleness state and causing subsequent RPCs to fail with deadline exceeded errors. (#​9191)
  • client: Fix a bug where non-gRPC HTTP responses ending with an empty DATA frame failed the RPC with status code Internal instead of preserving the HTTP-mapped status code and response body. (#​9217)
  • credentials: Validate metadata returned by per-RPC credentials, failing the RPC with status code Internal if invalid keys or values are found. Previously, invalid metadata from credentials was sent to the server in outgoing HTTP/2 requests. (#​9202)
  • credentials/sts: Prevent potential token leakage by disallowing HTTP redirects during STS token exchange. Previously, 3xx redirects were followed automatically, replaying the request body containing authentication tokens to the redirect destination. (#​9299)
  • randomsubsetting: Ignore endpoints that contain no addresses. Previously, this could cause the policy to panic while computing hashes. (#​9259)
  • stats/otel: Ensure method names are populated in trace spans when metrics are disabled. Previously, running with tracing enabled and metrics disabled resulted in server trace spans lacking the RPC method name (recording only "Recv."). (#​9262)
  • transport: Return io.ErrUnexpectedEOF when EOF is encountered after partial header or message body reads. Previously, partial reads could return a plain io.EOF, failing to distinguish truncated data from a clean end of stream. (#​9204)
  • transport: Validate metadata supplied by balancers (in PickResult.Metadata) and resolver addresses, failing the RPC with status code Internal if invalid keys or values are found. Previously, invalid metadata from these sources was sent to the server in outgoing HTTP/2 requests. (#​9203)
  • xds: Fix a rare corner case that could prevent a cluster from being removed when it is no longer in use. (#​9140)
  • xds: Fix panic during route matching for routes containing header matchers with empty exact_match strings. (#​9223)
  • xds: Reject routes containing header matchers with empty prefix_match or suffix_match strings. Previously, this caused a panic during route matching. (#​9223)
  • xds: Fix EDS drop policies being applied at a much lower rate than configured due to an integer overflow. (#​9257)
  • xds: Reject EDS resources containing drop policies with unsupported denominators. Previously, such resources caused the client to panic when calculating drop rates. (#​9218)
  • xds/rbac: Reject RBAC configurations containing nested Principal or Permission rules with :scheme or grpc- prefixed header matchers. Previously, such configurations could cause DENY policies to fail open. (#​9258)
  • xds/rbac: Rewrite host header matchers to :authority in nested Principal and Permission rules. Previously, this rewrite only applied to top-level rules, causing nested host matchers to never match incoming requests and DENY policies to fail open. (#​9258)
  • xds/rbac: Reject CidrRanges with an unset prefix length. Previously, an omitted prefix_len field caused a panic during RBAC configuration parsing. (#​9250)
Performance Improvements
  • transport: Avoid a heap allocation when flushing shared write buffers. (#​9233)
  • credentials/alts: Support dynamic frame size negotiation and add the GRPC_GO_EXPERIMENTAL_ALTS_MAX_FRAME_SIZE environment variable (default 4KiB, max 512KiB) to configure the maximum ALTS record frame size. (#​9268)

v1.83.2: Release 1.83.2

Compare Source

Security
  • server: Reject requests missing both :authority and Host headers with HTTP 400 and status Internal. (#​9365)

v1.83.1: Release 1.83.1

Compare Source

Security

  • xds/rbac: Fix a bug where nested Principal or Permission rules with :scheme or grpc- prefixed header matchers were not rejected, which could cause DENY rules to fail open. (#​9258)
  • xds/rbac: Fix a bug where the host header matcher was not being replaced with :authority in nested Principal or Permission rules. (#​9258)
  • xds/rbac: Fix a bug where a header matcher whose name was not lowercase, such as X-Role, matched no header, which could cause DENY rules to fail open. (#​9332)
  • xds/rbac: Fix a bug where a :scheme or grpc- prefixed header matcher was accepted when its name was not lowercase. (#​9332)
  • xds/rbac: Fix a bug where a Host header matcher was not replaced with :authority. (#​9332)

Performance

  • transport: Restrict memory overhead of buffering small data frames. (#​9331)

v1.83.0: Release 1.83.0

Compare Source

Security

  • server: Stop reading from connections when flooded by HTTP/2 frames to mitigate resource exhaustion. The default value for this limit is 100 frames, excluding DATA and HEADERS, and may be changed by setting environment variable GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMIT.
  • xds/rbac: Support Metadata and RequestedServerName permissions matcher fields. If present in a DENY rule, previously these would be ignored and fail-open.
  • xds/rbac: Fix panic when parsing unsupported fields in NotRule/NotId permissions.
  • xds/rbac: Support the deprecated source_ip principal identifier by treating it as equivalent to direct_remote_ip.
  • xds: Fix panic when parsing route header matchers configured with empty exact_match, prefix_match, or suffix_match strings. (#​9223)

New Features

  • xds/googlec2p: Enable DirectPath over Interconnect support for on-premises clients via the force-xds target URI query parameter. (#​9133)
  • xds: Enable xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports. (#​9145)
  • authz: Add OnPolicyUpdate callback to FileWatcherOptions to notify when an authz policy is loaded or updated. (#​9142)
  • xds: Add support for the GCP Authentication HTTP Filter, which automatically fetches and attaches GCP Service Account Identity JWT tokens to outgoing RPCs.
    • This feature can be enabled by setting environment variable GRPC_EXPERIMENTAL_XDS_GCP_AUTHENTICATION_FILTER=true. (#​9119)
  • xds: Add support for xDS-based HTTP CONNECT proxies.
    • This feature can be enabled by setting environment variable GRPC_EXPERIMENTAL_XDS_HTTP_CONNECT=true. (#​9151)
  • xds: Add support for contains_match in route header matchers. (#​9223)

Bug Fixes

  • credentials/alts: Fix panic when processing malformed frames by validating that the message frame length exceeds the message type field size. (#​9197)
  • grpc: Fix compilation on Plan 9 targets (GOOS=plan9), broken since v1.81.0. (#​9255)

v1.82.2: Release 1.82.2

Compare Source

Security

  • server: Reject requests missing both :authority and Host headers with HTTP 400 and status Internal. (#​9365)

v1.82.1: Release 1.82.1

Compare Source

Security

  • server: Stop reading from the connection when flooded by HTTP/2 frames. The default value for this limit is 100 frames, excluding DATA and HEADERS, and may be changed by setting environment variable GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMIT.
  • xds/rbac: Support Metadata and RequestedServerName permissions matcher fields. If present in a DENY rule, previously these would be ignored and fail-open.
  • xds/rbac: Fix panic when parsing unsupported fields in NotRule/NotId permissions.
  • xds/rbac: Support the deprecated source_ip principal identifier by treating it as equivalent to direct_remote_ip.

v1.82.0: Release 1.82.0

Compare Source

Behavior Changes

  • server: Remove support for GRPC_GO_EXPERIMENTAL_DISABLE_STRICT_PATH_CHECKING environment varibale. Strict incoming RPC path validation (which has been the default since v1.79.3) can no longer be disabled. (#​9112)
  • transport: Add environment variable to change the default max header list size from 16MB to 8KB. This may be enabled by setting GRPC_GO_EXPERIMENTAL_ENABLE_8KB_DEFAULT_HEADER_LIST_SIZE=true. This will be enabled by default in a subsequent release. (#​9019)
  • balancer: Load Balancing policy registry is now case-sensitive. Set GRPC_GO_EXPERIMENTAL_CASE_SENSITIVE_BALANCER_REGISTRIES=false (and file an issue) to revert to case-insensitive behavior. (#​9017)

New Features

  • experimental/stats: Expose a new API, NewContextWithLabelCallback, to register a callback that is invoked when telemetry labels are added. (#​8877)
  • client: Return a portion of the response body in the error message, when the client receives an unexpected non-gRPC HTTP response, to make debugging easier. (#​8929)
  • server: Add environment variable GRPC_GO_SERVER_GOROUTINE_LABELS that controls setting runtime/pprof.Labels on goroutines spawned by the server. Set GRPC_GO_SERVER_GOROUTINE_LABELS=grpc.method=true to add the grpc.method label on goroutines spawned to handle incoming requests. (#​9082)

Bug Fixes

  • xds/server: Fix a memory leak of HTTP filter instances occurring when route configurations are updated in-place during a Route Discovery Service (RDS) update. (#​9138)
  • grpc: In the deprecated gzip Compressor (used via the deprecated WithCompressor dial option), enforce the MaxRecvMsgSize limit on the decompressed message buffer, preventing excessive memory allocation from highly compressed payloads. (#​9114)
  • stats/opentelemetry: Record retry attempts, grpc.previous-rpc-attempts, at the call level and not the attempt level. (#​8923)
  • encoding: Ensure Close() is always called on readers returned from Compressor.Decompress if possible. (#​9135)
  • channelz: Fix the LastMessageSentTimestamp and LastMessageReceivedTimestamp fields in SocketMetrics to ensure they contain correct timestamp values. (#​9109)

v1.81.1: Release 1.81.1

Compare Source

Security

  • xds/rbac: Fix a potential authorization bypass caused by incorrectly falling through URI/DNS SANs to Subject Distinguished Name (DN) when matching the authenticated principal name. With this fix, only the first non-empty identity source will be used, as per gRFC A41. (#​9111)

Bug Fixes

  • otel: Segregate client and server RPC information used for metrics and traces, to avoid one overwriting the other. (#​9081)

v1.81.0: Release 1.81.0

Compare Source

Behavior Changes

  • balancer/rls: Switch gauge metrics to asynchronous emission (once per collection cycle) to reduce telemetry noise and align with other gRPC language implementations. (#​8808)

Dependencies

  • Minimum supported Go version is now 1.25. (#​8969)

Bug Fixes

  • xds: Use the leaf cluster's security config for the TLS handshake instead of the aggregate cluster's config. (#​8956)
  • transport: Send a RST_STREAM when receiving an END_STREAM when the stream is not already half-closed. (#​8832)
  • xds: Fix ADS resource name validation to prevent a panic. (#​8970)

New Features

  • grpc/stats: Add support for custom labels in per-call metrics (gRFC A108). (#​9008)
  • xds: Add support for Server Name Indication (SNI) and SAN validation (gRFC A101). Disabled by default. To enable, set GRPC_EXPERIMENTAL_XDS_SNI=true environment variable. (#​9016)
  • xds: Add support to control which fields get propagated from ORCA backend metric reports to LRS load reports (gRFC A85). Disabled by default. To enable, set GRPC_EXPERIMENTAL_XDS_ORCA_LRS_PROPAGATION=true. (#​9005)
  • xds: Add metrics to track xDS client connectivity and cached resource state (gRFC A78). (#​8807)
  • stats/otel: Enhance grpc.subchannel.disconnections metric by adding disconnection reason to the grpc.disconnect_error label (gRFC A94). This provides granular insights into why subchannels are closing. (#​8973)
  • mem: Add mem.Buffer.Slice() API to slice the buffer like a slice. (#​8977)

Performance Improvements

  • alts: Pool read buffers to lower memory utilization when sockets are unreadable. (#​8964)
  • transport: Pool HTTP/2 framer read buffers to reduce idle memory consumption. Currently limited to Linux for ALTS and non-encrypted transports (TCP, Unix). To disable, set GRPC_GO_EXPERIMENTAL_HTTP_FRAMER_READ_BUFFER_POOLING=false and report any issues. (#​9032)

v1.80.0: Release 1.80.0

Compare Source

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 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)
  • mem: add a faster tiered buffer pool; use the experimental mem.NewBinaryTieredBufferPool function to create such pools. (#​8775)

v1.79.3: Release 1.79.3

Compare Source

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)

v1.79.2: Release 1.79.2

Compare Source

Bug Fixes

  • stats: Prevent redundant error logging in health/ORCA producers by skipping stats/tracing processing when no stats handler is configured. (#​8874)

v1.79.1: Release 1.79.1

Compare Source

Bug Fixes

  • grpc: Remove the -dev suffix from the User-Agent header. (#​8902)

v1.79.0: Release 1.79.0

Compare Source

API Changes

  • mem: Add experimental API SetDefaultBufferPool to change the default buffer pool. (#​8806)
  • 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)

Bug Fixes

  • credentials/tls: Fix a bug where the port was not stripped from the authority override before validation. (#​8726)
  • xds/priority: Fix a bug causing delayed failover to lower-priority clusters when a higher-priority cluster is stuck in CONNECTING state. (#​8813)
  • health: Fix a bug where health checks failed for clients using legacy compression options (WithDecompressor or RPCDecompressor). (#​8765)
  • transport: Fix an issue where the HTTP/2 server could skip header size checks when terminating a stream early. (#​8769)
  • server: Propagate status detail headers, if available, when terminating a stream during request header processing. (#​8754)

Performance Improvements

  • credentials/alts: Optimize read buffer alignment to reduce copies. (#​8791)
  • mem: Optimize pooling and creation of buffer objects. (#​8784)
  • transport: Reduce slice re-allocations by reserving slice capacity. (#​8797)

v1.78.0: Release 1.78.0

Compare Source

Behavior Changes

  • client: Align URL validation with Go 1.26+ to now reject target URLs with unbracketed colons in the hostname. (#​8716)
  • transport/client : Return status code Unknown on malformed grpc-status. (#​8735)
    • xds/resolver:
    • Drop previous route resources and report an error when no matching virtual host is found.
    • Only log LDS/RDS configuration errors following a successful update and retain the last valid resource to prevent transient failures. (#​8711)

New Features

  • stats/otel: Add backend service label to weighted round robin metrics as part of A89. (#​8737)
  • stats/otel: Add subchannel metrics (without the disconnection reason) to eventually replace the pickfirst metrics. (#​8738)
  • client: Wait for all pending goroutines to complete when closing a graceful switch balancer. (#​8746)
  • client: Add experimental.AcceptCompressors so callers can restrict the grpc-accept-encoding header advertised for a call. (#​8718)

Bug Fixes

  • xds: Fix a bug in StringMatcher where regexes would match incorrectly when ignore_case is set to true. (#​8723)
  • client:
    • Change connectivity state to CONNECTING when creating the name resolver (as part of exiting IDLE).
    • Change connectivity state to TRANSIENT_FAILURE if name resolver creation fails (as part of exiting IDLE).
    • Change connectivity state to IDLE after idle timeout expires even when current state is TRANSIENT_FAILURE.
    • Fix a bug that resulted in OnFinish call option not being invoked for RPCs where stream creation failed. (#​8710)
  • xdsclient: Fix a race in the xdsClient that could lead to resource-not-found errors. (#​8627)

Performance Improvements

  • mem: Round up to nearest 4KiB for pool allocations larger than 1MiB. (#​8705)

v1.77.0: Release 1.77.0

Compare Source

API Changes

  • mem: Replace the Reader interface with a struct for better performance and maintainability. (#​8669)

Behavior Changes

  • balancer/pickfirst: Remove support for the old pick_first LB policy via the environment variable GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST=false. The new pick_first has been the default since v1.71.0. (#​8672)

Bug Fixes

  • xdsclient: Fix a race condition in the ADS stream implementation that could result in resource-not-found errors, causing the gRPC client channel to move to TransientFailure. (#​8605)
  • client: Ignore HTTP status header for gRPC streams. (#​8548)
  • client: Set a read deadline when closing a transport to prevent it from blocking indefinitely on a broken connection. (#​8534)
  • client: Fix a bug where default port 443 was not automatically added to addresses without a specified port when sent to a proxy.
    • Setting environment variable GRPC_EXPERIMENTAL_ENABLE_DEFAULT_PORT_FOR_PROXY_TARGET=false disables this change; please file a bug if any problems are encountered as we will remove this option soon. (#​8613)
  • balancer/pickfirst: Fix a bug where duplicate addresses were not being ignored as intended. (#​8611)
  • server: Fix a bug that caused overcounting of channelz metrics for successful and failed streams. (#​8573)
  • balancer/pickfirst: When configured, shuffle addresses in resolver updates that lack endpoints. Since gRPC automatically adds endpoints to resolver updates, this bug only affects custom LB policies that delegate to pick_first but don't set endpoints. (#​8610)
  • mem: Clear large buffers before re-using. (#​8670)

Performance Improvements

New Features

  • outlierdetection: Add metrics specified in gRFC A91. (#​8644)
  • stats/opentelemetry: Add support for optional label grpc.lb.backend_service in per-call metrics (#​8637)
  • xds: Add support for JWT Call Credentials as specified in gRFC A97. Set environment variable GRPC_EXPERIMENTAL_XDS_BOOTSTRAP_CALL_CREDS=true to enable this feature. (#​8536)
  • experimental/stats: Add support for up/down counters. (#​8581)

v1.76.0: Release 1.76.0

Compare Source

Dependencies

Bug Fixes

  • client: Return status INTERNAL when a server sends zero response messages for a unary or client-streaming RPC. (#​8523)
  • client: Fail RPCs with status INTERNAL instead of UNKNOWN upon receiving http headers with status 1xx and END_STREAM flag set. (#​8518)
  • pick_first: Fix race condition that could cause pick_first to get stuck in IDLE state on backend address change. (#​8615)

New Features

  • credentials: Add credentials/jwt package providing file-based JWT PerRPCCredentials (A97). (#​8431)

Performance Improvements

  • client: Improve HTTP/2 header size estimate to reduce re-allocations. (#​8547)
  • encoding/proto: Avoid redundant message size calculation when marshaling. (#​8569)

v1.75.1: Release 1.75.1

Compare Source

Bug Fixes

  • transport: Fix a data race while copying headers for stats handlers in the std lib http2 server transport. (#​8519)
  • xdsclient:
    • Fix a data race caused while reporting load to LRS. (#​8483)
    • Fix regression preventing empty node IDs when creating an LRS client. (#​8483)
  • server: Fix a regression preventing streams from being cancelled or timed out when blocked on flow control. (#​8528)

v1.75.0: Release 1.75.0

Compare Source

Behavior Changes

  • xds: Remove support for GRPC_EXPERIMENTAL_XDS_FALLBACK environment variable. Fallback support can no longer be disabled. (#​8482)
  • stats: Introduce DelayedPickComplete event, a type alias of PickerUpdated. (#​8465)
    • This (combined) event will now be emitted only once per call, when a transport is successfully selected for the attempt.
    • OpenTelemetry metrics will no longer have multiple "Delayed LB pick complete" events in Go, matching other gRPC languages.
    • A future release will delete the PickerUpdated symbol.
  • credentials: Properly apply grpc.WithAuthority as the highest-priority option for setting authority, above the setting in the credentials themselves. (#​8488)
    • Now that this WithAuthority is available, the credentials should not be used to override the authority.
  • round_robin: Randomize the order in which addresses are connected to in order to spread out initial RPC load between clients. (#​8438)
  • server: Return status code INTERNAL when a client sends more than one request in unary and server streaming RPC. (#​8385)
    • This is a behavior change but also a bug fix to bring gRPC-Go in line with the gRPC spec.

New Features

  • dns: Add an environment variable (GRPC_ENABLE_TXT_SERVICE_CONFIG) to provide a way to disable TXT lookups in the DNS resolver (by setting it to false). By default, TXT lookups are enabled, as they were previously. (#​8377)

Bug Fixes

  • xds: Fix regression preventing empty node IDs in xDS bootstrap configuration. (#​8476)
  • xds: Fix possible panic when certain invalid resources are encountered. (#​8412)
  • xdsclient: Fix a rare panic caused by processing a response from a closed server. (#​8389)
  • stats: Fix metric unit formatting by enclosing non-standard units like call and endpoint in curly braces to comply with UCUM and gRPC OpenTelemetry guidelines. (#​8481)
  • xds: Fix possible panic when clusters are removed from the xds configuration. (#​8428)
  • xdsclient: Fix a race causing "resource doesn not exist" when rapidly subscribing and unsubscribing to the same resource. (#​8369)
  • client: When determining the authority, properly percent-encode (if needed, which is unlikely) when the target string omits the hostname and only specifies a port (grpc.NewClient(":<port-number-or-name>")). (#​8488)

v1.74.3: Release 1.74.3

Compare Source

Bug Fixes

  • xds: Fix a regression preventing empty node IDs in the bootstrap configuration. (#​8476 , #​8483)
  • xdsclient: Fix a data race caused while reporting load to LRS. (#​8483)
  • server: Fix a regression preventing streams from being cancelled or timed out when blocked on flow control. (#​8528)

v1.74.2: Release 1.74.2

Compare Source

New Features

  • grpc: introduce new DialOptions and ServerOptions (WithStaticStreamWindowSize, WithStaticConnWindowSize, StaticStreamWindowSize, StaticConnWindowSize) that force fixed window sizes for all HTTP/2 connections. By default, gRPC uses dynamic sizing of these windows based upon a BDP estimation algorithm. The existing options (WithInitialWindowSize, etc) also disable BDP estimation, but this behavior will be changed in a following release. (#​8283)

API Changes

  • balancer: add ExitIdle method to Balancer interface. Earlier, implementing this method was optional. (#​8367)

Behavior Changes

  • xds: Remove the GRPC_EXPERIMENTAL_ENABLE_LEAST_REQUEST environment variable that allows disabling the least request balancer with xDS. Least request was made available by default with xDS in v1.72.0. (#​8248)
  • server: allow 0s grpc-timeout header values, which older gRPC-Java versions could send. This restores the behavior of grpc-go before v1.73.0. (#​8439)

Bug Fixes

  • googledirectpath: avoid logging the error message Attempt to set a bootstrap configuration... when creating multiple directpath channels. (#​8419)

Performance Improvements

  • transport: reduce heap allocations by pooling objects and avoiding method-to-closure conversions. ([#&

[!IMPORTANT]
✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • 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 PR becomes conflicted, or you tick the rebase/retry checkbox.

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


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

This PR was generated by Mend Renovate. View the repository job log.

@renovate

renovate Bot commented Aug 10, 2026 •

Copy link
Copy Markdown
Contributor Author

ℹ️ 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):

  • 14 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.20 -> 1.26.0
github.com/envoyproxy/go-control-plane v0.12.0 -> v0.14.0
google.golang.org/protobuf v1.32.0 -> v1.36.12
github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4 -> v0.0.0-20260202195803-dba9d589def2
github.com/envoyproxy/protoc-gen-validate v1.0.2 -> v1.3.3
github.com/go-logr/logr v1.1.0 -> v1.4.4
github.com/go-logr/stdr v1.1.0 -> v1.2.2
github.com/golang/protobuf v1.5.3 -> v1.5.4
github.com/google/uuid v1.3.0 -> v1.6.0
golang.org/x/crypto v0.14.0 -> v0.57.0
golang.org/x/net v0.17.0 -> v0.60.0
golang.org/x/sys v0.13.0 -> v0.48.0
golang.org/x/text v0.13.0 -> v0.42.0
google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98 -> v0.0.0-20260817212433-ac3dfec99bb1
google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 -> v0.0.0-20260817212433-ac3dfec99bb1

@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch from 9920e48 to 1ebd460 Compare August 19, 2026 08:00
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.0 fix(deps): update module google.golang.org/grpc to v1.83.1 Aug 19, 2026
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.1 fix(deps): update module google.golang.org/grpc to v1.83.1 - autoclosed Aug 20, 2026
@renovate renovate Bot closed this Aug 20, 2026
@renovate
renovate Bot deleted the renovate/google.golang.org-grpc-1.x branch August 20, 2026 06:00
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.1 - autoclosed fix(deps): update module google.golang.org/grpc to v1.83.1 Aug 21, 2026
@renovate renovate Bot reopened this Aug 21, 2026
@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch 2 times, most recently from 1924cf7 to 36fa3a3 Compare August 25, 2026 22:13
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.1 fix(deps): update module google.golang.org/grpc to v1.83.2 Aug 25, 2026
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.2 fix(deps): update module google.golang.org/grpc to v1.83.2 - autoclosed Aug 28, 2026
@renovate renovate Bot closed this Aug 28, 2026
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.2 - autoclosed fix(deps): update module google.golang.org/grpc to v1.83.2 Aug 29, 2026
@renovate renovate Bot reopened this Aug 29, 2026
@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch from 36fa3a3 to 0a08b1d Compare August 29, 2026 12:31
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.2 fix(deps): update module google.golang.org/grpc to v1.83.2 - autoclosed Aug 30, 2026
@renovate renovate Bot closed this Aug 30, 2026
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.2 - autoclosed fix(deps): update module google.golang.org/grpc to v1.83.2 Sep 2, 2026
@renovate renovate Bot reopened this Sep 2, 2026
@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch 2 times, most recently from 0a08b1d to 59fb5e0 Compare September 2, 2026 05:26
@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch from 59fb5e0 to 0e3a957 Compare September 18, 2026 00:16
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.83.2 fix(deps): update module google.golang.org/grpc to v1.84.0 Sep 18, 2026
@renovate
renovate Bot force-pushed the renovate/google.golang.org-grpc-1.x branch from 0e3a957 to 1ffe9af Compare October 27, 2026 11:08
@renovate renovate Bot changed the title fix(deps): update module google.golang.org/grpc to v1.84.0 fix(deps): update module google.golang.org/grpc to v1.85.0 Oct 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants