Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Prepare release notes for client/v0.1.0-beta.0#50913

Merged
thaJeztah merged 2 commits into
moby:masterfrom
dmcgowan:prepare-client-0.1.0-beta
Sep 5, 2025
Merged

Prepare release notes for client/v0.1.0-beta.0#50913
thaJeztah merged 2 commits into
moby:masterfrom
dmcgowan:prepare-client-0.1.0-beta

Conversation

@dmcgowan

@dmcgowan dmcgowan commented Sep 5, 2025

Copy link
Copy Markdown
Member

Prepare release notes for client/v0.1.0-beta.0


Welcome to the client/v0.1.0-beta.0 release of moby!
This is a pre-release of moby

The first dedicated release for the Moby Client. This is a 0.x release
since changes to the Go interface are still being considered.

Highlights

  • Go SDK: Fix data race in ContainerExecStart, ContainerList, and Events. (#50448)
  • Go SDK: client: add DefaultAPIVersion const, which defines the default (and maximum) API version supported by the client. (#50433)
  • Go-SDK: Remove buildkit.ClientOpts (#50318)

API

  • Go SDK: api/types/checkpoint: move checkpoint options to client module (#50905)
  • api/types/build: move CachePruneOptions type to client.BuildCachePruneOptions (#50772)
  • Go SDK: api/types/container: move container options to client (#50897)
  • Go-SDK: the types "github.com/moby/moby/api/types/network".Summary and "github.com/moby/moby/api/types/network".Inspect are no longer aliases, and most of their fields have been moved into an embedded struct. Engine API clients may require some source-level changes when migrating to the new github.com/moby/moby/api module. (#50878)
  • api: remove unused DefaultVersion, MinSupportedAPIVersion consts (#50587)
  • Improve errors when failing to connect to the API to provide more context to the user. (#50285)

Client

  • Go SDK: api/types/checkpoint: move checkpoint options to client module (#50905)
  • Improve errors when failing to connect to the API to provide more context to the user. (#50285)

Networking

  • Go-SDK: the types "github.com/moby/moby/api/types/network".Summary and "github.com/moby/moby/api/types/network".Inspect are no longer aliases, and most of their fields have been moved into an embedded struct. Engine API clients may require some source-level changes when migrating to the new github.com/moby/moby/api module. (#50878)

Deprecations

  • api/types/strslice: deprecate StrSlice in favor of using a regular []string. (#50292)
  • api/types: move plugin types to api/types/plugin (#48114)
  • GO SDK: api/types/filters: remove deprecated ToParamWithVersion (#50561)
  • Go-SDK: remove deprecated types/plugins/logdriver and types/swarm/runtime packages; plugin-runtime spec is now exposed as types/swarm.RuntimeSpec and types/swarm.RuntimePrivilege (#50554)
  • Go SDK: deprecate pkg/stringid in favour of github.com/moby/moby/client/pkg/stringid (#50504)
  • Go SDK: client: remove deprecated NewClient and NewEnvClient functions.
    Go SDK: client: remove deprecated ErrorConnectionFailed and IsErrNotFound functions.
    Go SDK: client: remove the deprecated Client.ImageInspectWithRaw method.
    Go SDK: client: remove ImageAPIClient.ImageInspectWithRaw from the ImageAPIClient interface.
    Go SDK: client: remove APIClient.ImageInspectWithRaw from the APIClient interface.
    Go SDK: client: remove ImageAPIClientDeprecated.ImageInspectWithRaw from the ImageAPIClientDeprecated.
    Go SDK: client: remove the ImageAPIClientDeprecated interface.
    Go SDK: client: remove the CommonAPIClient interface. (#50485)
  • Go-SDK: deprecate pkg/stdcopy, which was moved to api/stdcopy. (#50462)
  • Go-SDK: Remove buildkit.ClientOpts (#50318)

Please try out the release binaries and report any issues at
https://github.com/moby/moby/issues.

Contributors

  • Sebastiaan van Stijn
  • Austin Vazquez
  • Paweł Gronowski
  • Derek McGowan
  • Matthieu MOREL
  • Cory Snider
  • Akihiro Suda
  • Alessio Perugini
  • Brian Goff
  • Medhy DOHOU

Changes

201 commits

  • f26acad638 Prepare release notes for client/v0.1.0-beta.0
  • 0622b8e806 Update client api version to v1.52.0-beta
  • api/types/image: move LoadResponse to client (#50909)
    • 8b8a3cb14c api/types/image: move LoadResponse to client
  • api/types/checkpoint: move checkpoint options to client (#50905)
    • a8afc2c6fb api/types/checkpoint: move checkpoint options to client
  • api/types/build: move build cache prune options from api to client (#50772)
    • 26e335b647 api/types/build: move CachePruneOptions to client mod
  • api/types/container: move container options to client (#50897)
    • 57ce548341 client: move container options together with their users
    • 4d20b6fe56 api/types/container: move container options to client
  • api/types/network: separate Summary from Inspect (#50878)
    • 1a86389419 api/types/network: separate Summary from Inspect
  • api: remove unused DefaultVersion, MinSupportedAPIVersion consts (#50587)
    • e46a991dc5 api: remove unused DefaultVersion, MinSupportedAPIVersion consts
  • api/types/system: move SecurityOpt and DecodeSecurityOptions to client mod (#50825)
    • e2e9f36c5f api/types/system: move SecurityOpt type and DecodeSecurityOptions to client
  • fix: client vendor with config struct changes (#50886)
    • ca97d071b7 fix: client vendor with config struct changes
  • client: Migrate tests to use functional opts and extract clientConfig (#50847)
    • 20b679b4a6 client: Extract clientConfig for opt applying
    • 9ddf9d87e7 client: Remove newMockClient
    • 7cd089edd9 client/volume_test: Use functional option to create mock client
    • 72e11d78d7 client/task_test: Use functional option to create mock client
    • a1e304f76c client/system_test: Use functional option to create mock client
    • 407af72993 client/swarm_test: Use functional option to create mock client
    • 124bba478a client/service_test: Use functional option to create mock client
    • 98434a5ea4 client/secret_test: Use functional option to create mock client
    • c99f2eaf34 client/request_test: Use functional option to create mock client
    • 8581a15c25 client/plugin_test: Use functional option to create mock client
    • 0b577c703a client/ping_test: Use functional option to create mock client
    • d401228b43 client/options_test: Use functional option to create mock client
    • 643e94ebf5 client/node_test: Use functional option to create mock client
    • 5a82c3397e client/network_test: Use functional option to create mock client
    • be76beee8f client/image_test: Use functional option to create mock client
    • 005a289703 client/distribution_test: Use functional option to create mock client
    • bc1d436aa9 client/container_test: Use functional option to create mock client
    • c70aac772e client/config_test: Use functional option to create mock client
    • 6452807fb4 client/client_test: Use functional option to create mock client
    • a3d073e160 client/checkpoint_test: Use functional option to create mock client
    • 17396e5d94 client: Add WithMockClient opt
  • api/types/network: move network create/connect/disconnect options from api to client (#50817)
    • 1b4fcb8da7 api/types/network: move CreateOptions type to client module
    • 1e249cc309 api/types/network: move connect/disconnect options types to client module
  • api/types/container: merge InspectResponse and ContainerJSONBase (#50809)
    • fae54e03af api/types/container: merge InspectResponse and ContainerJSONBase
  • api/types/image: move image options from api to client (#50776)
    • 853aed171b api/types/image: move image option types to client
  • api/types/swarm: move SecretListOptions type to client (#50816)
    • 33066cddb1 api/types/swarm: move SecretListOptions type to client
  • api/types/swarm: move swarm option types to client (#50794)
    • 94d0b10503 api/types/swarm: move ServiceInspectOptions type to client
    • a2291e5eac api/types/swarm: move ServiceListOptions type to client
    • 3b1e16594b api/types/swarm: move ServiceUpdateOptions type to client
    • bb4125e89f api/types/swarm: move ServiceCreateOptions type to client
    • 4dcc7af116 api/types/swarm: move UpdateFlags type to client
    • ad0fa5a872 api/types/swarm: move TaskListOptions type to client
    • 2718f953f0 api/types/swarm: move NodeRemoveOptions to client
    • 7d2b87e95f api/types/swarm: move NodeListOptions to client mod
    • b1260cd493 api/types/swarm: move ConfigListOptions to client
  • client: check for Digested reference instead of Canonical (#50798)
    • 7f8ce05f6e client: check for Digested reference instead of Canonical
  • api/types/network: move network options from api to client (#50786)
    • fe8516cf4b client: refactor InspectOptions to NetworkInspectOptions
    • 5eaed0366c api/types/network: move InspectOptions to client mod
    • 6084c6ae78 client: refactor ListOptions to NetworkListOptions
    • d6aa6ae9bd api/types/network: move ListOptions to client
  • api/types/registry: move registry search options to client (#50787)
    • 4665aa11ce client: refactor SearchOptions to ImageSearchOptions
    • 40025bdf43 api/types/registry: move SearchOptions to client
  • api/types/volume: move volume list options from api to client (#50789)
    • ee22a62dd5 client: refactor ListOptions to VolumeListOptions
    • c48585f104 api/types/volume: move ListOptions to client mod
  • api/types/system: move DiskUsageOptions to client mod (#50788)
    • 56626a1222 api/types/system: move DiskUsageOptions to client mod
  • api/types/events: move events list options from api to client (#50774)
    • eb9774cbf9 client: rename ListOptions type to EventsListOptions
    • d73dd4990c api/types/events: move ListOptions type to client
  • api/types/container: move container resize options from api to client (#50773)
    • f07d359043 client: rename ResizeOptions type to ContainerResizeOptions
    • 882fd68b1b api/types/container: move ResizeOptions type to client
  • client/pkg/jsonmessage: remove unused fields (#50759)
    • 47bdbf5a4b client/pkg/jsonmessage: remove unused fields
  • Copy the api/types/time package to internal client/daemon packages (#50722)
    • aa80ad2572 Copy the daemon/internal/timestamp package to internal client package
  • client: Client.Ping: improve error handling and fallback, and assorted fixes/cleanups (#50709)
    • 1c34ff94bc client: consistently use defer for ensureReaderClosed
    • f6b63e6013 client.sendRequest: clean-up logic for error-handling
    • 2a4f70309d client.doRequest: improve GoDoc to clarify behavior
    • d69fde4c60 client: Client.Ping: improve error handling and fallback
    • 80294ddb60 client: make checkResponseErr a regular function
  • chore: enable use-any rule from revive (#50672)
    • 96f8c6395e chore: enable use-any rule from revive
  • Deprecate api/types/strslice.StrSlice and remove its use (#50292)
    • 98790830eb Deprecate api/types/strslice.StrSlice and remove its use
  • README: update, add badges (#50665)
  • vendor: github.com/docker/go-connections v0.6.0 (#50126)
    • 677c2a19d9 vendor: github.com/docker/go-connections v0.6.0
  • add back replace and vendor, tidy (#50648)
  • Bump api version in client and main module to v1.52.0-alpha.1 (#50641)
    • d82f50557e Bump api version in client and main module to v1.52.0-alpha.1
  • api/types: move plugin types to api/types/plugin (#48114)
    • c13266d2c0 api/types: move plugin types to api/types/plugin
  • Prepare release notes for client/v0.1.0-alpha.0 (#50637)
    • a0a7d9a3d7 Add release notes for client/v0.1.0-alpha.0
    • 32ec26be6c Update client and main module api version to latest alpha tag
  • api/types: move ErrorResponse to common/ErrorResponse (#50632)
    • c17d43ae67 api/types: move ErrorResponse to common/ErrorResponse
  • client: use stdlib errors (#50630)
  • client: tidy go.mod (#50629)
  • client: touch-up godoc (#50611)
  • pkg/jsonmessage: stop printing deprecated progressDetail, errorDetail, remove DisplayJSONMessagesToStream and Stream interface (#49264)
    • f3ba0b2dc2 client/pkg/jsonmessage: remove Stream interface
    • 19edf5c53c client/pkg/jsonmessage: remove DisplayJSONMessagesToStream
    • fdaccdb233 pkg/jsonmessage: stop printing deprecated progressDetail, errorDetail
  • Move jsonmessage, streamformatter, and progress (#50565)
    • 0d8ca8eefe Move pkg/jsonmessage to client/pkg/jsonmessage
  • api/types/filters: remove deprecated ToParamWithVersion (#50561)
    • 6c7e2909c2 api/types/filters: remove deprecated ToParamWithVersion
  • Move logdriver interface (#50554)
  • api/types/container.StatsResponseReader: move to client (#50521)
    • f73aba83dc client: TestContainerStats: fix minor linting issues
    • f67e6555bf api/types/container.StatsResponseReader: move to client
  • api: move "DiskUsage" related types to the right location (#50518)
    • 4dda328af8 client: rename files for system-commands to their canonical name
    • 96a6884cb3 api/types: move DiskUsage types to api/types/system
  • api/types: move client.go contents into moby/moby/client (#50510)
    • 24aa86991c api/types: move PluginCreateOptions to client
    • b93ad81898 api/types: move plugin client options into client
    • 44ae4cd2b7 api/types: move HijackedResponse into client
  • pkg/stringid: deprecate, move to daemon, and provide copy in client (#50504)
    • ca1c5ee08f pkg/stringid: move to daemon, and provide copy in client
  • client: remove deprecated types and functions (#50485)
    • 8d8bbefb90 client: remove deprecated CommonAPIClient interface
    • 728f0769e1 client: remove deprecated ImageInspectWithRaw
    • 2f200f9e05 client: remove deprecated IsErrNotFound helper
    • 5ed9891eed client: remove deprecated ErrorConnectionFailed helper
    • a0fa5da2ab client: remove deprecated NewClient and NewEnvClient functions
  • client: fix example, and update refs to old modules (#50484)
    • 30322dd649 client: fix example, and update refs to old modules
  • client: Client.doRequest: improve some connection errors (#50285)
    • 2303e6bff6 client: Client.doRequest: add special handling for DNS resolution errors
    • 67596f01e2 client: Client.doRequest: add special handling for "not found" errors
    • 462d0ff5aa client: Client.doRequest: simplify permission check and unwrap error
    • 7072acac79 client: Client.doRequest: preserve wrapped error
    • 3b4fbaacd7 client: Client.doRequest: use early return
  • client: fix datarace when accessing cli.Version field (#50448)
    • a88e13f4f9 client: fix datarace when accessing cli.Version field
  • client: cleanup encoding body and add test-coverage (#50432)
    • c4f9616c4a client: cleanup encoding body and add test-coverage
  • deprecate pkg/stdcopy, move to api/stdcopy (#50462)
    • 20d594fb79 deprecate pkg/stdcopy, move to api/stdcopy
  • Create github.com/moby/moby/api and github.com/moby/moby/client module (#50280)
    • c47afd41c8 Create github.com/moby/moby/client module
    • afd6487b2e Create github.com/moby/moby/api module
  • client: define default (and maximum) API version (#50433)
    • 41da5700a4 client: define default (and maximum) API version
  • client: always send (empty) body on push (#50415)
    • b1ce0c89f0 client: always send (empty) body on push
  • client: ContainerExecAttach: update GoDoc links (#50411)
    • 14bd3451d8 client: ContainerExecAttach: update GoDoc links
  • client: TestContainerInspectWithEmptyID test both inspect variants (#50385)
    • 16ed75572f client: TestContainerInspectWithEmptyID test both inspect variants
  • Remove client buildkit dep (#50318)
  • Replace use of env test util with standard library call (#50317)
    • e93e15afb0 Replace use of env test util with standard library call
  • client: use go-winio.DialPipe directly (#50125)
    • accbfde61e client: use go-winio.DialPipe directly
  • client: remove getDockerOS utility in favor of "Ostype" header (#50276)
    • fcf3ff1b2f client: remove getDockerOS utility in favor of "Ostype" header
  • client: omit empty auth headers and use registry.RequestAuthConfig (#50256)
    • 1c0d381f4e client: client.tryImagePush: accept registry.RequestAuthConfig
    • ca0afe91b9 client: client.tryImageCreate: accept registry.RequestAuthConfig
    • 79b4e18883 client: add staticAuth utility
    • 871543a8c5 client: Client.ServiceUpdate: don't manually construct header value
  • Remove dependency on testutil from client (#50271)
    • 0964fa01ba Remove dependency on testutil from client
  • Remove dependency on httputil for client hijack test (#50270)
    • 58404b0c28 Remove dependency on httputil for client hijack test
  • fix: easiest revive rules (#50262)
  • client: Client.addHeaders: remove special handling for api < 1.25 (#50246)
    • 8c067c5223 client: Client.addHeaders: remove special handling for api < 1.25
  • docs(client/ContainerExecAttach): add a mention to stdcopy.StdCopy (#50119)
    • 4891396da6 docs(client/ContainerExecAttach): add a mention to stdcopy.StdCopy
  • fix errorlint linter (#50158)
  • fix go-critic linter (#50082)
  • all: remove // import comments (#50110)

Dependency Changes

  • github.com/docker/go-connections v0.5.0 -> v0.6.0
  • github.com/moby/moby/api v1.52.0-beta.0 new
  • go.opentelemetry.io/auto/sdk v1.1.0 new
  • go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 -> v0.60.0
  • go.opentelemetry.io/otel v1.31.0 -> v1.35.0
  • go.opentelemetry.io/otel/metric v1.31.0 -> v1.35.0
  • go.opentelemetry.io/otel/trace v1.31.0 -> v1.35.0
  • golang.org/x/sys v0.32.0 -> v0.33.0

Previous release can be found at v28.2.2

@thaJeztah

Copy link
Copy Markdown
Member

Need to update vendor, @dmcgowan

diff --git a/go.mod b/go.mod
index 14c145f256..ac88af4daf 100644
--- a/go.mod
+++ b/go.mod
@@ -60,7 +60,7 @@ require (
        github.com/moby/go-archive v0.1.0
        github.com/moby/ipvs v1.1.0
        github.com/moby/locker v1.0.1
-       github.com/moby/moby/api v1.52.0-alpha.1
+       github.com/moby/moby/api v1.52.0-beta.0
        github.com/moby/moby/client v0.0.0
        github.com/moby/patternmatcher v0.6.0
        github.com/moby/profiles/apparmor v0.1.0
diff --git a/vendor/modules.txt b/vendor/modules.txt
index a95d3675dd..a96a8e6942 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -938,7 +938,7 @@ github.com/moby/ipvs
 # github.com/moby/locker v1.0.1
 ## explicit; go 1.13
 github.com/moby/locker
-# github.com/moby/moby/api v1.52.0-alpha.1 => ./api
+# github.com/moby/moby/api v1.52.0-beta.0 => ./api
 ## explicit; go 1.23.0
 github.com/moby/moby/api/pkg/authconfig
 github.com/moby/moby/api/pkg/progress

@dmcgowan dmcgowan force-pushed the prepare-client-0.1.0-beta branch from 9e959f5 to d47bb13 Compare September 5, 2025 17:54
@thaJeztah

thaJeztah commented Sep 5, 2025

Copy link
Copy Markdown
Member

We may need to do a beta.1 for the API, because the client and daemon "master" probably are no longer compatible with beta.0
api/v1.52.0-beta.0...59c2f2d

@thaJeztah thaJeztah added this to the 29.0.0 milestone Sep 5, 2025
@dmcgowan dmcgowan force-pushed the prepare-client-0.1.0-beta branch from d47bb13 to b5035de Compare September 5, 2025 18:11

@thaJeztah thaJeztah left a comment

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.

"LGTM"

we need to look at getting those release notes better, but let's look at that for the GA releases; let's get new tags out.

@thaJeztah

Copy link
Copy Markdown
Member

Flaky test;

=== Failed
=== FAIL: amd64.docker.docker.integration.network.bridge TestLegacyLink/no_link (0.22s)
    bridge_linux_test.go:712: assertion failed: string "Connecting to 172.18.0.2 (172.18.0.2:80)\nwget: server returned error: HTTP/1.0 404 Not Found\n" does not contain "download timed out"
    --- FAIL: TestLegacyLink/no_link (0.22s)

=== FAIL: amd64.docker.docker.integration.network.bridge TestLegacyLink (2.97s)

And flaky test on Windows;

=== FAIL: integration/container TestContainerRestartWithCancelledRequest (78.91s)
    restart_test.go:278: timeout waiting for restart event

@thaJeztah thaJeztah merged commit 5ad5e5d into moby:master Sep 5, 2025
285 of 287 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.

2 participants