Releasing ureq ============== 1. UPDATE CHANGELOG Ensure the changelog is updated. Use git history to highlight the main changes, especially API changes. Smaller things can be omitted. Make a PR for changelog if there is time. 2. CHECK OUTDATED DEPS Quickly scan whether we can bump some dep. Use `cargo install cargo-outdated` as a helper to find them. cargo update cargo outdated --depth=1 The initial update is just to ensure your checkout is using the latest deps allowed by Cargo.toml already. Outdated deps doesn't _have_ to make the release, use your judgement. Make a PR for outdated deps if there is time. 3. UPDATE Cargo.toml VERSION We follow semver. Bug fixes bump patch version, API changes bump minor version. Cargo bump is a helper to update the version in Cargo.toml. `cargo install cargo-bump` cargo bump patch Git commit Cargo.toml and push straight into master. 3. GIT TAG Each release has a corresponding git tag. For version `1.2.3` there would be a `git tag 1.2.3`. The tag should point to the bump commit pushed in 3. Do the tag and git push --tags. 4. WAIT FOR CI Both the push to master and following git tag will cause Github CI to run. Wait for both runs to complete to ensure we have a "good version". 5. PUBLISH Publish the release to crates.io. cargo publish