- Ensure the changelog is updated with everything from the
.changelogs
directory.python3 ./scripts/changelog.py build
will output a Markdown snippet to include inCHANGELOG.md
thenrm .changelog/*.txt
- Run
git pull upstream main
- Run
cargo test
- Run
cargo clean && cargo clippy
- Run
mdbook test docs
- Update
version
in*/Cargo.toml
. All versions should match. - Run
cargo build --release
- Commit the changes (Cargo.lock will change too) with comment
vX.Y.Z
. - Run
git tag vX.Y.Z
- Run
git push upstream
- Run
git push --tags upstream
- Run
( ./build-docs.sh )
- Run
(cd taskchampion; cargo publish)
(note that the other crates do not get published) - Navigate to the tag in the GitHub releases UI and create a release with general comments about the changes in the release
- Upload
./target/release/task
and./target/release/task-sync-server
to the release