build(deps): Bump golang.org/x/net from 0.58.0 to 0.59.0 - #1470
Conversation
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.58.0 to 0.59.0. - [Commits](golang/net@v0.58.0...v0.59.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-version: 0.59.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
PR HygieneState: waiting-bots · commit
Self-review is an author attestation that you have read the diff: This report does not bypass CI or repository protection rules. |
|
@thepastaclaw review No review for |
|
✅ Final review complete — no blockers (commit af2cdab) · triage: low · Phase 2 only (queue backlog) |
thepastaclaw
left a comment
There was a problem hiding this comment.
Final validation — Phase 2 only (queue backlog)
The diff changes only go.mod and go.sum, updating golang.org/x/net and four companion modules with corresponding checksum entries; no concrete in-scope defect was identified. git diff --check passed. Focused Makefile tests for RPC, P2P connections, private validators, and secp256k1 stopped during dependency resolution because updated modules were not cached and network downloads were disabled, so runtime compatibility remains unverified.
Review provenance
Source: reviewer 1: gpt-6-astra (agent: phase2-reviewer, role: general); reviewer 2: gpt-6-astra (agent: phase2-reviewer, role: tenderdash-consensus-security); final verifier: gpt-6-astra (agent: astra-verifier, role: final-verifier)
- Triage:
lowbygpt-6-astra(effort low) — The diff is a small, contained dependency update limited to go.mod and go.sum, requiring version and compatibility checks but changing no application logic or critical surface directly. - Phase 1 reviewers: not run (skipped for throughput: 12 PRs queued, above the 10 limit)
- Fresh verifier:
gpt-6-astra— final-verifier; agentastra-verifier - Phase 2 reviewers:
gpt-6-astra— general (completed, effort medium); agentphase2-reviewer,gpt-6-astra— tenderdash-consensus-security (completed, effort medium); agentphase2-reviewer
Dependency security review —
|
| Module | From → To | Code delta |
|---|---|---|
| golang.org/x/net | 0.58.0 → 0.59.0 | see below |
| golang.org/x/crypto | 0.56.0 → 0.57.0 | go.mod only, no source changes |
| golang.org/x/text | 0.41.0 → 0.42.0 | unicode/norm, unicode/bidi, idna export, japanese encoding |
| golang.org/x/term | 0.45.0 → 0.46.0 | terminal.go ReadLine |
| golang.org/x/mod | 0.40.0 → 0.41.0 | doc comments only |
Integrity
- All 10
go.sumhashes (h1 + go.mod) match independentgo mod downloadthrough proxy.golang.org withGOSUMDB=sum.golang.orgverification;go mod verify→ all modules verified. - Proxy origin: x/net v0.59.0 = go.googlesource.com/net
540d04cf, x/text v0.42.0 =fafe4a06(official tags).
Reachability (go list -deps of ./cmd/... ./node/...)
Linked x/net packages: http2, http2/hpack, http/httpguts, idna, internal/httpcommon, internal/httpsfv, internal/timeseries, netutil, trace, context (mostly via grpc). Tenderdash imports only x/net/netutil directly (unchanged).
Source diff review (reachable code)
- http2: bulk of the change is
Deprecated:doc annotations pointing tonet/httpequivalents (http2.Server,ConfigureServer,Transportfields,ClientConn).databuffer.go/trace/histogram.go:min/maxrefactors, behavior-identical.authorityAddrnow runsidna.Lookup.ToASCIIonly for non-ASCII hosts (stricter profile; on failure host kept as before) — hardening. - internal/httpcommon (server request parsing): now rejects
Hostheader ≠:authority, multipleHostheaders, and authority failinghttpguts.ValidHostHeader— host-confusion/smuggling hardening. Only relevant to x/net's server path; tenderdash does not runhttp2.Server/h2cdirectly. - h2c: doc-only (warns first request is fully buffered — use
http.MaxBytesHandler). Not used by tenderdash. dns/dnsmessage,html,quic,internal/http3,webdav: not linked into tenderdash.- x/text
unicode/norm: fixes recomposition map key truncation (16-bit clipping → full 21-bit runes), starter-blocking tracking during composition, Hangul + combining-mark composition, and an invalid-char path that returned 0 progress (potential no-progress loop) now consumes the byte.TransformErrShortSrc condition corrected; verifiedquickSpanwitheof=trueconsumes the full input, so no new loop at EOF. Net: correctness/robustness improvements for IDNA/PRECIS normalization. - x/text
unicode/bidi:log.Panic→panic(no more stderr logging on assert). Neutral. - x/term:
ReadLinenow returns data received together with a read error before surfacing the error — correctness fix, no security impact. - Toolchain: x/net 0.59.0 requires Go ≥ 1.26; repo pins
go 1.27.1(go.mod, CI, Docker) — compatible. On go1.27 the x/nethttp2.Transportwrapsnet/http(transport_wrap.go,!http2legacy), unchanged by this bump.
Vulnerability research
OSV.dev / Go vuln DB queried for x/net, x/text, x/term, x/crypto: every 2026 advisory (e.g. GO-2026-5942 dnsmessage panic, GO-2026-5970 x/text infinite loop, GO-2026-6354/6355 x/crypto/ssh DoS) is fixed at or below the old versions — none affects 0.58.0 nor 0.59.0, none introduced. govulncheck CI green independently confirms.
Verification
- CI on head
d3bfe25: build, go vet, golangci-lint, govulncheck, tests (00–05), e2e (dashcore, rotate), test_apps, test_abci_cli — all pass. - Local build not reproduced (native
dashblsheaders absent on audit host); CI is the build/test evidence.
🍬 Tally: 0 critical · 0 high · 0 medium · 0 low. Clean.
🤖 Co-authored by Claudius the Magnificent AI Agent
Bumps golang.org/x/net from 0.58.0 to 0.59.0.
Commits
540d04cgo.mod: update golang.org/x dependencies20eef7fquic: clear fast-path receive buffer on stream resetc23af1binternal/http3: fix compilation error due to missed symbol name updateeda109finternal/http3: send appropriate error codes in STOP_SENDING frames12e0501internal/http3: server header size limitsd89285equic: add Stream.StopSending, and rework stream/application errorsd34deaequic: ensure Endpoint.Close waits for connection loops to exit55577aahttp2: use IDNA Lookup profile, not raw Punycode translationb22627einternal/http3: handle a nil TLSConfig in newQUICConfig6e98b0dinternal/http3: report endpoint creation errors from initEndpointDependabot 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 rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill 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 versionwill 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 dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)