Skip to content

Commit 923a37b

Browse files
committed
docs: document release process steps
1 parent 0a168f7 commit 923a37b

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

docs/release-process.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Release process
2+
3+
I'd wish the release process to be more automated, but for now it's still a
4+
few manual steps.
5+
6+
## Prepare the PR for the new release
7+
8+
1. Find the next version, using semantic versioning, depending on the changes
9+
in the changelog
10+
2. Find and replace the old version with the new version in some files:
11+
- meson.build
12+
- data/usr/share/gnome/help/diffuse/*/diffuse.xml
13+
- data/usr/share/omf/diffuse/diffuse-*.omf
14+
- utils/book2manual.xsl
15+
- windows-installer/build.py
16+
- windows-installer/diffuse.iss
17+
- windows-installer/diffuse.new.iss
18+
3. Update the date for the new release date in these files:
19+
- data/usr/share/gnome/help/diffuse/*/diffuse.xml
20+
- data/usr/share/omf/diffuse/diffuse-*.omf
21+
- utils/book2manual.xsl
22+
3. Update CHANGELOG.md
23+
- Add new line under `## Unreleased` following this syntax: `## x.y.z - YYYY-MM-DD`
24+
- Copy the content of the changes for this release
25+
4. Update AppData release notes in data/io.github.mightycreak.Diffuse.appdata.xml.in:
26+
- Create a new `<release>` tag under `<releases>`, fill the `version` and
27+
`date` attributes
28+
- Create a new `<description>` tag under the new `<release>` tag
29+
- Add one paragraph to sum the release in one sentence (e.g. highlights, ...)
30+
- Paste the changes from the changelog and adapt it to HTML
31+
5. Create new branch and PR
32+
33+
## Create new release on GitHub
34+
35+
1. When everything's green: merge the PR
36+
2. Create a new release on GitHub's [new release page](https://github.com/MightyCreak/diffuse/releases/new):
37+
- Choose a tag: `v` followed with the new version (e.g. `v1.2.3`)
38+
- Release title: the tag (e.g. `v1.2.3`)
39+
- Description:
40+
- For the first paragraph, paste the first paragraph from the release notes
41+
- For the second paragraph, got to [CHANGELOG.md](https://github.com/MightyCreak/diffuse/blob/master/CHANGELOG.md)
42+
and copy the URL anchor to the new release, then add this sentence
43+
(adapt the changelog link):
44+
> For a more detailed list of changes, see the
45+
> [changelog](https://github.com/MightyCreak/diffuse/blob/master/CHANGELOG.md#xyz---yyyy-mm-dd).
46+
3. Publish release
47+
48+
## Create new release on Flatpak
49+
50+
1. Clone the Flathub repository: https://github.com/flathub/io.github.mightycreak.Diffuse
51+
2. Copy the contents of Diffuse's `io.github.mightycreak.Diffuse.yml` to Flathub's
52+
3. Keep Flathub's `config-opts` and `sources` sections
53+
4. In `sources` section, change the `commit` and `tag`
54+
5. Create commit with changes and push to `master`
55+
6. Check the build on Flathub: https://flathub.org/builds/
56+
7. When it's done and successful, publish the build

0 commit comments

Comments
 (0)