Release Process¶
This project uses Changesets for automated version management and publishing.
For full details, see RELEASE.md in the project root.
Quick Reference¶
Adding a Changeset¶
This prompts you to select packages, choose a bump type (patch/minor/major), and write a description.
What Gets Published¶
On each release, the following are published automatically:
npm (18 packages): All @ifc-lite/* packages + create-ifc-lite
crates.io (3 crates): ifc-lite-core, ifc-lite-geometry, ifc-lite-wasm
GitHub Release: Version tag + server binaries for 6 platforms
Version Synchronization¶
All packages use fixed versioning - when any package bumps, all bump to the same version. The scripts/sync-versions.js script keeps npm and Cargo.toml versions in sync.
Workflow¶
- Create a PR with your changes and a changeset file
- Merge to
main- the Changesets bot creates a "Version Packages" PR - Review and merge the "Version Packages" PR to trigger publishing
See RELEASE.md for emergency manual release instructions, troubleshooting, and FAQ.