Skip to content

build(deps): bump secrets-engine/client to v0.2.2 - #14361

Merged
ndeloof merged 2 commits into
docker:mainfrom
Benehiko:bump-secrets-engine-client
Oct 21, 2026
Merged

ndeloof merged 2 commits into
docker:mainfrom
Benehiko:bump-secrets-engine-client

Conversation

@Benehiko

@Benehiko Benehiko commented Oct 19, 2026 •

Copy link
Copy Markdown
Member

What I did

  • Bumped github.com/docker/secrets-engine/client from v0.2.0 to v0.2.2 and secrets-engine/x from v0.8.3 to v0.8.5. Both require go >= 1.26.10. main already uses 1.26.10 in .go-version and the Dockerfile, so the only Go change here is the go directive in go.mod, from 1.26.8 to 1.26.10.
  • Removed jwtExpiry from internal/registry/desktop.go: compose no longer parses exp out of the access token itself. client v0.2.2 rejects stored tokens that are not JWTs (ErrInvalidAccessToken, which wraps ErrNoSession). Docker Desktop's docker-auth store already fills in the claims, expiry included, from the JWT when it saves a Hub credential and when it reads one from the legacy credential helper. Claims.ExpiresAt is therefore the only expiry source compose needs. A session without an expiry claim is still reused for sessionTTL.

Testing

  • go build ./... and golangci-lint run --build-tags e2e ./... pass with Go 1.26.10.
  • go test ./internal/... ./cmd/... ./pkg/... passes, except for three pkg/watch tests (TestGitBranchSwitch, TestWatchBrokenLink, TestWatchCountInnerFile). They also fail on main on macOS, and this change doesn't touch pkg/watch.

AI disclosure

Prepared with an AI coding agent (alki, running Claude) and reviewed by the author.

@docker-agent docker-agent left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟢 APPROVE

@codecov

codecov Bot commented Oct 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@Benehiko

Copy link
Copy Markdown
Member Author

Added a second commit that removes jwtExpiry: compose no longer parses exp out of the access token itself. Docker Desktop's docker-auth store already fills in the claims, expiry included, from the JWT. It does this when saving a Hub credential (enrichHubCredential in pinata's internal/store) and when reading one from the legacy credential helper (mergeTokenPair in docker-auth). Together with the JWT check in client v0.2.1, Claims.ExpiresAt is the only expiry source compose needs. A session without an expiry claim is still reused for sessionTTL. (Comment posted by an AI agent on the author's behalf.)

@ndeloof

ndeloof commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

AI_AGENT_DISCLOSURE.md file must be removed from your commit once you confirm having reviewed changes on your own (this is to prevent automated PRs created by AI farms)

Comment thread .go-version Outdated
@@ -1 +1 @@
1.26.9
1.27.2

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is go1.27 required for secrets-engine? If not, can we keep it on go1.26?

the Go version in go.mod should stick to MVS (https://research.swtch.com/vgo-mvs), like all other dependencies.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(at least if go1.27 is an absolute requirement, it should not include a .patch version, or it should be .0)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

downgraded to 1.26.10 on the SDK so this should be good now

@Benehiko Benehiko changed the title build: bump Go to 1.27.2 and secrets-engine/client to v0.2.1 build: bump secrets-engine/client to v0.2.2 and Go to 1.26.10 Oct 21, 2026
@Benehiko
Benehiko force-pushed the bump-secrets-engine-client branch from a19affd to 4174651 Compare October 21, 2026 14:46
@Benehiko Benehiko changed the title build: bump secrets-engine/client to v0.2.2 and Go to 1.26.10 build(deps): bump secrets-engine/client to v0.2.2 Oct 21, 2026
client v0.2.2 rejects stored Docker Hub access tokens that are not JWTs; GetDefaultSession returns ErrInvalidAccessToken, which wraps ErrNoSession. secrets-engine/x moves to v0.8.5 with it. Both require go >= 1.26.10, which .go-version and the Dockerfile already use, so the go directive moves from 1.26.8 to 1.26.10.

Signed-off-by: Alano Terblanche <18033717+Benehiko@users.noreply.github.com>
Docker Desktop's docker-auth store fills in the access-token claims, expiry included, from the JWT when it saves a Hub credential, and when it reads one from the legacy credential helper. secrets-engine/client v0.2.2 rejects tokens that are not JWTs. So compose no longer needs to parse exp out of the token itself. A session without an expiry claim is still reused for sessionTTL.

Signed-off-by: Alano Terblanche <18033717+Benehiko@users.noreply.github.com>
@Benehiko
Benehiko force-pushed the bump-secrets-engine-client branch from 4174651 to 93c0742 Compare October 21, 2026 14:47
@Benehiko
Benehiko marked this pull request as ready for review October 21, 2026 15:01
@Benehiko
Benehiko requested review from a team as code owners October 21, 2026 15:01
@Benehiko
Benehiko requested review from glours and ndeloof October 21, 2026 15:01
@Benehiko

Copy link
Copy Markdown
Member Author

I bump Go in this PR @ndeloof @glours; I suppose you would rather want it in another PR with its own commit?

@docker-agent docker-agent left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟢 APPROVE

@ndeloof
ndeloof merged commit 20ca595 into docker:main Oct 21, 2026
64 of 66 checks passed
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.

5 participants