Updating And Migrating
Inkstead Writer sites commit a small root ./inkstead-writer command. It reads the version in inkstead-writer.json and downloads the matching release when needed. That keeps each site on the Writer version it records.
The globally installed inkstead-writer command is mainly for creating sites and managing cached binaries. Inside a site, use ./inkstead-writer.
The migrate command compares the version recorded in inkstead-writer.json with the binary you are running. It applies needed migrations, refreshes generated workflow files and the site command, then updates the recorded version. Some releases do not need a site migration.
To update a site to the latest Inkstead Writer release:
$./inkstead-writer updateFor CI or release-check scripts, ./inkstead-writer update --check reports whether a newer release is available without changing files and exits with a non-zero status when the site is out of date. To preview the exact migration without writing changes, run:
$./inkstead-writer update --dry-runTo inspect or prune downloaded binaries:
$./inkstead-writer cache list$./inkstead-writer cache clean --dry-run$./inkstead-writer cache cleanThe cache defaults to ~/Library/Caches/inkstead-writer on macOS and ${XDG_CACHE_HOME:-$HOME/.cache}/inkstead-writer on Linux. Set INKSTEAD_WRITER_CACHE_DIR to use a different location.
To apply migrations for the version already recorded in the site:
$./inkstead-writer migrateThen run:
$./inkstead-writer doctor$./inkstead-writer buildIf you use custom templates, check your theme against the current Themes context values after major upgrades.
If Inkstead Writer reports a manual migration, finish that change and run ./inkstead-writer migrate again. The recorded version is not advanced while a required manual step is still outstanding.