Releases: docker/compose
Releases · docker/compose
v2.24.0-birthday.10 🥳
This is a pre-release to celebrate 10 years of Docker Compose since 0eb7d30
✨ Features
- Introduce
ps --orphans
to include/exclude services not declared by project by @ndeloof in #11220 - Log we don't expose service ports when --verbose by @ndeloof in #11227
- Introduce
logs --index
to select a replica container by @ndeloof in #11231 - Add support for
start_interval
by @ndeloof in #10939
🐛 Fixes
- Restore
Project
is ps json output by @ndeloof in #11223 - Fix configs are mounted under / by @ndeloof in #11232
- Update README.md to use standard
compose.yaml
file name by @johnthagen in #11233 - Send out a cancel event on SIGINT/SIGTERM signal for
compose up
by @vyneer in #11230 - Fix combination of
--pull always --no-build
by @ndeloof in #11244 - Fix(publish): add OCI 1.0 fallback support for AWS ECR by @milas in #11239
- Include disabled services for shell completion by @ndeloof in #11251
🔧 Internal
- Let contributor know we might close unanswered issues by @ndeloof in #11219
- Adopt compose-go/v2 by @ndeloof in #11207
- collect services to build using WithServices by @ndeloof in #11255
⚙️ Dependencies
- bump ddev to 1.22.4 by @ndeloof in #11225
- bump golang.org/x/sys from 0.14.0 to 0.15.0 by @dependabot in #11228
- bump docker cli v1.25 beta1 by @ndeloof in #11247
- bump golang to version 1.21.5 by @glours in #11249
New Contributors
- @johnthagen made their first contribution in #11233
- @vyneer made their first contribution in #11230
Full Changelog: v2.23.3...v2.24.0-birthday.10
v2.23.3
⚙️ Dependencies
Full Changelog: v2.23.2...v2.23.3
v2.23.2
✨ Features
push
also considerbuild.tags
by @ndeloof in #11201- Build services with the latest version of the source code when starting
watch
command by @glours in #11213
🐛 Fixes
- Fix
--remove-orphans
not to consider disabled services as orphaned by @ndeloof in #11204 - Identify services to build and don't display 'building' if none by @glours in #11209
🔧 Internal
- Make it
context aware
and add test skipping options through environment variables by @ulyssessouza in #11192 - Introduce
RuntimeVersion
for code to check container runtime support by @ndeloof in #11206 - Avoid use of []types.ServiceConfig by @ndeloof in #11211
- Assume /src/pkg/compose/testdata absolute workingdir to make tests reproducible by @ndeloof in #11212
⚙️ Dependencies
- Build(deps): bump github.com/moby/buildkit from 0.12.2 to 0.12.3 by @dependabot in #11112
- Build(deps): bump github.com/docker/docker from 24.0.6+incompatible to 24.0.7+incompatible by @dependabot in #11143
- Build(deps): bump github.com/docker/cli from 24.0.6+incompatible to 24.0.7+incompatible by @dependabot in #11142
- Build(deps): bump github.com/spf13/cobra from 1.7.0 to 1.8.0 by @dependabot in #11214
- Build(deps): bump github.com/compose-spec/compose-go from 1.20.1 to 1.20.2 by @dependabot in #11215
Full Changelog: v2.23.1...v2.23.2
v2.23.1
✨ Features
- align with OCI artifact best practices by @ndeloof in #11121
- introduce --resolve-image-digests for publish to seal service images by @ndeloof in #11136
- improve watch configuration logging by @glours in #11161
- reject compose file using
secrets|configs.driver or template_driver
by @ndeloof in #11185
🐛 Fixes
- fail start if depependency is missing by @ndeloof in #11110
- fix SIGTERM support to stop/kill stack by @ndeloof in #11127
- Fix --hash regression by @mattwalo32 in #11146
- Fix for "Application failed to start after update" when an external network is on a watched service by @kimdcottrell in #11092
- fix --pull documentation by @ndeloof in #11164
- fix #11170 add newline in cmd/compose/build.go fmt.Fprint by @szampardi in #11171
- render quiet after filtering applied by @ndeloof in #11177
- Strip project prefix from docker-compose up output by @ndeloof in #11190
🔧 Internal
- refactor(cmd/compose/run): remove redundant
len
check by @Juneezee in #11060 - Initial codeql.yml commit by @temenuzhka-thede in #11128
- build(deps): bump go.uber.org/goleak from 1.2.1 to 1.3.0 by @dependabot in #11129
- add docs upstream validation workflow by @dvdksn in #11113
- ENGDOCS-1764: Trivial fixes by @aevesdocker in #11149
- re-implement cache folder detection by @ndeloof in #11130
- skips flaky e2e tests on watch and attach by @ulyssessouza in #11180
- bump compose-go to v1.20.1 by @ndeloof in #11187
- bump golang to version 1.21.4 by @glours in #11173
New Contributors
- @Juneezee made their first contribution in #11060
- @temenuzhka-thede made their first contribution in #11128
- @kimdcottrell made their first contribution in #11092
- @dvdksn made their first contribution in #11113
- @szampardi made their first contribution in #11171
Full Changelog: v2.23.0...v2.23.1
v2.23.0
✨ Features
- Add dry-run support for publish command (#11067)
- Add
COMPOSE_ENV_FILES
env variable to pass a list of env files (#11061) - Add
sync+restart
action tocompose watch
(#11095)
🐛 Fixes
- Truncate
compose ps
output to align with Docker CLI by default and introduce--no-trunc
to keep the previous behaviour (#11038) - Update the watch warning message when no services with a develop section (#11047)
- Include image name in inspect error message (#11006)
- Make hashes between
up
andconfigure
consistent (#11010) - Warn user remote resource is disabled (#11051)
- Enable profile when
down
is ran with explicit service names (#11108) - Check that the pull policy provided is a valid one (#11109)
🔧 Internal
- Align OCI artifacts with upstream guidance (#11049)
- remove cucumber tests as we haven't added new ones for a while (#11076)
- remove refrecence docs generation (#11085)
What's Changed
- build(deps): bump google.golang.org/grpc from 1.58.1 to 1.58.2 by @dependabot in #11036
- truncate command by default, introduce --no-trunc flag to get the full command by @ndeloof in #11038
- Make tests verbose by @rumpl in #11045
- update the watch warning message when no services with a develop section by @glours in #11047
- Align OCI artifacts with upstream guidance by @neersighted in #11049
- Include image name in error message by @mattwalo32 in #11006
- deps: remove deprecated github.com/pkg/errors by @mmorel-35 in #11042
- Make hashes between
up
andconfigure
consistent by @mattwalo32 in #11010 - add dry-run support for publish command by @glours in #11067
- add support of COMPOSE_ENV_FILES env variable to pass a list of env files by @glours in #11061
- remove cucumber tests as we haven't added new ones for a while by @glours in #11076
- remove refrecence docs generation by @glours in #11085
- build(deps): bump golang.org/x/sync from 0.3.0 to 0.4.0 by @dependabot in #11068
- build(deps): bump google.golang.org/grpc from 1.58.2 to 1.59.0 by @dependabot in #11105
- build(deps): bump github.com/google/go-cmp from 0.5.9 to 0.6.0 by @dependabot in #11083
- build(deps): bump github.com/containerd/containerd from 1.7.6 to 1.7.7 by @dependabot in #11078
- add sync+restart action to watch attribute by @glours in #11095
- warn user remote resource is disabled by @ndeloof in #11051
- enable profile when down is ran with explicit service names by @ndeloof in #11108
- check that the pull policy provided is a valid one by @glours in #11109
New Contributors
- @neersighted made their first contribution in #11049
- @mattwalo32 made their first contribution in #11006
- @mmorel-35 made their first contribution in #11042
Full Changelog: v2.22.0...v2.23.0
v2.22.0
💁🏻 Upgrade Notes
watch
command is now GA and can be directly used from the root commanddocker compose watch
✨ Features
- Experimental support of
publish
command (#10949) watch
now build and launch the project at start (#10957)- Add
policy
option to the--pull
flag (#10981)
🐛 Fixes
- Fix various race/deadlock conditions for
up
command on exit (#10934) - Fix for multi-plaform issues on build (#10956)
- Enable services explicitly requested even if their
profiles
aren't activated (#10952) - Fix
config
bug when declaredenv_file
are missing (#11025)
🔧 Internal
- Pass BuildOptions to
up
andrun
commands (#10956) - Upgrade to [email protected]
What's Changed
- pkg/api: replace uuid for basic random id by @thaJeztah in #10953
- up: fix various race/deadlock conditions on exit by @milas in #10934
- build: pass BuildOptions around explicitly & fix multi-platform issues by @milas in #10956
- Enable service explicitly requested to be restarted by @ndeloof in #10952
- migrate to github.com/distribution/reference by @thaJeztah in #10954
- doc: updated README.md to remove broken link by @kumarlokesh in #10966
- introduce publish (alpha) command by @ndeloof in #10949
- watch: build & launch the project at start by @milas in #10957
- OTEL: adding flags to cli traces by @rvigus in #10974
- cli: fix
--build
flag forcreate
by @milas in #10982 - deps: upgrade Moby to v24.0.6 and gRPC to v1.58.0 by @milas in #10991
- ci: tweak restricted imports in linter by @milas in #10992
- add scale command by @glours in #10979
- update to go1.21.1 by @thaJeztah in #11000
- don't rely on depends_on to resolve volume_from, better use observed state by @ndeloof in #10999
- introduce pull --policy flag to only pull images not present in cache by @ndeloof in #10981
- build(deps): bump github.com/containerd/containerd from 1.7.3 to 1.7.6 by @dependabot in #11016
- build(deps): bump google.golang.org/grpc from 1.58.0 to 1.58.1 by @dependabot in #11019
- build(deps): bump gotest.tools/v3 from 3.5.0 to 3.5.1 by @dependabot in #11020
- build(deps): bump github.com/moby/buildkit from 0.12.1 to 0.12.2 by @dependabot in #11017
- build(deps): bump github.com/opencontainers/image-spec from 1.1.0-rc4 to 1.1.0-rc5 by @dependabot in #11027
- use official
develop
section to configure watch command by @ndeloof in #11026 - implement publish by @ndeloof in #11008
- TestWatch to use new
develop
section by @ndeloof in #11031 - remove --timeout=0 flag to cleanup function of watch e2e test by @glours in #11023
- move watch from alpha to main command by @glours in #11021
- config --xx don't need
env_file
being parsed by @ndeloof in #11025
New Contributors
- @kumarlokesh made their first contribution in #10966
- @rvigus made their first contribution in #10974
Full Changelog: v2.21.0...v2.22.0
v2.21.0
💁🏻 Upgrade Notes
- Format of
docker compose ps
anddocker compose ps --format=json
changed to better align withdocker ps
output (#10918)
✨ Features
- Support for multi-document YAML files (compose-spec/compose-go#451)
- Experimental support for loading remote Compose files from Git repos with
include
(#10811)
🐛 Fixes
- Fix for incorrect proxy variables during build (#10908)
- Fix for truncated container logs (#10925)
- Fix for "no such service" errors when using
include
and profiles (compose-spec/compose-go#448) - Fix for
.env
overrides when usinginclude
(compose-spec/compose-go#449)
🔧 Internal
- Upgrade to [email protected]
- Switch to
moby/patternmatcher/ignorefile
for.dockerignore
parsing (#10922)
What's Changed
- warn user secret uid/gid/mode is not supported by @ndeloof in #10904
- clone variable berfore we capture a pointer by @ndeloof in #10908
- up: handle various attach use cases better by @milas in #10910
- add support for git remote resources by @ndeloof in #10811
- build(deps): bump github.com/compose-spec/compose-go from 1.18.1 to 1.18.2 by @dependabot in #10915
- otel: add
include
to project up span by @milas in #10911 - container logs not sent line by line is broken by @ndeloof in #10925
- replace dockerfile/dockerignore with patternmatcher/ignorefile by @thaJeztah in #10922
- ci: bump golangci-lint to v1.54.2 by @milas in #10916
- watch: only allow a single instance per-project by @milas in #10931
- align
docker compose ps
withdocker ps
by @ndeloof in #10918 - added the dot at the end of the sentence by @ibilalkayy in #10936
- build(deps): upgrade to compose-go v1.18.3 by @milas in #10947
- test: e2e test reliability improvements by @milas in #10950
New Contributors
- @ibilalkayy made their first contribution in #10936
Full Changelog: v2.20.3...v2.21.0
v2.20.3
What's Changed
Enhancements ✨
- Watch: add tar sync implementation by @milas in #10853
- Improve buildkit node creation by @silvin-lubecki in #10843
- Display builder's name on the first build line. by @silvin-lubecki in #10881
- Improve shell completion for
--project-directory
by @relrelb in #10879 - Add shell completion for
--profile
by @relrelb in #10878
Fixes 🐛
- Progress: minor correctness fixes by @milas in #10871
- Up: do not warn on successful optional dependency complete by @milas in #10870
- Build: fix missing proxy build args for classic builder by @milas in #10887
Internal 🔧
- Trace: do not block connecting to OTLP endpoint by @milas in #10882
- Test: fix e2e test for privileged builds by @milas in #10873
- Test: temporarily disable an exit-code-from Cucumber test case by @milas in #10875
- Watch: support multiple containers for tar implementation by @milas in #10860
- Watch: batch & de-duplicate file events by @milas in #10865
- Watch: enable tar-based syncer by default by @milas in #10877
- Update Config comment in API Service interface by @prafgup in #10840
- Update README and CI workflows to match main branch by @glours in #10889
Dependencies ⚙️
- Build(deps): bump github.com/docker/cli from 24.0.4+incompatible to 24.0.5+incompatible by @dependabot in #10845
- Build(deps): bump google.golang.org/grpc from 1.56.2 to 1.57.0 by @dependabot in #10847
- Build(deps): bump github.com/containerd/containerd from 1.7.2 to 1.7.3 by @dependabot in #10850
- Build(deps): bump github.com/docker/docker from 24.0.5-0.20230714235725-36e9e796c6fc+incompatible to 24.0.5+incompatible by @dependabot in #10844
- Update to go1.20.7 by @thaJeztah in #10861
- Upgrade Golang to 1.21 by @glours in #10890
- Bump compose-go to version v1.18.0 by @glours in #10891
- Bump compose-go to version v1.18.1 by @glours in #10893
- Build(deps): bump github.com/moby/buildkit from 0.12.1-0.20230717122532-faa0cc7da353 to 0.12.1 by @dependabot in #10867
New Contributors
Full Changelog: v2.20.2...v2.20.3
v2.20.2
What's Changed
Enhancements ✨
Fixes 🐛
- Build: do not attempt to push unnamed service images by @milas in #10814
- check secret target is an absolute windows path by @ndeloof in #10819
Internal 🔧
- trace: instrument
compose up
at a high-level by @milas in #10831 - test: watch e2e reliability tweaks by @milas in #10829
- pkg/compose: RunOneOffContainer: don't use NewStartOptions() by @thaJeztah in #10828
- watch: move sync logic into separate package by @milas in #10791
Dependencies ⚙️
Full Changelog: v2.20.1...v2.20.2