Skip to content

Releases: us/mocker

v0.4.1

19 Jun 22:54
707969e

Choose a tag to compare

0.4.1 (2026-06-19)

Features

  • image,container: add canonical ls group subcommand (7ff07f1)

Bug Fixes

  • make image/container ls flags Docker-accurate (e1aa122)

v0.4.0

16 Jun 07:38

Choose a tag to compare

0.4.0 (2026-06-16)

⚠ BREAKING CHANGES

  • image inspect output now uses the Docker ImageInspect shape — a JSON array of objects with PascalCase keys (Id, RepoTags, Created, Size, Config, RootFS, ...) instead of a single object with lowercase keys (id, repository, tag, size, created, labels). The Id field now reports the image config digest (Docker parity) rather than the index digest, so it differs from 'mocker images'. MockerKit consumers: ImageManager.inspect(_:) now returns ImageInspect (was ImageInfo) and takes an optional platform: argument.

Bug Fixes

  • add Docker-compatible ImageInspect model and mapping (aa318d5)
  • address image inspect review feedback (8c6c5ec)
  • compose: forward published ports (#19) and accept -f before subcommand (#21) (#22) (5255e50)
  • make image inspect Docker-compatible and honor --type (2b80af3)

v0.3.2

12 Jun 13:03
8b00c5a

Choose a tag to compare

0.3.2 (2026-06-11)

Features

  • build: forward --builder to container build (3024963), closes #10

Bug Fixes

  • compose: forward build.target/args and honor image+build (#14) (31a9a69)

v0.3.1

05 May 06:29

Choose a tag to compare

0.3.1 (2026-05-05)

Bug Fixes

  • manifest: orphan blob safety, CLI UX, and version sync (a27f94d)

v0.3.0

05 May 04:31
f3f4025

Choose a tag to compare

0.3.0 (2026-05-05)

⚠ BREAKING CHANGES

  • build: MockerKit consumers calling ImageManager.build(platform:) must migrate to platforms:.

Features

  • build: support multi-platform builds via repeated --platform (685979b)
  • config: auto-detect Apple container CLI store (941ea6b)
  • manifest: add 'manifest add', 'rm', and 'push' subcommands (b6fa46a)
  • manifest: add 'mocker manifest annotate' for platform metadata overrides (3d7f7a9)
  • manifest: add 'mocker manifest create' to assemble OCI image indexes (a62312d)
  • manifest: add 'mocker manifest inspect' for OCI image indexes (d051edb)

Bug Fixes

  • image: wire --platform through pull/push and drop hardcoded arm64 (148d045)

v0.2.1

25 Apr 08:01
17b2fef

Choose a tag to compare

0.2.1 (2026-04-25)

Features

  • add nested virtualization support for run/create (85362fa), closes #4

v0.2.0 -- Ground Truth

28 Mar 15:41
@us us

Choose a tag to compare

Ground Truth

This release prioritizes honesty over feature claims. Commands either work or tell you they can't.

Breaking Changes

  • mocker create, rename, pause, unpause now return explicit unsupported errors instead of silently mutating local metadata
  • mocker login / logout now return unsupported error (credentials were never consumed by pull/push)
  • Unsupported flags in mocker run now produce stderr warnings

Security Fixes

  • Fix shell injection in copyToContainer -- replaced sh -c with stdin pipe to tee
  • Fix shell injection in compose hostname injection -- same pattern
  • Fix pipe-buffer deadlock in both paths (async terminationHandler instead of blocking waitUntilExit)

Flag Forwarding

  • Forward Apple CLI flags in mocker run: -i, -t, -c, -m, --label, --cidfile, --rm, --tmpfs, --dns-search, --dns-option, --platform
  • Forward Apple CLI flags in mocker build: --label, --quiet, --progress, --output
  • Fix hostname parser (use assigned name, not inspect hostname field)

Documentation

  • 12 commands marked [unsupported] in COMMANDS.md
  • Compatibility notes added to both READMEs
  • Feature claims qualified ("Docker CLI compatible" not "full compatibility")

Testing

  • ProcessRunner protocol + MockProcessRunner actor for testability
  • 16 new tests (42 total, was 26)
  • ContainerEngine, ComposeOrchestrator, and flag enforcement tests

Other

  • All version strings unified via Version.currentVersion
  • Volume list prunes stale entries where _data/ directory no longer exists

Full Changelog

v0.1.9...v0.2.0

v0.1.9 -- Full Docker CLI Flag Compatibility

14 Mar 13:05
@us us

Choose a tag to compare

Full Docker CLI Flag Compatibility

Mocker now matches Docker's CLI flag-for-flag across 111 commands and subcommands.

Highlights

  • run / create: ~50 new flags -- --attach, --cpu-shares, --gpus, --init, --memory, --privileged, --restart, --security-opt, --shm-size, --ulimit, and more
  • build: ~25 BuildKit/Buildx flags -- --cache-from, --cache-to, --load, --push, --secret, --ssh, --sbom, --provenance
  • compose: ~200+ flags across 34 subcommands (was 22, added 12 missing ones)
  • Network / Volume / System: all missing flags added

New Commands

  • mocker commit -- create image from container changes
  • mocker container prune -- remove stopped containers
  • mocker container export -- export container filesystem
  • mocker image rm / image inspect / image prune -- full image subcommand group

New Compose Subcommands

  • compose events -- receive real-time events from containers
  • compose attach -- attach to a service container
  • compose commit / export -- image and filesystem operations
  • compose scale -- scale services
  • compose stats -- resource usage statistics
  • compose version / volumes / wait / watch / bridge / publish

Documentation

  • CHANGELOG.md -- full version history from v0.1.0 to present
  • COMMANDS.md -- comprehensive reference of all 111 commands with every flag
  • What's New sections added to both English and Chinese READMEs

Full Changelog

v0.1.8...v0.1.9

v0.1.8

09 Mar 11:22

Choose a tag to compare

ci: fix homebrew-tap commit author and update runner to macos-26

v0.1.7

08 Mar 15:13

Choose a tag to compare

fix: support compose.yaml / compose.yml as default compose file names

* Initial plan

* fix: support compose.yml and compose.yaml as default compose file names

Co-authored-by: kmplngj <562965+kmplngj@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>