Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ body:
label: "XDG Desktop Portal version"
description: "What version of XDG Desktop Portal are you using?"
options:
- "1.21"
- "main"
- "2"
- "1.20"
- "1.18"
- Git
- Other
validations:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Release new version
on:
push:
tags:
- '[0-9]+.[0-9]+.[0-9]+'
- '[0-9]+\.[a-z0-9]+'

jobs:
build-container:
Expand Down Expand Up @@ -54,7 +54,7 @@ jobs:
echo $releaseChangelog

# Check if version is a pre-release
preRelease=$((`echo $releaseVersion | cut -d '.' -f2` % 2))
preRelease=$([[ $releaseVersion =~ ^[0-9]+\.[0-9]+$ ]]; echo $?)
{
echo -n "preRelease="
if [ $preRelease = 1 ] || [ $preRelease = "true" ]; then
Expand Down
6 changes: 3 additions & 3 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Changes in 1.21.0
=================
Released: Not yet
Changes in 2.rc0
================
Released: 2025-08-19

...

Expand Down
67 changes: 26 additions & 41 deletions RELEASE_HOWTO.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

### Prepare the release

- Make sure the version in `meson.build` is correct
- Create a branch
```sh
$ git checkout -b release-${version}
Expand All @@ -13,30 +12,38 @@ $ ninja -C ${builddir} xdg-desktop-portal-update-po
$ git add po/
$ git commit -m "Update translations"
```
- If this is the first release of a new stable release series, update
`SECURITY.md`. It should list the development branch, new stable branch, and
old stable branch as currently maintained.
- Add your changelog to the `NEWS.md` file
```sh
$ git add NEWS.md
$ git commit -m ${version}
- Update `.github/ISSUE_TEMPLATE/bug-report.yml`. It should list `main`, and the
new currently maintained major releases, under "XDG Desktop Portal version".
- Update version number in `meson.build` to the next version
- If this is a major release, update `SECURITY.md`. It should list the
development version, the current version, and the previous, still maintained
version.
- Add your changelog to a new section in the `NEWS.md` file
```md
Changes in ${version}
=================
Released: ${date}

...
```
- Push your branch
- Commit changes and push your branch
```sh
$ git add ...
$ git commit -m ${version}
$ git push -u ${fork} release-${version}
```
- Open a pull request

- Merge the pull request and wait for it to reach the `main` branch or the
stable branch
- Open a pull request against the `main` branch for a major release, or the
major release branch (e.g. `xdg-desktop-portal-4`) for a minor release
- Merge the pull request and wait for it to get merged and CI to succeed

### Create a Signed Tag

**NOTE**: Only project maintainers can create a tag.

Make sure that:
- You're on the `main` branch, or a stable branch;
- The tip of the branch is a release commit (e.g. `1.19.4`)
- You're on the correct branch (`main` or a major release branch)
- The tip of the branch is a release commit (e.g. `4` on the `main` branch,
or `5.1` on a major release branch)
- The version in `meson.build` is correct

Then create the tag:
Expand All @@ -49,30 +56,8 @@ $ git push -u origin ${version}
Copy paste the release notes from NEWS.md into the tag message when running
`git evtag`.

### Post-Release

- Update version number in `meson.build` to the next release version
- Start a new section in `NEWS.md`
```md
Changes in ${nextVersion}
=================
Released: Not yet

...
```

- Commit the changes as "Post-release version bump" and push to the
corresponding branch

### Post-Branching
### Branching

After creating a stable branch:

- Update version number in `meson.build` to the next unstable release version.
For example if the created stable branch name is xdg-desktop-portal-1.N, bump
the version to 1.N+1.0. Commit as "Post-branching version bump".
- Update `.github/ISSUE_TEMPLATE/bug-report.yml`. It should list the
development version, and the currently maintained stable versions, under "XDG
Desktop Portal version".
- Update the pending entry in NEWS.md to refer to the next unstable version.
- Push changes to the `main` branch.
When appropriate (usually a bit after a major release), create a release branch
(e.g. `xdg-desktop-portal-4` for the major version 4 series) and resume feature
development on the `main` branch.
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ please check

| Version | Supported | Status
| -------- | ------------------ | ------------------------------------------------------------- |
| 1.21.x | :white_check_mark: | Development branch, releases may include non-security changes |
| 2.rc0 | :white_check_mark: | Development branch, releases may include non-security changes |
| 1.20.x | :white_check_mark: | Stable branch, recommended for use in distributions |
| 1.18.x | :white_check_mark: | Old stable branch, still maintained |
| <= 1.16.x | :x: | Older branches, no longer supported |
2 changes: 1 addition & 1 deletion meson.build
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
project(
'xdg-desktop-portal',
'c',
version: '1.21.0',
version: '2.rc0',
meson_version: '>= 0.60',
license: 'LGPL-2.0-or-later',
default_options: [
Expand Down
Loading