Commit Graph

2050 Commits

Author SHA1 Message Date
Sebastiaan van Stijn
9176746aba vendor: github.com/tetratelabs/wazero v1.11.0
- Streamline build tags: remove tinygo, cgo
- Fix race condition in refCount initialization
- Simplify utimens. Use `syscall.UtimesNano` to avoid a macOS `go:linkname`.
- Change version policy to two versions.
- Update Wasm 2.0 spec tests.
- Use golang.org/x/sys

full diff: https://github.com/tetratelabs/wazero/compare/v1.10.1...v1.11.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-22 15:06:09 +01:00
Sebastiaan van Stijn
2a9eb66ddc vendor: github.com/moby/go-archive v0.2.0
- remove aliases for deprecated types and functions
- chrootarchive: remove redundant "init" mitigation for CVE-2019-14271
- xattr: Fix OS matching

full diff: https://github.com/moby/go-archive/compare/v0.1.0...v0.2.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-19 19:18:51 +01:00
Paweł Gronowski
91da4a7e8a Merge pull request #51763 from thaJeztah/client_linting
client: fix linting issues
2025-12-18 20:45:58 +00:00
Sebastiaan van Stijn
168e8418b7 Merge pull request #51599 from thaJeztah/bump_cgroups
vendor: github.com/containerd/containerd/v2 v2.2.1, github.com/opencontainers/runtime-spec v1.3.0
2025-12-18 21:10:51 +01:00
Austin Vazquez
0f0d197d78 Merge pull request #51760 from thaJeztah/fix_godoc
api/types/jsonstream: Message: fix godoc
2025-12-18 13:07:27 -06:00
Sebastiaan van Stijn
b293e73bdb vendor: github.com/containerd/containerd/v2 v2.2.1
adds compatibility with runtime-spec v1.3.0

full diff: https://github.com/containerd/containerd/compare/v2.2.0...v2.2.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 19:59:07 +01:00
Sebastiaan van Stijn
01440122f2 vendor: github.com/containerd/nri v0.11.0
- adds compatibility with runtime-spec v1.3.0
- adds `nri_no_wasm` build-tag to compile without wasm support
- adds `ErrWasmDisabled` error

full diff: https://github.com/containerd/nri/compare/v0.10.0...v0.11.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 19:55:59 +01:00
Sebastiaan van Stijn
32d4f64a65 vendor: github.com/opencontainers/runtime-tools v0.9.1-0.20251114084447-edf4cb3d2116
adds compatibility with runtime-spec v1.3.0

full diff: e5b4542027...edf4cb3d21

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 19:55:59 +01:00
Sebastiaan van Stijn
2c533f9327 vendor: github.com/containerd/cgroup/v3 v3.1.2
- hugetlb: correctly parse hugetlb.<size>.events files
- go.mod: github.com/opencontainers/runtime-spec v1.3.0

full diff: https://github.com/containerd/cgroups/compare/v3.1.0...v3.1.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 19:55:58 +01:00
Sebastiaan van Stijn
4b4223a8d4 vendor: github.com/opencontainers/runtime-spec v1.3.0
This includes a breaking change in pids.Limit changing to a pointer.

