Repository navigation
chore(deps): update go-dependencies (9.5) - #8213
Conversation
ℹ️ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
There was a problem hiding this comment.
🟡 Changes recommended
The dependency updates leave NOTICE.txt and NOTICE-fips.txt stale, causing mage check:ci to fail when notice regeneration produces uncommitted changes.
1 open issue
What changed in this PR
Updates Fleet Server’s Go dependencies for the 9.5 branch without changing application code.
Changes:
- Upgrades CBOR to v2.10.0, x/net to v0.62.0, and gRPC to v1.85.0.
- Updates the indirect Google RPC dependency and refreshes checksums, including OpenTelemetry-related changes.
| File | Description |
|---|---|
| go.sum | Refreshes checksums for updated dependencies and transitive versions. |
| go.mod | Updates three direct dependencies and the indirect Google RPC dependency. |
Review effort: Balanced
Dependency Update AnalysisSummary: Reviewed 3 Go module bumps ( Dependency 1: github.com/fxamacker/cbor/v2 v2.9.6 → v2.10.0Ecosystem: Go
Changelog highlights (v2.9.6 → v2.10.0)
Usage in this repository
Compatibility assessmentCurrent usage is basic decode flow (no custom Dependency 2: golang.org/x/net v0.61.0 → v0.62.0Ecosystem: Go
Changelog highlights (v0.61.0 → v0.62.0)Upstream release-note body was unavailable after MCP tag/release lookups (no GitHub release for this tag); local metadata confirms only the version bump. Usage in this repository
Compatibility assessmentObserved usage is test-only helper API ( Dependency 3: google.golang.org/grpc v1.84.0 → v1.85.0Ecosystem: Go
Changelog highlights (v1.84.0 → v1.85.0)
Usage in this repository
Compatibility assessmentRepo usage is integration-test focused and relies on stable server/client setup APIs, which are not reported as removed/changed in the release notes. Labels Applied
What is this? | From workflow: Observability Agentic Workflow — Pull Request Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
Automerge skippedAutomerge skipped this pull request because the To allow automerge for this kind of update, enable the matching collection under Automerge on the Control Plane Dashboard (the See Opt in or opt out for how to enable or disable Automerge collections on the Control Plane Dashboard. Collections currently enabled for automerge: Changed files considered:
|
TL;DR
Remediation
Investigation detailsRoot Cause
Evidence
Verification
Follow-up
What is this? | From workflow: Observability Agentic Workflow — Status Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
|
Dependency review finished without posting an analysis comment. If you expected a review, push a new commit to this pull request (or close and reopen it) to try again. Workflow run: https://github.com/elastic/fleet-server/actions/runs/42546745832 |
Resolved conflicts with #8213 by taking 9.5's go.mod, go.sum, testing/go.mod, testing/go.sum and NOTICE files, then re-pinning github.com/elastic/beats/v7 to the same 9.5 commit, running go mod tidy in both modules and mage check:notice. Co-authored-by: Cursor <cursoragent@cursor.com>

This PR contains the following updates:
v2.9.6→v2.10.0v0.61.0→v0.62.0v1.84.0→v1.85.0Release Notes
fxamacker/cbor (github.com/fxamacker/cbor/v2)
v2.10.0Compare Source
v2.10 speeds up encoding by up to 2.88× and decoding by up to 1.87× with zero memory regressions (B/op, allocs/op), reduces memory use, adds the
toindefarraystruct tag option, and fixes bugs. The Contributing Guidelines, Security Policy, and templates were extensively updated.Encoding sorted nested maps of dynamic JSON-like data to CBOR drops from 70 allocs/op to 1 and from 7.2 KiB/op to 4.0 KiB/op in the benchmarks below. Encoding
time.Time,big.Int,TagandMarshalervalues, and decoding intotime.Time,big.IntandTag, use 1 to 2 fewer allocs/op (20% to 50% fewer).This release does not use Go's
unsafepackage. Performance in user apps depends on configuration and data.Tests were refactored and coverage increased to 97.7%. Fuzz tests (not yet public) were also extended. Internal checklists and procedures were updated to reduce potential mistakes.
Performance and Benchmarks
Across all 215 benchmarks, there are zero memory regressions (B/op, allocs/op). Just one benchmark showed a speed dip:
Marshal/struct_many_flds_all_omitempty_all_empty/mapis ~4-5% slower, but only when a struct has 32 fields that are bothomitzeroand empty (same scenario with an 8-field struct is now faster).Benchmarks ran with Go 1.26.10 on linux/amd64 (benchstat n=10, p=0.000):
CBOR Speedup by Data Type
¹ 2.54× speedup (-60.64%) when decoding into a named
[]bytetype that has methods.² For addressable values (reached through a pointer, struct field, slice element or map value).
³ Only when every field is omitempty and empty: 7.6 ns slower for a 32-field struct, 2.37 ns faster for an 8-field struct. This is the only performance regression in all 215 benchmarks.
CBOR Encoding Reflection-Free Speedup
PR #870 optimized common types:
int,int64,uint,uint64,float64,bool,string,nil,[]byte,[]any,map[any]any,map[string]any, andmap[string]string.v2.9.6 → v2.10
ΔSec/op
ΔB/op
ΔAllocs/op
SortBytewiseLexical. Memory improvements are from #774 and #860.Upgrade Notes
Marshalconfigured to useTagsForbiddenreturns an error for abig.Intoutside [-2^64, 2^64-1], andEncModecreation returns an error for settings that would emit tags ifTagsForbiddenis also set (#868).Decoderadvances past well-formed data items rejected byDecOptionsvalue or serialization restrictions (e.g.NaN,IndefLength), andSkipskips them without an error (#872).Marshalconfigured to emit text-based time returns an error fortime.Timeoutside RFC 3339 limits (#873).TinyGo (experimental)
TinyGo support for v2.10.0 is available in tag
tinygo-beta/v2.10.0-tinygo0.42(branchfeature/cbor-tinygo-beta). It requires TinyGo 0.42.0 or newer. It is experimental and not fuzz tested. For details, see TinyGo (https://github.com/fxamacker/cbor#tinygo) in the README.What's Changed
⭐ Features
🚀 Optimizations
🛠 Improvements
🐞 Bug Fixes
🧪 Testing
📖 Documentation
📖 Contributing Guidelines, Security Policy, and Templates
CI / GitHub Actions
🔎 Details
Other Changes
Ported from release-2.9
Already released in v2.9.3 through v2.9.6.
🔎 Details
Dependabot Updates
🔎 Details
New Contributors
Full Changelog: fxamacker/cbor@v2.9.6...v2.10.0
grpc/grpc-go (google.golang.org/grpc)
v1.85.0: Release 1.85.0Compare Source
New Features
:authorityheader) in clientstats.OutHeaderevents. (#9296)ValueFromOutgoingContext, which reads a single metadata value from outgoing context without copying the entire outgoing metadata into a new map. (#9282)Bug Fixes
GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMITfrom 100 to 10,000, and close client connections if reads remain throttled for10s. (#9563)Stop()forcefully terminates the server whileGracefulStop()is waiting for active handlers to complete. (#9394)HEADERSframes to comply with RFC 7540 §5.1.1. Previously, truncatedHEADERSframes left the connection in an inconsistent state and allowed stream IDs to be reused by clients without resulting in a protocol error. (#9414)HEADERSframe includes theEndStreambit. Previously, this caused server handlers to hang when reading a message. (#9391):authorityandHostheaders with HTTP 400 and statusInternal. (#9365):authorityvalue specified by the LB policy instead of inheriting it from a previous attempt. (#9277)io.ErrUnexpectedEOFinstead ofio.EOFupon receiving truncated message headers or bodies after partial data has already been received. (#9204)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate CLI.