-
Notifications
You must be signed in to change notification settings - Fork 259
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update documented release process (checklist)
- Loading branch information
Showing
1 changed file
with
41 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,24 +6,50 @@ SPDX-License-Identifier: GPL-2.0-or-later | |
|
||
# Release Checklist | ||
|
||
## Preparing for a new release | ||
Steps to prepare a new release. | ||
|
||
- [ ] Bump version in `meson.build` | ||
- [ ] Bump version in `data/metainfo/org.gnome.Shell.Extensions.GSConnect.metainfo.xml.in` | ||
- [ ] Run `meson _build` | ||
- [ ] Run `meson test -C _build` | ||
- [ ] Make a commit and push it | ||
## Submit a PR to update the version metadata | ||
|
||
## Release: Github | ||
- [ ] Bump the `project(version)` value in `meson.build` | ||
- [ ] Add a corresponding `<release>...</release>` block | ||
to the top of the `<releases>` section in | ||
`data/metainfo/org.gnome.Shell.Extensions.GSConnect.metainfo.xml.in` | ||
- [ ] Merge the PR to create a release commit | ||
|
||
- [ ] Run `meson _build` | ||
- [ ] Run `ninja -C _build make-zip` | ||
- [ ] Tag a new release with notes at `https://github.com/GSConnect/gnome-shell-extension-gsconnect/releases/new` | ||
- [ ] Add `_build/[email protected]` to the release | ||
> [!CAUTION] | ||
> The AppStream metadata will contain a release date for the new version. | ||
> If the PR isn't merged immediately, | ||
> double-check that it matches the current date before merging. | ||
## Release: EGO | ||
## Package the new release | ||
|
||
- [ ] Run `meson _build` | ||
- [ ] Run `ninja -C _build make-zip` | ||
- [ ] Upload `_build/[email protected]` to `https://extensions.gnome.org/upload` | ||
- [ ] Run `git pull` on the `main` branch | ||
- [ ] Run `meson setup _build .` | ||
- [ ] Run `meson compile -C _build make-zip` | ||
|
||
## Publish to GitHub Releases | ||
|
||
- [ ] Open the [New Release template] (or click "Draft a new release" from the Releases page) | ||
- [ ] Create a new `v##` tag matching the new version number | ||
- [ ] Click "Generate release notes" to populate the textarea | ||
with an autogenerated list of PRs, as a starting point | ||
- [ ] Clean up & compose the final notes, which may mean... | ||
|
||
- [ ] Remove automated PRs (dependabot, Crowdin) | ||
- [ ] Remove purely-internal PRs, | ||
like CI, build, or repo-maintenance changes. | ||
Anything that affects the _repo_, but not the _package_, | ||
is probably not relevant to endusers and can be left out. | ||
- [ ] (Optional) Write an introductory "What's New" section, | ||
highlighting any notable changes or new features. | ||
|
||
- [ ] Attach the `_build/[email protected]` file | ||
- [ ] Publish the release | ||
|
||
## Submit to EGO | ||
|
||
Once the release is published to GitHub, | ||
the attached zip file can also be submitted to extensions.gnome.org | ||
by the designated extension author (currently @daniellandau). | ||
|
||
[New Release template]: https://github.com/GSConnect/gnome-shell-extensions-gsconnect/releases/new |