Major changes in this release:
- Compose can now officially be used as a SDK to be integrated into third-party softwares
- Internal builder has been removed, build is delegated to Docker Bake (same as
docker buildcommand)
What's Changed
✨ Improvements
- drop support for internal buildkit builder by @ndeloof in #13056
- Setup Compose service using functional parameters by @ndeloof in #13312
- Introduce abstractions to support SDK usage without requiring Docker CLI by @glours in #13313
- configure Compose service with io.Reader and io.Writer by @glours in #13322
- Make progress Writer a CLI component by @ndeloof in #13316
- SDK docs by @ndeloof in #13350
- document support for OCI and Git remote resources by @ndeloof in #13362
- run hooks on restart by @ndeloof in #13321
- fix(run): Ensure images exist only for the target service in run command by @idsulik in #13325
- Add load project to api definition by @glours in #13329
- introduce --insecure-registry, reserved for testing purpose by @ndeloof in #13355
- Move progress package to cmd as a command line component by @ndeloof in #13357
- Added support for
build.no_cache_filterby @ndeloof in #13377 - add --wait option to start command by @ndeloof in #13409
🐛 Fixes
- fix OCI compose override support by @ndeloof in #13311
- Fix help output for "exec --no-tty" option by @tonyo in #13314
- fix typo in error message by @stasadev in #13328
- disable progress UI when build is ran with --print by @ndeloof in #13351
- add (restore) support for detach keys by @ndeloof in #13369
- images command should display image Created time or N/A if not available by @ndeloof in #13376
- Fix support for port range by @ndeloof in #13381
- skip includes preparing publish by @ndeloof in #13400
- feat(model): ignore runtime flags in model configuration by @ilopezluna in #13404
🔧 Internal
- Next release will be major version v5.x by @ndeloof in #13375
- Test to check writeComposeFile detects invalid OCI artifact by @ndeloof in #13309
- Code Cleanup by @ndeloof in #13315
- fix various linting issues by @thaJeztah in #13326
- Making the American/British spellings consistent to the error messages by @JLesDev in #13366
- gha: test against docker v29, v28, and rename checks to use
stable,oldstableby @thaJeztah in #13380 - refactor: replace Split in loops with more efficient SplitSeq by @vicerace in #13393
- refactor: use strings.Builder to improve performance by @liuyueyangxmu in #13398
- Fix grammar: change 'adopted' to 'adopt' in Docker Swarm note by @rashmivagha in #13407
- golangci-lint: use gci formatter instead of goimports by @thaJeztah in #13406
- refactor: replace interface{} with any for clarity and modernization by @zjumathcode in #13411
⚙️ Dependencies
- Bump compose go to v2.10.0 by @ndeloof in #13410
- build(deps): bump github.com/containerd/platforms from 1.0.0-rc.1 to 1.0.0-rc.2 by @dependabot[bot] in #13353
- build(deps): bump github.com/docker/docker from 28.5.1+incompatible to 28.5.2+incompatible by @dependabot[bot] in #13361
- build(deps): bump github.com/containerd/containerd/v2 from 2.1.4 to 2.2.0 by @dependabot[bot] in #13358
- build(deps): bump github.com/docker/cli from 28.5.1+incompatible to 28.5.2+incompatible by @dependabot[bot] in #13360
- build(deps): bump golang.org/x/sys from 0.37.0 to 0.38.0 by @dependabot[bot] in #13367
- build(deps): bump golang.org/x/sync from 0.17.0 to 0.18.0 by @dependabot[bot] in #13368
- Dockerfile: update golangci-lint to v2.6.2 by @thaJeztah in #13370
- build(deps): bump buildx v0.30.0, buildkit v0.26.0, otel v1.38.0, otel/contrib v0.63.0 by @thaJeztah in #13379
- bump dependencies by @ndeloof in #13392
- build(deps): bump github.com/hashicorp/go-version from 1.7.0 to 1.8.0 by @dependabot[bot] in #13403
- build(deps): bump golang.org/x/crypto v0.45.0 by @thaJeztah in #13405
New Contributors
- @tonyo made their first contribution in #13314
- @stasadev made their first contribution in #13328
- @JLesDev made their first contribution in #13366
- @vicerace made their first contribution in #13393
- @liuyueyangxmu made their first contribution in #13398
- @ilopezluna made their first contribution in #13404
- @rashmivagha made their first contribution in #13407
- @zjumathcode made their first contribution in #13411
Full Changelog: v2.40.2...v5.0.0
