@@ -183,10 +183,39 @@ to include all the changes that have been merged into the main branch. In this c
183
183
you can create a new branch from the latest release tag and cherry-pick the commits
184
184
you want to include in the patch release.
185
185
186
+ #### Rust patch releases
187
+
188
+ You can use [ ` release-plz ` ] ( https://release-plz.ieni.dev/ ) to automatically generate the changelogs and bump the package versions.
189
+
190
+ ``` bash
191
+ # If you have cargo-semver-checks installed,
192
+ # release-plz will ensure your changes don't break the semver rules.
193
+ cargo install cargo-semver-checks --locked
194
+ # Analyze the new comments to generate the changelogs / bump the versions
195
+ release-plz update
196
+ ```
197
+
198
+ Once the branch is ready, create a draft PR so that the release team can review
199
+ it.
200
+
201
+ Now someone from the release team can run ` release-plz ` on the ** unmerged**
202
+ branch to create the github releases and publish to crates.io.
203
+
204
+ ``` bash
205
+ # Make sure you are logged in to `crates.io`
206
+ cargo login < your_crates_io_token>
207
+ # Get a github token with permissions to create releases
208
+ GITHUB_TOKEN=< your_github_token>
209
+ # Run release-plz
210
+ release-plz release --git-token $GITHUB_TOKEN
211
+ ```
212
+
213
+ #### Python patch releases
214
+
186
215
You will need to modify the version and changelog manually in this case. Check
187
216
the existing release PRs for examples on how to do this. Once the branch is
188
- ready, create a [ github release] ( https://github.com/CQCL/tket2/releases/new ) .
189
- The tag should follow the format used in the previous releases, e.g. ` tket2-py-v0.1.1 ` .
217
+ ready, create a draft PR so that the release team can review it.
190
218
191
- For rust crates, you will need someone from the release team to manually
192
- publish the new version to crates.io by running ` cargo release ` .
219
+ The wheel building process and publication to PyPI is handled by the CI.
220
+ Just create a [ github release] ( https://github.com/CQCL/tket2/releases/new ) from the ** unmerged** branch.
221
+ The release tag should follow the format used in the previous releases, e.g. ` tket2-py-v0.1.1 ` .
0 commit comments