full diff: https://github.com/opencontainers/runtime-spec/compare/v1.2.1...v1.3.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 19:55:56 +01:00
Sebastiaan van Stijn
7b74376ff1 client: testRoundTripper: remove unused skipConfigureTransport method
This was added in a315437e1c, likely because
I tried to do some interface matching, but currently it doesn't look to
be implementing one, so we can remove it.

    client/client_options.go:136:25: func testRoundTripper.skipConfigureTransport is unused (unused)
    func (testRoundTripper) skipConfigureTransport() bool { return true }
                            ^

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 17:11:23 +01:00
Sebastiaan van Stijn
e254a9f0f1 client: containerDiskUsageFromLegacyAPI: make switch exhaustive
client/system_disk_usage.go:275:3: missing cases in switch of type container.ContainerState: container.StateCreated, container.StateRemoving, container.StateExited, container.StateDead (exhaustive)
            switch c.State {
            ^

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 17:11:23 +01:00
Sebastiaan van Stijn
8f3bfa3f34 client: fix missing import aliases (importas)
client/container_exec.go:8:2: import "github.com/containerd/errdefs" imported without alias but must be with alias "cerrdefs" according to config (importas)
        "github.com/containerd/errdefs"
        ^
    client/container_exec_test.go:9:2: import "github.com/containerd/errdefs" imported without alias but must be with alias "cerrdefs" according to config (importas)
        "github.com/containerd/errdefs"
        ^
    client/container_rename.go:8:2: import "github.com/containerd/errdefs" imported without alias but must be with alias "cerrdefs" according to config (importas)
        "github.com/containerd/errdefs"
        ^
    client/pkg/security/security_opts_test.go:8:2: import "gotest.tools/v3/assert/cmp" imported without alias but must be with alias "is" according to config (importas)
        "gotest.tools/v3/assert/cmp"
        ^
    client/volume_prune.go:9:2: import "github.com/containerd/errdefs" imported without alias but must be with alias "cerrdefs" according to config (importas)
        "github.com/containerd/errdefs"
        ^
    client/volume_prune_test.go:8:2: import "github.com/containerd/errdefs" imported without alias but must be with alias "cerrdefs" according to config (importas)
        "github.com/containerd/errdefs"
        ^
    client/container_exec_test.go:10:2: ST1019(related information): other import of "github.com/containerd/errdefs" (staticcheck)
        cerrdefs "github.com/containerd/errdefs"
        ^

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 15:27:34 +01:00
Sebastiaan van Stijn
0fd5cc134b api/types/jsonstream: Message: fix godoc
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 15:04:27 +01:00
Sebastiaan van Stijn
6c845ded18 api/types/swarm: ResourceRequirements.MemorySwappiness: fix json tag
types/swarm/task.go:151:2: structtag: struct field tag `json:MemorySwappiness,omitzero"` not compatible with reflect.StructTag.Get: bad syntax for struct tag value (govet)
        MemorySwappiness *int64 `json:MemorySwappiness,omitzero"`
        ^

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-18 15:03:13 +01:00
Nicolas De Loof
aef5d996ce use mime-type application/jsonl to align with openapi 3.2
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-17 11:37:48 +01:00
Jonathan A. Sternberg
c63bf203bf vendor: github.com/moby/buildkit v0.26.3
Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
2025-12-16 14:21:57 -06:00
Sebastiaan van Stijn
366044fc20 vendor: github.com/spf13/cobra v1.10.2
Migrate from gopkg.in/yaml.v3 to go.yaml.in/yaml/v3

full diff: https://github.com/spf13/cobra/compare/v1.10.1...v1.10.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-16 16:12:07 +01:00
Rob Murray
54a6ec374a Update client MaxAPIVersion to 1.53
The daemon's MaxAPIVersion was updated in commit f6b1488.

Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-12-16 11:03:58 +00:00
Brian Goff
2ec5bdfaf6 Merge pull request #51666 from ndeloof/swagger
simplify swagger generation
2025-12-15 08:13:20 -08:00
Rob Murray
7c7a626e5d NRI: include in API Info response
Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-12-15 10:36:05 +00:00
Sebastiaan van Stijn
52f33797f3 vendor: github.com/opencontainers/runtime-tools v0.9.1-0.20251111083745-e5b454202754
last commit before it updated to runtime-spec v1.3.0

full diff: 0ea5ed0382...e5b4542027

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-12 14:45:48 +01:00
Sebastiaan van Stijn
413b4afcba vendor: github.com/tetratelabs/wazero v1.10.1
full diff: https://github.com/tetratelabs/wazero/compare/v0.9.0...v1.10.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-12 10:33:55 +01:00
Nicolas De Loof
caaa9c9bb5 simplify swagger generation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2025-12-12 09:19:50 +01:00
Rob Murray
322dda3908 NRI: add TestNRIContainerCreateEnvVarMod
Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-12-10 10:30:49 +00:00
Rob Murray
4941b36883 NRI: import containerd's NRI adaptation package
Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-12-08 16:09:31 +00:00
Sebastiaan van Stijn
29560eacda go.mod: add back replace rules
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-05 16:10:28 +01:00
Sebastiaan van Stijn
4b8f9dd251 vendor: github.com/klauspost/compress v1.18.2
No changes in vendored code

Fixes a regression in v1.18.1 that resulted in invalid flate/zip/gzip encoding.
The v1.18.1 tag has been retracted.

full diff: https://github.com/klauspost/compress/compare/v1.18.1...v1.18.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-12-02 16:45:38 +01:00
Rob Murray
f745fe7f14 vendor: client/0.2.0
Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-11-27 14:05:10 +00:00
Sebastiaan van Stijn
04ab3d562c client: don't downgrade when failing to negotiate
Historically, the client would downgrade to API v1.24 when failing
to negotiate as this was the API version from before API-version
negotiation was introduced.

Given that those daemons are EOL and those API versions no longer
supported, we should not fall back to an older API version, and
just continue using the latest / current version.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 13:52:27 +01:00
Sebastiaan van Stijn
189942570a client: enable API-version negotiation by default
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 13:52:27 +01:00
Sebastiaan van Stijn
e752ec0f8e client: fix typo in comment
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 13:52:24 +01:00
Sebastiaan van Stijn
45c9f460b8 client: checkResponseErr: don't read body for HEAD requests
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 12:05:26 +01:00
Sebastiaan van Stijn
e51a4306e2 client: ensureReaderClosed: small optimizations
Skip draining for HEAD requests and empty responses.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 12:05:26 +01:00
Sebastiaan van Stijn
89bd3150e1 client: client.ping(): use fresh request for HEAD -> GET
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-27 12:05:25 +01:00
Paweł Gronowski
c0c280ecf7 Merge pull request #51598 from thaJeztah/bump_zfs3
vendor: github.com/mistifyio/go-zfs/v3 v3.1.0
2025-11-26 21:46:38 +01:00
Sebastiaan van Stijn
75520d1f5b client: resolveContainerSpecImage, resolvePluginSpecRemote: early returns
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-26 19:24:27 +01:00
Sebastiaan van Stijn
366ea9e9af client: ServiceCreate,ServiceUpdate: don't add empty warnings
This code was refactored in cd08b79c02, which
forgot to add a check for empty warnings.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-26 19:20:45 +01:00
Sebastiaan van Stijn
e94ed33de1 vendor: github.com/mistifyio/go-zfs/v3 v3.1.0
full diff: https://github.com/mistifyio/go-zfs/compare/v3.0.1...v3.1.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-26 17:45:58 +01:00
Sebastiaan van Stijn
997837376a vendor: github.com/cloudflare/circl v1.6.1
- fixes [GHSA-2x5j-vhc8-9cwm]: CIRCL-Fourq: Missing and wrong validation
  can lead to incorrect results

full diff: https://github.com/cloudflare/circl/compare/v1.6.0...v1.6.1

[GHSA-2x5j-vhc8-9cwm]: https://github.com/cloudflare/circl/security/advisories/GHSA-2x5j-vhc8-9cwm

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-26 13:30:29 +01:00
Paweł Gronowski
41ff290929 Merge pull request #51551 from tonistiigi/update-buildkit-v0.26.1
vendor: update buildkit to v0.26.1
2025-11-17 17:28:30 +00:00
Paweł Gronowski
931784650d Merge pull request #51533 from thaJeztah/client_refactor_negotiate
client: simplify logic for manual vs auto API versions
2025-11-17 16:39:11 +00:00
Tonis Tiigi
774bb532f1 vendor: update buildkit to v0.26.1
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2025-11-17 16:16:43 +00:00
Sebastiaan van Stijn
4622dd0ccc client: Client.buildRequest, jsonEncode improve handling of content
- add early returns for `nil` body, `http.NoBody`, and `json.RawMessage`
- use `http.NoBody` instead of `nil` for empty bodies; it's more clear
  on intent.
- use json.Encode instead of json.Encoder.Encode(), as we're marshaling
  a single JSON document; this also avoid adding a trailing newline.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-15 00:39:59 +01:00
Sebastiaan van Stijn
20d65620f9 client: Client.buildRequest: don't set content-header if not set
This function was setting `text/plain` as default content-type for any
request that had a non-nil body.

However, this would also set the content-type if (e.g.) `http.NoBody` was set,
or if an empty reader was used, which would result in the daemon potentialy
rejecting the request, as it validates request to be using `application/json`;
d9ee22d1ab/daemon/server/httputils/httputils.go (L47-L58)

    === RUN   TestCommitInheritsEnv
        commit_test.go:30: assertion failed: error is not nil: Error response from daemon: unsupported Content-Type header (text/plain): must be 'application/json'
    --- FAIL: TestCommitInheritsEnv (0.02s)

This patch removes setting the default content-type.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-15 00:39:59 +01:00
Sebastiaan van Stijn
4e2e2cde7e client: simplify logic for manual vs auto API versions
When manually setting the API version to use, automatic API version
negotiation should no longer be performed. Instead of keeping track
of these options individually, we can mark negotiation to have happend
if either the version was set manually, or if API version negotiation
took place.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-14 20:30:49 +01:00
Sebastiaan van Stijn
d9ee22d1ab Merge pull request #51530 from thaJeztah/allow_renegotiate
client: client.Ping: allow ForceNegotiate with manual override
2025-11-14 20:07:27 +01:00
Sebastiaan van Stijn
f156a683b0 Merge pull request #51527 from thaJeztah/validate_versions
client: improve validation and handling of WithAPIVersion, WithAPIVersionFromEnv
2025-11-14 18:17:13 +01:00
Sebastiaan van Stijn
6857132911 client: client.Ping: allow ForceNegotiate with manual override
While a manual overridden version shouldn't perform automatic version
negotiation, the "ForceNegotiate" option could still be used to (re)
negotiate a version. This allows a client to be configured with an
initial API version, then triggered to perform API-version negotiation.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-11-14 17:41:56 +01:00
Akihiro Suda
57e8ef9d30 Merge pull request #51484 from thaJeztah/vendor_oci_cgroups
vendor: github.com/opencontainers/cgroups v0.0.6
2025-11-14 11:32:06 -05:00