Skip to content

build(deps): bump golang.org/x/crypto to v0.58.0, oras-go to v2.6.2 and Go to 1.26 (release-1.3) - #1384

Open
AhmedElket92 wants to merge 1 commit into
notaryproject:release-1.3from
AhmedElket92:deps/release-1.3-x-crypto-oras
Open

AhmedElket92 wants to merge 1 commit into
notaryproject:release-1.3from
AhmedElket92:deps/release-1.3-x-crypto-oras

Conversation

@AhmedElket92

Copy link
Copy Markdown

What

Backport for a v1.3.3 patch release: bumps golang.org/x/crypto from v0.37.0 to v0.58.0 and oras.land/oras-go/v2 from v2.5.0 to v2.6.2 in all three modules, together with the Go version they need. The same x/crypto change for main is #1383.

Why

Bottlerocket ships notation v1.3.2 and already patches it to oras-go v2.6.2 in its own build (bottlerocket-core-kit#1070). With both bumps here, a v1.3.3 is a drop-in replacement for that patch and also fixes the x/crypto CVEs. Context: #1368.

x/crypto v0.56.0 and later require Go 1.26, so this PR also:

  • raises the go directive of the three modules to 1.26.0 (Go 1.23, 1.24 and 1.25 are no longer supported upstream)
  • moves the CI, CodeQL and release workflows from Go 1.23 to Go 1.26
  • updates the Go requirement in building.md
  • renames the three example tests in internal/tree to valid example names (ExampleNode_Print_root, _singleLayer, _multiLayer). With newer Go, go vet (which go test runs) fails on ExampleRootPrint refers to unknown identifier: RootPrint. The examples and their expected output are unchanged.

Testing (Go 1.26.10, linux/amd64)

  • go build ./cmd/notation, then notation version (v1.3.2+unreleased)
  • go test ./...: 14 packages pass (run without -race: no C compiler on the test machine); the three renamed examples run and pass
  • go vet ./... clean in all three modules
  • go mod verify: all modules verified

…2 (release-1.3)

Backport for a v1.3.3 patch release.

golang.org/x/crypto v0.37.0 is affected by seven critical CVEs fixed in
v0.52.0: CVE-2026-39830, CVE-2026-39831, CVE-2026-39832, CVE-2026-39833,
CVE-2026-39834, CVE-2026-42508 and CVE-2026-46595. v0.58.0 also clears
CVE-2026-56855 and CVE-2026-78662.

oras.land/oras-go/v2 v2.5.0 is affected by CVE-2026-50151, CVE-2026-50162,
CVE-2026-50163, CVE-2026-85731, CVE-2026-85732, CVE-2026-48978 and
GHSA-vh4v-2xq2-g5cg, all fixed in v2.6.2.

x/crypto v0.56.0 and later require Go 1.26, so this also:
- raises the go directive of the three modules to 1.26.0
- moves the CI, CodeQL and release workflows to Go 1.26
- updates the Go requirement in building.md
- renames the internal/tree example tests to valid example names
  (ExampleNode_Print_*); go vet on newer Go rejects ExampleRootPrint and
  the others because they refer to unknown identifiers

Signed-off-by: AhmedElket92 <168613104+AhmedElket92@users.noreply.github.com>
@AhmedElket92 AhmedElket92 changed the title build(deps): bump golang.org/x/crypto to v0.58.0 and oras-go to v2.6.2 (release-1.3) build(deps): bump golang.org/x/crypto to v0.58.0, oras-go to v2.6.2 and Go to 1.26 (release-1.3) Nov 8, 2026
@AhmedElket92

Copy link
Copy Markdown
Author

@ginglis13 since you asked for a maintenance release in #1368: this PR would give Bottlerocket a v1.3.3 with golang.org/x/crypto v0.58.0 (fixes the 7 critical x/crypto CVEs) and oras-go v2.6.2, the same version as your bottlerocket-os/bottlerocket-core-kit#1070 patch. It raises the go directive to 1.26.0, which the Bottlerocket SDK already provides (Go 1.26 and 1.27).

Would that work for Bottlerocket? A word from you here would help get it merged and released.

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.

1 participant