mirror of
https://github.com/sharkdp/fd.git
synced 2026-08-29 02:32:00 +08:00
2.4 KiB
Vendored
2.4 KiB
Vendored
Release checklist
This file can be used as-is, or copied into the GitHub PR description which includes necessary changes for the upcoming release.
Version bump
- Create a new branch for the required changes for this release.
- Update version in
Cargo.toml. Runcargo buildto updateCargo.lock. Make sure togit addtheCargo.lockchanges as well. - Find the current min. supported Rust version by running
grep rust-version Cargo.toml. - Update the
fdversion and the min. supported Rust version inREADME.md. - Update
CHANGELOG.md. Change the heading of the "Upcoming release" section to the version of this release.
Pre-release checks and updates
- Install the latest version (
cargo install --locked -f --path .) and make sure that it is available on thePATH(fd --versionshould show the new version). - Review
-h,--help, and themanpage. - Run
fd -hand copy the output to the "Command-line options" section in the README - Push all changes and wait for CI to succeed (before continuing with the next section).
- Optional: manually test the new features and command-line options described
in the
CHANGELOG.md. - Run
cargo publish --dry-runto make sure that it will succeed later (after creating the GitHub release).
Release
- Merge your release branch (should be a fast-forward merge).
- Create a tag and push it:
git tag vX.Y.Z; git push origin tag vX.Y.Z. This will trigger the deployment via GitHub Actions. REMINDER: If youroriginis a fork, don't forget to push to e.g.upstreaminstead. - Go to https://github.com/sharkdp/fd/releases/new to create the new
release. Select the new tag and also use it as the release title. For the
release notes, copy the corresponding section from
CHANGELOG.mdand possibly add additional remarks for package maintainers. Publish the release. - Check if the binary deployment works (archives and Debian packages should appear when the CI run for the Git tag has finished).
- Publish to crates.io by running
cargo publishin a clean repository. One way to do this is to clone a fresh copy.
Post-release
-
Prepare a new "Upcoming release" section at the top of
CHANGELOG.md. Put this at the top:# Upcoming release ## Features ## Bugfixes ## Changes ## Other