# Release Checklist
This checklist should be followed for each release of `bare-script`.
## Pre-Release
- [ ] Ensure all tests pass: `cargo test --all-features`
- [ ] Run clippy: `cargo clippy --all-features -- -D warnings`
- [ ] Run format check: `cargo fmt --check`
- [ ] Update version in `Cargo.toml`
- [ ] Update CHANGELOG.md with release notes
- [ ] Review changes since last release
## Security Checks
- [ ] Run `cargo audit` - no vulnerabilities
- [ ] Verify no `unsafe` code added
- [ ] Check dependencies are up to date
## Documentation
- [ ] Update README.md if needed
- [ ] Verify all doc tests pass: `cargo test --doc`
- [ ] Check API documentation builds: `cargo doc --all-features --no-deps`
## Build Verification
- [ ] Build on Linux
- [ ] Build on macOS
- [ ] Build on Windows
- [ ] Test with different Rust versions (stable, beta, nightly)
## Release Process
- [ ] Create git tag: `git tag v0.x.y`
- [ ] Push tag: `git push origin v0.x.y`
- [ ] Create GitHub release with release notes
## Post-Release
- [ ] Verify crates.io publication (if applicable)
- [ ] Announce release (if applicable)
- [ ] Update CHANGELOG.md for next release