Skip to content

Releases: frankenpress/mu-plugin

v0.15.2

16 May 19:12
5c34ce5

Choose a tag to compare

What's Changed

Full Changelog: v0.15.1...v0.15.2

What's Changed

Full Changelog: v0.15.1...v0.15.2

v0.15.1

16 May 12:57
09825e1

Choose a tag to compare

What's Changed

  • feat(apply): AuthorRemapper for WXR-imported post_author (fp pull Phase 2) by @MatthewKennedy in #50

Full Changelog: v0.15.0...v0.15.1

What's Changed

  • feat(apply): AuthorRemapper for WXR-imported post_author (fp pull Phase 2) by @MatthewKennedy in #50

Full Changelog: v0.15.0...v0.15.1

v0.15.0

16 May 12:50
883f947

Choose a tag to compare

What's Changed

  • chore(.aidocs): move cache-architecture.md here from workspace .aidocs/ by @MatthewKennedy in #47
  • docs(readme): mark FP_SMTP_USERNAME/PASSWORD as conditionally required by @MatthewKennedy in #48
  • feat: SnapshotExporter component (5th request-path) + Factory extract by @MatthewKennedy in #49

Full Changelog: v0.14.1...v0.15.0

What's Changed

  • chore(.aidocs): move cache-architecture.md here from workspace .aidocs/ by @MatthewKennedy in #47
  • docs(readme): mark FP_SMTP_USERNAME/PASSWORD as conditionally required by @MatthewKennedy in #48
  • feat: SnapshotExporter component (5th request-path) + Factory extract by @MatthewKennedy in #49

Full Changelog: v0.14.1...v0.15.0

v0.14.1 — Tier 1D: mu-plugin clarity wins

14 May 19:11
cb33605

Choose a tag to compare

What's Changed

Full Changelog: v0.14.0...v0.14.1

What's Changed

Full Changelog: v0.14.0...v0.14.1

v0.14.0 — apply preflight for missing snapshot binaries

14 May 11:01
ff99b7d

Choose a tag to compare

Apply now hard-fails on missing snapshot binaries

When a snapshot's attachments.json declares binary files that aren't actually present under <snapshot_dir>/uploads/, wp fp apply used to silently land the attachment post row and skip the binary copy — leaving a broken-image front end and exit code 0. Designers hit this after the round-trip:

fp snapshot
docker compose down -v
docker compose up -d
fp apply
# DB has site_logo=42 but /app/web/app/uploads/2026/05/logo.png is missing → 404

This release adds a preflight pass at the top of Restorer::apply(). Missing files surface as a single WP_CLI::error() listing every offending path with a remediation hint. copy_binaries()'s silent continue is replaced with a throw (defense in depth for the preflight→copy race).

What changed

  • New Restorer::verify_attachment_binaries() runs before any DB writes.
  • copy_binaries() now throws instead of silently skipping missing files.
  • New tests/CliRestorerVerifyBinariesTest.php covers both branches.

Behaviour change

A snapshot whose attachments.json declares files not on disk now hard-fails at apply time. Schema is unchanged (fp.snapshot/v5). Most installs see no change — only those whose snapshot dirs were already missing binaries (e.g. corrupted commits, git LFS not pulled, manual cleanup) will surface as failures.

Upgrading

Site composer.json:

-"frankenpress/mu-plugin": "^0.13.0"
+"frankenpress/mu-plugin": "^0.14.0"

Then rebuild and tag the site image, and roll through your GitOps. No data migration, no schema bump.

Full diff

#44

What's Changed

Full Changelog: v0.13.11...v0.14.0

v0.13.11

13 May 21:06
5dbe562

Choose a tag to compare

What's Changed

  • fix(snapshot): emit empty templates_slugs entry for owned post types with no rows by @MatthewKennedy in #43

Full Changelog: v0.13.10...v0.13.11

v0.13.10

13 May 21:02
dd06303

Choose a tag to compare

What's Changed

  • fix(snapshot): drift linter accepts site-tracked plugins/themes by @MatthewKennedy in #42

Full Changelog: v0.13.9...v0.13.10

v0.13.9

13 May 18:01
767b3ba

Choose a tag to compare

What's Changed

  • feat(snapshot/apply): warn on unreferenced media + set attachment post_author by @MatthewKennedy in #41

Full Changelog: v0.13.8...v0.13.9

v0.13.8

13 May 17:56
05d638c

Choose a tag to compare

What's Changed

  • feat(snapshot): drift linter — refuse to snapshot with non-composer plugins/themes by @MatthewKennedy in #40

Full Changelog: v0.13.7...v0.13.8

v0.13.7

13 May 17:50
a6e20e2

Choose a tag to compare

What's Changed

  • feat(apply): deletion-propagation reaper for orphan owned-post rows by @MatthewKennedy in #39

Full Changelog: v0.13.6...v0.13.7