Skip to content

Upgrade Docker SDK v24→v27 to fix API version 1.43 incompatibility#117

Merged
alexec merged 4 commits intomainfrom
copilot/update-client-version
Mar 31, 2026
Merged

Upgrade Docker SDK v24→v27 to fix API version 1.43 incompatibility#117
alexec merged 4 commits intomainfrom
copilot/update-client-version

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 31, 2026

Newer Docker daemons enforce a minimum API version of 1.44, causing pulls to fail with client version 1.43 is too old. The root cause was github.com/docker/docker v24.0.9, whose max supported API version is 1.43.

Changes

  • go.mod: Upgrade github.com/docker/docker v24.0.9 → v27.5.1 (default API version 1.47)
  • internal/proc/container.go / hack/examples.go: Update to types reorganized in v25+:
    • github.com/docker/distribution/referencegithub.com/distribution/reference
    • dockertypes.{ContainerRemoveOptions,ContainerStartOptions,ContainerLogsOptions,ContainerListOptions}dockercontainer.{RemoveOptions,StartOptions,LogsOptions,ListOptions}
    • dockertypes.ImagePullOptionsdockerimage.PullOptions (new github.com/docker/docker/api/types/image import)

Copilot AI changed the title [WIP] Fix Docker client version issue for image pulling Upgrade Docker SDK v24→v27 to fix API version 1.43 incompatibility Mar 31, 2026
Copilot AI requested a review from alexec March 31, 2026 20:11
@alexec alexec marked this pull request as ready for review March 31, 2026 20:12
Copilot AI review requested due to automatic review settings March 31, 2026 20:12
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR upgrades the Docker Go SDK to a newer major version to resolve failures against newer Docker daemons that reject API version 1.43, and updates call sites to match Docker SDK package/type reorganizations.

Changes:

  • Upgrade github.com/docker/docker from v24 → v27 and refresh transitive deps (go.mod/go.sum).
  • Update Docker SDK imports/types in container execution code to the newer api/types/{container,image} option structs and new github.com/distribution/reference module.
  • Update the hack example image-pull helper to use the new image.PullOptions type.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
internal/proc/container.go Updates Docker SDK imports and switches to new option types for container/image APIs.
hack/examples.go Switches ImagePull options type to dockerimage.PullOptions.
go.mod Upgrades Docker SDK version and adds github.com/distribution/reference; also changes Go version directive.
go.sum Updates checksums for upgraded/added dependencies.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Alex Collins <alexec@users.noreply.github.com>
@alexec
Copy link
Copy Markdown
Collaborator

alexec commented Mar 31, 2026

@copilot fix build, keeping older go version if possible, if not, then upgrade.

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 31, 2026

@copilot fix build, keeping older go version if possible, if not, then upgrade.

Fixed in bbafcef. The CI failure was caused by transitive otel packages (v1.42.0) requiring Go 1.25, while go.mod specified go 1.23. Pinned the otel packages to v1.38.0 and auto/sdk to v1.2.0 (both require Go 1.23 max) and restored the original go 1.23.0 / toolchain go1.23.7 directives.

Copilot AI requested a review from alexec March 31, 2026 20:49
@alexec alexec merged commit 8047019 into main Mar 31, 2026
2 checks passed
@alexec alexec deleted the copilot/update-client-version branch March 31, 2026 20:52
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.

3 participants