Upgrade a Startup Template
Move a Startup to a newer Version of the Startup Template it extends through a reviewed Change, and update the startup-builder package.
To upgrade, open the Change that moves your Startup Template pin, review its diff, and merge it. Nothing moves until the Change merges.
Prerequisites
- A Startup project with a
startups.lock, such as Leaseline after tutorial 1.
Steps
To see what the Startup is pinned to, read its lockfile:
cat startups.lockTo open the upgrade, call
StartupTemplate.upgrade. It returns the Change with its three-way diff:npx startup-builder do StartupTemplate.upgrade --json '{"startupTemplate":"stpl_9OivLWR17L", "startup": "startup_l3hr1EnUGY"}' To check the Change against your own files and tests, review it:
npx startup-builder do Change.review --json '{"change":"change_3Ex8uVSOyQ"}' To take the upgrade, merge it. A field you changed that the template also changed sends it back to review:
npx startup-builder do Change.merge --json '{"change":"change_3Ex8uVSOyQ"}' To update the package and its types, install the latest
startup-builder:npm install startup-builder@latest
Result
startups.lock pins the new Version by digest, and every override you wrote still applies on top of it. A pinned API caller keeps its Version until it moves.
Next steps
- startups.lock: the pin format.
- Versioning: how API callers move between Versions.
- Customizing: what an upgrade reaches, level by level.