@@ -315,9 +315,18 @@ even patch releases may contain [non-backwards-compatible changes](https://semve
315
315
316
316
# ## Creating a new release
317
317
318
- 1. Update the version with ` rg 0.0.269 --files-with-matches | xargs sed -i ' s/0.0.269/0.0.270/g' `
319
- 1. Update ` BREAKING_CHANGES.md`
320
- 1. Create a PR with the version and ` BREAKING_CHANGES.md` updated
318
+ We use an experimental in-house tool for managing releases.
319
+
320
+ 1. Install ` rooster` : ` pip install git+https://github.com/zanieb/rooster@main`
321
+ 1. Run ` rooster release` ; this command will:
322
+ - Generate a changelog entry in ` CHANGELOG.md`
323
+ - Update versions in ` pyproject.toml` and ` Cargo.toml`
324
+ - Update references to versions in the ` README.md` and documentation
325
+ 1. The changelog should then be editorialized for consistency
326
+ - Often labels will be missing from pull requests they will need to be manually organized into the proper section
327
+ - Changes should be edited to be user-facing descriptions, avoiding internal details
328
+ 1. Highlight any breaking changes in ` BREAKING_CHANGES.md`
329
+ 1. Create a pull request with the changelog and version updates
321
330
1. Merge the PR
322
331
1. Run the release workflow with the version number (without starting ` v` ) as input. Make sure
323
332
main has your merged PR as last commit
@@ -330,7 +339,11 @@ even patch releases may contain [non-backwards-compatible changes](https://semve
330
339
1. Attach artifacts to draft GitHub release
331
340
1. Trigger downstream repositories. This can fail non-catastrophically, as we can run any
332
341
downstream jobs manually if needed.
333
- 1. Create release notes in GitHub UI and promote from draft.
342
+ 1. Publish the GitHub release
343
+ 1. Open the draft release in the GitHub release section
344
+ 1. Copy the changelog for the release into the GitHub release
345
+ - See previous releases for formatting of section headers
346
+ 1. Generate the contributor list with ` rooster contributors` and add to the release notes
334
347
1. If needed, [update the schemastore](https://github.com/charliermarsh/ruff/blob/main/scripts/update_schemastore.py)
335
348
1. If needed, update the ` ruff-lsp` and ` ruff-vscode` repositories.
336
349
0 commit comments