taskchampion-sync-server/RELEASING.md
Dustin J. Mitchell 65a3d806d7
Followup to the 0.5.0 release (#76)
* Document RELEASING.md process
* Bump version numbers
* Do not automatically produce GH releases, and do not build binaries to attach to them
* Only build docker images on tags
* Use the `latest` Docker image tag in the Docker-compose config
2024-12-15 22:51:57 -05:00

1.1 KiB

Release process

  1. Run git pull upstream main
  2. Run cargo test
  3. Run cargo clean && cargo clippy
  4. Remove the -pre from version in all */Cargo.toml, and from the version = .. in any references between packages.
  5. Run cargo semver-checks (https://crates.io/crates/cargo-semver-checks)
  6. Run cargo build --release
  7. Commit the changes (Cargo.lock will change too) with comment vX.Y.Z.
  8. Run git tag vX.Y.Z
  9. Run git push upstream
  10. Run git push upstream --tag vX.Y.Z
  11. Run cargo publish -p taskchampion-sync-server-core
  12. Run cargo publish -p taskchampion-sync-server-storage-sqlite (and add any other new published packages here)
  13. Bump the patch version in */Cargo.toml and add the -pre suffix. This allows cargo-semver-checks to check for changes not accounted for in the version delta.
  14. Run cargo build --release again to update Cargo.lock
  15. Commit that change with comment "Bump to -pre version".
  16. Run git push upstream
  17. Navigate to the tag in the GitHub releases UI and create a release with general comments about the changes in the release