Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: compose-spec/compose-go
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.12.1
Choose a base ref
...
head repository: compose-spec/compose-go
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v2.13.0
Choose a head ref
  • 4 commits
  • 13 files changed
  • 4 contributors

Commits on Jun 29, 2026

  1. feat: add pre_start lifecycle hook for init containers

    Implements the `pre_start` service field introduced in
    compose-spec/compose-spec#647: an ordered list
    of init containers run to completion before the service container
    starts. Each step runs in its own ephemeral container; a non-zero exit
    fails the bring-up of the service and its dependents.
    
    Compose-go owns parsing, validation via JSON schema, and image
    inheritance: when a pre_start hook omits `image`, it is normalized
    to the parent service's image. Volume/network inheritance and the
    runtime execution stay with docker/compose.
    
    Signed-off-by: Guillaume Lours <glours@users.noreply.github.com>
    glours committed Jun 29, 2026
    Configuration menu
    Copy the full SHA
    faa67b2 View commit details
    Browse the repository at this point in the history
  2. fix(reset): preserve path escaping in cycle detection

    checkForCycle called path.String(), which un-escapes dots inside
    segment names. Service names containing "." (e.g. "test.other") were
    then misidentified as sub-paths of services with shorter prefix names
    (e.g. "test"), triggering a spurious "cycle detected" error.
    
    Compare on the raw form and use Path.Parts() for the services check
    so segment boundaries stay intact. Only render via .String() in the
    error message.
    
    Fixes docker/compose#13863
    
    Signed-off-by: Guillaume Lours <glours@users.noreply.github.com>
    glours committed Jun 29, 2026
    Configuration menu
    Copy the full SHA
    ebb1c52 View commit details
    Browse the repository at this point in the history
  3. Bump actions/setup-go from 6.4.0 to 6.5.0

    Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.4.0 to 6.5.0.
    - [Release notes](https://github.com/actions/setup-go/releases)
    - [Commits](actions/setup-go@4a36011...924ae3a)
    
    ---
    updated-dependencies:
    - dependency-name: actions/setup-go
      dependency-version: 6.5.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and glours committed Jun 29, 2026
    Configuration menu
    Copy the full SHA
    9bc8469 View commit details
    Browse the repository at this point in the history
  4. perf(schema): compile compose-spec schema once

    Validate rebuilt a jsonschema Compiler and recompiled the embedded
    compose-spec schema (including loading and resolving the draft 2020-12
    meta-schema) on every call. Compile it once behind a sync.Once instead,
    which keeps Validate cheap on the loader hot path and makes it safe to
    call concurrently without sharing any mutable compiler state.
    
    Switch MustCompile to Compile so a schema compilation failure is
    returned as an error instead of panicking. Add a concurrent Validate
    test (run with -race) as a regression guard.
    
    Relates to docker/compose#13866
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
    2 people authored and glours committed Jun 29, 2026
    Configuration menu
    Copy the full SHA
    0670a1c View commit details
    Browse the repository at this point in the history
Loading