Skip to content

chore(deps): bump google.golang.org/grpc from 1.83.2 to 1.84.0 - #91

Merged
ImMohammad20000 merged 2 commits into
devfrom
dependabot/go_modules/dev/google.golang.org/grpc-1.84.0
Sep 24, 2026
Merged

ImMohammad20000 merged 2 commits into
devfrom
dependabot/go_modules/dev/google.golang.org/grpc-1.84.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 21, 2026

Copy link
Copy Markdown
Contributor

Bumps google.golang.org/grpc from 1.83.2 to 1.84.0.

Release notes

Sourced from google.golang.org/grpc's releases.

Release 1.84.0

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)
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.83.2 to 1.84.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](grpc/grpc-go@v1.83.2...v1.84.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.84.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Sep 21, 2026
@coderabbitai

coderabbitai Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 646b8a0b-ef2c-4e33-ae61-88aa6c654d64

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@ImMohammad20000

Copy link
Copy Markdown
Contributor

@dependabot rebase

@dependabot @github

dependabot Bot commented on behalf of github Sep 24, 2026

Copy link
Copy Markdown
Contributor Author

Looks like this PR is already up-to-date with dev! If you'd still like to recreate it from scratch, overwriting any edits, you can request @dependabot recreate.

@ImMohammad20000
ImMohammad20000 merged commit 52d5aab into dev Sep 24, 2026
2 checks passed
@dependabot
dependabot Bot deleted the dependabot/go_modules/dev/google.golang.org/grpc-1.84.0 branch September 24, 2026 10:13
Free-Guy-IR added a commit to Free-Guy-IR/node that referenced this pull request Oct 9, 2026
The release lead holds upstream 52d5aab (grpc 1.84.0, PasarGuard#91) out of 0.6.21,
so the node stays on grpc 1.83.2. The Go vulnerability database still
lists released v1.84.0 as affected by GO-2026-6443 (golang/vulndb #6511,
#6580), although the fix is verified in v1.84.0 http2_server.go, so the
bump would make govulncheck fail. It is waived as pending until the
database entry is corrected. docs/upstream-parity.md said 0.6.21 would
port it; that row now records the hold.

So that pending waivers cannot be forgotten, scripts/upstream_drift.sh
now ends every run with a PENDING WAIVERS (N) block. The block lists
each waived item whose category is pending, across node, xray, sing-box,
sing-quic and mtg, with its component, id and reason. Pending items stay
waived; the exit code rules are unchanged.

The state section names the node heads checked on 2026-09-24. Upstream
dev moved past be2c445 to 4a9d0cf, which adds PasarGuard#90 (configurable
WireGuard server interface MTU). That commit is new, not assessed, and
flagged by the check.

In the run with this change, the block lists 52 pending items, and 3
items remain UNPORTED: be2c445 and 4a9d0cf on node, and the new sing-box
release v1.14.2 (af6e64c3b69e).
Free-Guy-IR added a commit to Free-Guy-IR/node that referenced this pull request Oct 30, 2026
Each reason was re-checked on 2026-10-25 before its date moved:
- The xray pin is still d2758a0 (v26.3.27), so the items taken with the
  pin move keep that condition. patches/xray-router-race.patch is still
  carried for 598bde7, and e03754d still needs Xray's UserManager.
- drift6 still pins sing-box v1.13.14 (4a87f50) while the fork's main
  carries v1.13.21, so the node 0.6.22 items stay pending. The node code
  still generates no rule_set.
- The sing-box 1.14 line stays planned after node 0.6.22.
These move to 2026-11-20.

Five reasons rely on a production check from 2026-09-25 that core 1's
change on 2026-10-21 may have outdated: three say no prod core has an
xhttp client outbound, and two say prod runs only Hysteria2 on
sing-box. They move only to 2026-10-31, until that check is re-run.

52d5aab (PasarGuard#91, grpc 1.84.0) is not renewed: GO-2026-6443 no longer lists
the released v1.84.0 (entry modified 2026-10-06), and v0.5.5 contains the
commit, so its condition is met.
Free-Guy-IR added a commit to Free-Guy-IR/node that referenced this pull request Nov 2, 2026
Port of upstream PasarGuard#91, matching upstream release v0.5.5 (47857d4), which
pins the same grpc 1.84.0, genproto/googleapis/rpc
20260706201446-f0a921348800 and protobuf 1.36.12. go.mod and go.sum match
upstream's hunks exactly. Tidy drops the otel, logr and xxhash sums. Tidied
with Go 1.26.10. Every new go.sum line matches sum.golang.org.

Upstream's other two hunks do not apply. Its controller.go hunk gofmts
`now:=` in the free function keepAliveStale(lastRequest, keepAlive). This
fork's watchdog port (40248f2) has the method (c *Controller)
keepAliveStale, which is already gofmt-clean. Its controller_test.go hunk
fixes the call shape in TestKeepAliveStaleIncludesGrace, a test this fork
never took; the grace is covered by
TestKeepAliveWatchdogAllowsAGraceBeyondKeepAlive in watchdog_test.go.

What changes on the node's gRPC server: unary RPCs now go through the
streaming pipeline. The cardinality tests in the previous commit pin that
change. Unchanged between the two versions: keepalive, the tap handle, TLS
credentials, flow control and window sizes, and the message-size limits,
which the unary path now enforces through serverStream RecvMsg/SendMsg with
the same values.

This port was held on 2026-09-24 because govulncheck flagged GO-2026-6443
against released 1.84.0, which was a false positive in the vulnerability
database. The database entry changed on 2026-10-06: the 1.84.0-dev range now
ends at a pseudo-version, so 1.84.0 is no longer listed.

RED: on grpc 1.83.2, two of the five cardinality tests fail. A second request
message is answered OK, and the answer comes before the caller half-closes.
GREEN: controller/rpc/preauth passes with -race -count=3. go build ./...,
GOOS=linux go vet ./... and go mod verify pass. govulncheck v1.8.0
(linux/amd64, database of 2026-10-21) reports only GO-2026-6651, which is in
the xray-core module and handled separately, and no GO-2026-6443.

Upstream: 52d5aab
Free-Guy-IR added a commit to Free-Guy-IR/node that referenced this pull request Nov 2, 2026
The drift check reports 52d5aab (PasarGuard#91, grpc 1.84.0), 1ae411b (PasarGuard#104, x/sys
0.49.0), f58fce8 (PasarGuard#106, chi 5.4.0) and 5cbcb5f (PasarGuard#108, chi 5.5.0) as PORTED
through their Upstream: lines, with "the waiver for this commit is no longer
needed". Those four pending waivers are removed. The parity table records the
four ports, and the node section of the parity doc no longer says that grpc
1.84.0 is held.

The parity doc gets the Go 1.26.10 sentence (GO-2026-6809) and F-SEC1026-V1.
The constitution moves from 1.1.2 to 1.1.3 (PATCH: the Release Constraints
toolchain value only), with approval pending. The gate-container image and
the gate checker's Go in specs/002 and specs/003 name 1.26.10. These are prose
and data changes only.

This is the drift commit of the pre-linear sec1026 merge line, re-applied
linearly. The bundle no longer arrives through merge commits, so that
commit's two allowed-merge lines, for merges that do not exist on this line,
are left out.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant