# Release Process (Source-Available)
This project is released publicly as source-available under the non-commercial
license in [`LICENSE`](LICENSE).
## 1. Pre-release checks
Run locally:
```bash
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targets --all-features
cargo test --doc
cargo doc --no-deps
```
## 2. Finalize notes
- Move relevant entries from `CHANGELOG.md` `Unreleased` into a versioned section.
- Verify docs and terminology consistently use "source-available".
## 3. Tag release
```bash
git tag -a vX.Y.Z -m "Rustlift vX.Y.Z"
git push origin vX.Y.Z
```
## 4. Create GitHub release
- Title: `Rustlift vX.Y.Z`
- Notes: copy from the matching section in `CHANGELOG.md`
- Include:
- Summary of behavior changes
- Migration notes (if any)
- Known limitations
## 5. Post-release
- Update release documentation as needed (for example `README.md`, `CHANGELOG.md`, and `SUPPORT.md`).
- Announce release and support expectations.