Skip to content

Track Compose compatibility gaps found with apple/container 1.0.0 #118

Description

@thromel

Summary

This tracks a small set of Compose compatibility gaps found while testing container-compose 1.0.0 with apple/container 1.0.0 on macOS 26.5.1.

The goal is to keep the work contribution-friendly: each linked issue is narrow enough to fix or validate independently.

This tracker is for Compose compatibility work in container-compose. Runtime-level fixes should happen upstream in apple/container; the main one from this test run is container name/service DNS.

Environment used for the repros

- OS: macOS 26.5.1 (25F80)
- Xcode: 26.5 (17F42)
- container: 1.0.0 (release, commit ee848e3)
- container-compose: 1.0.0 installed via Homebrew
- Architecture: arm64

Issues

Upstream dependencies / related Apple Container issues

Suggested contribution order

  1. One-shot services are reported as startup timeouts and failures can exit 0 #115: fix one-shot service wait semantics and CLI exit status.
    This should be mostly internal container-compose behavior and is easy to regression-test.

  2. Parse Compose service network object form for aliases #116: accept Compose network object syntax.
    Even if aliases cannot fully work until service discovery improves, the YAML shape should decode cleanly.

  3. Named container workaround fails when container copies data into it #52: switch named-volume handling to native container named volumes where supported.
    The current workaround looks stale against container 1.0.0.

  4. healthcheck and depends_on service_healthy are silently ignored #117: either implement healthcheck/dependency behavior or emit a clear unsupported-feature error.
    Silent ignore is the risky part.

  5. Services on the same Compose network cannot resolve service names #114: track Apple Container DNS/service discovery behavior.
    If upstream runtime support is required, the immediate improvement may be documentation, warning output, and tests that mark the limitation explicitly.

Definition of done

  • Minimal repro compose files for each issue are added as tests or fixtures.
  • Commands return non-zero when startup fails.
  • Successful one-shot services are not reported as timeouts.
  • Unsupported Compose features produce clear diagnostics instead of silent behavior differences.
  • The tracker checklist above is updated as issues are fixed or determined to be upstream-only.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions