Skip to content

Conversation

@mdelapenya
Copy link
Member

@mdelapenya mdelapenya commented Jun 2, 2025

This PR represents a Breaking Change as, before these changs, we were using deprecated types as part of the build image signatures:

I.e., implementers of the ImageBuildInfo interface, would see that BuildOptions has changed its signature.

type ImageBuildInfo interface {
- 	 BuildOptions() (types.ImageBuildOptions, error) // converts the ImageBuildInfo to a types.ImageBuildOptions
+        BuildOptions() (build.ImageBuildOptions, error) // converts the ImageBuildInfo to a build.ImageBuildOptions

Or, those using the FromDockerfile struct, its BuildOptionsModifier fields has changed:

- BuildOptionsModifier func(*types.ImageBuildOptions)
+ BuildOptionsModifier func(*build.ImageBuildOptions)

Note

This PR has been created with the combine-prs gh extension:

gh combine-prs --query author:app/dependabot --interactive --verbose --skip-pr-check.

It combines the following PRs:

Related Issues:

dependabot bot and others added 28 commits June 1, 2025 11:52
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](moby/moby@v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
…ocker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/vault/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/vault
…r/docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/registry/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/registry
…r/docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/redpanda/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/redpanda
…docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/pulsar/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/pulsar
…ker/docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/opensearch/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/opensearch
…docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/ollama/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/ollama
…ker/docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/localstack/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/localstack
…er-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/k6/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/k6
…ker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/k3s/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/k3s
…cker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/etcd/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/etcd
…cker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/dind/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/dind
…/docker-28.2.2incompatible' into combined-pr-branch-388977541

* dependabot/go_modules/modules/compose/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker in /modules/compose
…compatible' into combined-pr-branch-388977541

* dependabot/go_modules/github.com/docker/docker-28.2.2incompatible:
  chore(deps): bump github.com/docker/docker
@mdelapenya mdelapenya self-assigned this Jun 2, 2025
@mdelapenya mdelapenya requested a review from a team as a code owner June 2, 2025 04:25
@mdelapenya mdelapenya added the chore Changes that do not impact the existing functionality label Jun 2, 2025
@netlify
Copy link

netlify bot commented Jun 2, 2025

Deploy Preview for testcontainers-go ready!

Name Link
🔨 Latest commit e9a58ad
🔍 Latest deploy log https://app.netlify.com/projects/testcontainers-go/deploys/683d6dca9867e9000814d957
😎 Deploy Preview https://deploy-preview-3194--testcontainers-go.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@mdelapenya mdelapenya changed the title chore(deps): bump github.com/docker/docker from 28.1.1+incompatible to 28.2.2+incompatible chore(deps)!: bump github.com/docker/docker from 28.1.1+incompatible to 28.2.2+incompatible Jun 2, 2025
"join-other": {
err: errors.Join(nil, notFoundError{}, errors.New("other")),
want: false,
want: true,
Copy link
Member Author

@mdelapenya mdelapenya Jun 2, 2025

Choose a reason for hiding this comment

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

@stevenh I'm not sure, but this PR unveiled these test errors 🤔 Do you think we were having a false sense of security with them? Changing the assertion fixed them, and reading the specs for the modified tests makes me think they are correct now: a joined error including notFound should be captured as want:true, shouldn't it?

Copy link
Member Author

Choose a reason for hiding this comment

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

Merging, we can discuss about this in a follow up

@mdelapenya mdelapenya added dependencies Dependencies or external services breaking change Causing compatibility issues. and removed chore Changes that do not impact the existing functionality labels Jun 2, 2025
@mdelapenya mdelapenya merged commit 1720acd into testcontainers:main Jun 2, 2025
396 of 398 checks passed
@mdelapenya mdelapenya deleted the combined-pr-branch-388977541 branch June 2, 2025 10:51
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Jun 3, 2025
* main:
  feat!: add options when creating RawCommand (testcontainers#3168)
  chore(deps)!: bump github.com/docker/docker from 28.1.1+incompatible to 28.2.2+incompatible (testcontainers#3194)
  feat(couchbase): adding auth to couchbase initCluster functions to support container reuse (testcontainers#3048)
  chore(deps): bump github.com/containerd/containerd/v2 (testcontainers#3167)
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Jun 3, 2025
* main: (236 commits)
  feat(kafka,redpanda): support for waiting for mapped ports without external checks (testcontainers#3165)
  chore: bump ryuk to 0.12.0 (testcontainers#3195)
  feat!: add options when creating RawCommand (testcontainers#3168)
  chore(deps)!: bump github.com/docker/docker from 28.1.1+incompatible to 28.2.2+incompatible (testcontainers#3194)
  feat(couchbase): adding auth to couchbase initCluster functions to support container reuse (testcontainers#3048)
  chore(deps): bump github.com/containerd/containerd/v2 (testcontainers#3167)
  docs(options): refactor options layout in modules (testcontainers#3163)
  fix(ci): do not run sonar for Testcontainers Cloud (testcontainers#3166)
  chore(ci): do not fail fast in the Testcontainers Cloud run (testcontainers#3164)
  feat: support adding wait strategies as functional option (testcontainers#3161)
  fix(etcd): expose ports for the etcd nodes (testcontainers#3162)
  fix(wait): no port to wait for (testcontainers#3158)
  feat: add more functional options for customising containers (testcontainers#3156)
  docs(redpanda): update sasl authentication option to use scram sha 256 (testcontainers#3126)
  chore(deps): bump mkdocs-include-markdown-plugin from 6.2.2 to 7.1.5 (testcontainers#3137)
  chore(deps): bump github.com/shirou/gopsutil/v4 from 4.25.1 to 4.25.4 (testcontainers#3133)
  chore(deps): bump github.com/docker/docker from 28.0.1+incompatible to 28.1.1+incompatible (testcontainers#3152)
  feat(memcached): add memcached module (testcontainers#3132)
  fix(etcd): single node etcd cluster access (testcontainers#3149)
  feat(valkey): add TLS support for Valkey (testcontainers#3131)
  ...
knqyf263 added a commit to knqyf263/trivy that referenced this pull request Jun 18, 2025
…dition

Update testcontainers-go to commit 1720acdcb24ef79dd34188da22da05e6cf72773c
which includes the fix from testcontainers/testcontainers-go#3194

Background:
Docker API changes in moby/moby#50030 affected how
errdefs.ErrConflict errors are handled, causing testcontainers-go's
isCleanupSafe function to no longer properly detect "already in progress"
container removal errors. This resulted in test failures with messages like:
"terminate: Error response from daemon: removal of container X is already in progress"

The fix in testcontainers-go PR aquasecurity#3194 addresses this issue by updating the
error handling logic to properly catch these Docker API error changes.
Since this fix is not yet released, we use the specific commit hash.

This resolves container cleanup race conditions in integration tests,
particularly affecting TestContainerd_LocalImage and TestClientServerWithRedis.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking change Causing compatibility issues. dependencies Dependencies or external services

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant