on 376c19e help sign in
helix/docs/releases.md
60 lines 2.8 kB history raw
1## Checklist
3Helix releases are versioned in the Calendar Versioning scheme:
4`YY.0M(.MICRO)`, for example `22.05` for May of 2022. In these instructions
5we'll use `<tag>` as a placeholder for the tag being published.
7* Merge the changelog PR
8* Add new `<release>` entry in `contrib/Helix.appdata.xml` with release information according to the [AppStream spec](https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Releases.html)
9* Tag and push
10 * `git tag -s -m "<tag>" -a <tag> && git push`
11 * Make sure to switch to master and pull first
12* Edit the `VERSION` file and change the date to the next planned release
13 * Releases are planned to happen every two months, so `22.05` would change to `22.07`
14* Wait for the Release CI to finish
15 * It will automatically turn the git tag into a GitHub release when it uploads artifacts
16* Edit the new release
17 * Use `<tag>` as the title
18 * Link to the changelog and release notes
19* Merge the release notes PR
20* Download the macos and linux binaries and update the `sha256`s in the [homebrew formula]
21 * Use `sha256sum` on the downloaded `.tar.xz` files to determine the hash
22* Link to the release notes in this-week-in-rust
23 * [Example PR](https://github.com/rust-lang/this-week-in-rust/pull/3300)
24* Post to reddit
25 * [Example post](https://www.reddit.com/r/rust/comments/uzp5ze/helix_editor_2205_released/)
27[homebrew formula]: https://github.com/Homebrew/homebrew-core/blob/master/Formula/helix.rb
29## Changelog Curation
31The changelog is currently created manually by reading through commits in the
32log since the last release. GitHub's compare view is a nice way to approach
33this. For example when creating the 22.07 release notes, this compare link
34may be used
36```
37https://github.com/helix-editor/helix/compare/22.05...master
38```
40Either side of the triple-dot may be replaced with an exact revision, so if
41you wish to incrementally compile the changelog, you can tackle a weeks worth
42or so, record the revision where you stopped, and use that as a starting point
43next week:
45```
46https://github.com/helix-editor/helix/compare/7706a4a0d8b67b943c31d0c5f7b00d357b5d838d...master
47```
49A work-in-progress commit for a changelog might look like
50[this example](https://github.com/helix-editor/helix/commit/831adfd4c709ca16b248799bfef19698d5175e55).
52Not every PR or commit needs a blurb in the changelog. Each release section
53tends to have a blurb that links to a GitHub comparison between release
54versions for convenience:
56> As usual, the following is a summary of each of the changes since the last
57> release. For the full log, check out the git log.
59Typically, small changes like dependencies or documentation updates, refactors,
60or meta changes like GitHub Actions work are left out.