This is a list of steps to complete when making a new release.
- Review the commit and PR history since last release. Ensure that all relevant
changes are included in
CHANGELOG.md
- Ensure the readme and homepage website reflects API changes. This includes changing the download links to reflect the latest version.
- Ensure the version listed in
Cargo.toml
is updated - Update Rust tools:
rustup update
- Run
cargo test
,cargo fmt
- Run
cargo clippy -- -W clippy::pedantic -W clippy::nursery -W clippy::cargo
- Commit and push the repo
- Check that CI pipeline passed
- Run
cargo package
andcargo publish
(Allows installation via cargo) - Run
cargo build --release
on Windows and Linux (to build binaries) - Run
cargo deb
on Ubuntu 16.04 (one built on 18.04 works on 19.04, but not vice-versa) - Run
cargo build --release
, thencargo rpm build
on Centos 7. (This allows easy installation for Red Hat, Fedora, and CentOs users, and binaries built on other OSes appear not to work on these due to OpenSSL issues. - Run
cargo wix
on Windows - Zip the Windows
.exe
, along withREADME.md
andLICENSE
. - Updated the version in
snapcraft.yml
. Runsnapcraft
,snapcraft login
, thensnapcraft push --release=stable pyflow_x.x.x_amd64.snap
on Ubuntu. - Add a release on Github, following the format of previous releases.
- Upload the following binaries to the release page: zipped Windows binary, Linux binary, Msi, Deb, Rpm.