pkg/compose: build with bake: drop support for buildx v0.16 and lower#13280
pkg/compose: build with bake: drop support for buildx v0.16 and lower#13280ndeloof merged 1 commit intodocker:mainfrom
Conversation
[buildx v0.17][1] was released a Year ago, so any version this conditional code was accounting for would be versions before that; the latest of which being [buildx v0.16.2][2] (July 2024). Given that those versions are long EOL and no longer supported, we can probably remove the conditional code. [1]: https://github.com/docker/buildx/releases/tag/v0.17.0 [2]: https://github.com/docker/buildx/releases/tag/v0.16.2 Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
|
LGTM, but I wonder we could check version number and warn user running an obsolete release of buildx |
|
That's always gonna be tricky; that applies to all binaries (cli, compose itself, buildx, ... ); we can somewhat fix it in packaging and set a minimum version, https://github.com/docker/packaging/blob/66807ae5e8fbbed4dd498bfe2891c504b78cf38b/pkg/docker-cli/deb/control#L19 |
|
I had in mind Mac/Windows installation with some users relying on homebrew or manual installation, or maybe an older version was selected. We could just check by |
|
Yeah, it's a tricky one; it's good to shell out to I wonder if we should consider moving the options-struct-to-command-line-flags conversion to a utility package in buildx; that way changes made in the buildx command-line will stay in lock-step with the code to set those flags (e.g. if a flag is added / removed / renamed / changed, the buildx maintainers can make sure the code that compose uses to call Perhaps it would even be an idea to have a (hidden) flag that acccepts a JSON-struct with all the options - that would have a more structured way to pass options to buildx when invoked; i.e., something like docker buildx bake --___bake_options='{"version":"v0.29.1", "progress": "rawjson", "provenance": true .....}'
@crazy-max any thoughts? Would something like that make sense to do? (i.e. a flag or subcommand to execute buildx programmatically?) |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [docker/compose](https://github.com/docker/compose) | patch | `v2.40.0` -> `v2.40.1` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>docker/compose (docker/compose)</summary> ### [`v2.40.1`](https://github.com/docker/compose/releases/tag/v2.40.1) [Compare Source](docker/compose@v2.40.0...v2.40.1) #### What's Changed ##### ✨ Improvements ##### 🐛 Fixes - Write error to watcher error channel if Start() fails by [@​Trolldemorted](https://github.com/Trolldemorted) in [#​13263](docker/compose#13263) - Fix: set PWD only if not set by [@​kianelbo](https://github.com/kianelbo) in [#​13268](docker/compose#13268) - bake only interpolates ${\*} by [@​ndeloof](https://github.com/ndeloof) in [#​13270](docker/compose#13270) - Fix: make "publish" push all compose files addressed in "extends" statements when using "profiles". by [@​ogoulpeau-ledger](https://github.com/ogoulpeau-ledger) in [#​13277](docker/compose#13277) - Support Ctrl+Z to run compose in background by [@​ndeloof](https://github.com/ndeloof) in [#​13289](docker/compose#13289) - Fix race-condition bug in publish command by [@​paul-kinexon](https://github.com/paul-kinexon) in [#​13291](docker/compose#13291) - Set secret/config uid:gid to match container's USER by [@​ndeloof](https://github.com/ndeloof) in [#​13288](docker/compose#13288) - Fix failure to delegate build with bake by [@​ndeloof](https://github.com/ndeloof) in [#​13275](docker/compose#13275) - Make CTRL+Z a no-op operation on Windows by [@​glours](https://github.com/glours) in [#​13293](docker/compose#13293) ##### 🔧 Internal - pkg/compose: align classic builder implementation with docker/cli by [@​thaJeztah](https://github.com/thaJeztah) in [#​13278](docker/compose#13278) - pkg/compose: build with bake: drop support for buildx v0.16 and lower by [@​thaJeztah](https://github.com/thaJeztah) in [#​13280](docker/compose#13280) - Use fixed version of compose bridge transformer images by [@​glours](https://github.com/glours) in [#​13284](docker/compose#13284) ##### ⚙️ Dependencies - Build(deps): bump github.com/docker/docker from 28.5.0+incompatible to 28.5.1+incompatible by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13274](docker/compose#13274) - Build(deps): bump github.com/docker/cli from 28.5.0+incompatible to 28.5.1+incompatible by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13273](docker/compose#13273) - Build(deps): bump golang.org/x/sys from 0.36.0 to 0.37.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13272](docker/compose#13272) - Build(deps): bump docker/buildx v0.29.1, moby/buildkit v0.25.1 by [@​thaJeztah](https://github.com/thaJeztah) in [#​13279](docker/compose#13279) - Bump golang to version 1.24.9 by [@​glours](https://github.com/glours) in [#​13285](docker/compose#13285) #### New Contributors - [@​Trolldemorted](https://github.com/Trolldemorted) made their first contribution in [#​13263](docker/compose#13263) - [@​ogoulpeau-ledger](https://github.com/ogoulpeau-ledger) made their first contribution in [#​13277](docker/compose#13277) - [@​paul-kinexon](https://github.com/paul-kinexon) made their first contribution in [#​13291](docker/compose#13291) **Full Changelog**: <docker/compose@v2.40.0...v2.40.1> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTEuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1MS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
buildx v0.17 was released a Year ago, so any version this conditional code was accounting for would be versions before that; the latest of which being buildx v0.16.2 (July 2024).
Given that those versions are long EOL and no longer supported, we can probably remove the conditional code.
What I did
Related issue
(not mandatory) A picture of a cute animal, if possible in relation to what you did