diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b594c7..251b25f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed some types. [#115](https://github.com/jeertmans/languagetool-rust/pull/115) - Derive `Hash` on requests types. [#114](https://github.com/jeertmans/languagetool-rust/pull/114) - Use Codspeed and `check-changelog` actions. [#121](https://github.com/jeertmans/languagetool-rust/pull/121) +- Use `cargo release` and add `RELEASE-PROCESS.md` [#130](https://github.com/jeertmans/languagetool-rust/pull/130) ### Fixed diff --git a/RELEASE-PROCESS.md b/RELEASE-PROCESS.md new file mode 100644 index 0000000..f7670f6 --- /dev/null +++ b/RELEASE-PROCESS.md @@ -0,0 +1,22 @@ +# Release process + +First, make sure you are logged-in https://crates.io with: `cargo login`. +If you don't have write access to **LanguageTool-Rust**' crates, you can still +perform steps 1-4, and ask a maintainer with accesses to perform step 5. + +This project uses `cargo-release` to publish all packages with more ease. +Note that, by default, every command runs in *dry mode*, and you need to append `--execute` +to actually perform the action. + +Here are the following steps to release a new version: + +1. create a branch `release-x.y.z` from the `main` branch; +2. run and commit `cargo release version --workspace `; +3. run and commit `cargo release replace --workspace`; +4. push your branch and create a pull request; +5. and, once your branch was merged to `main`, run the following: + ```bash + cargo release publish --package languagetool-rust + ``` + +And voilĂ !