Skip to content

Commit

Permalink
Explain what happens when PySide6 gets updated
Browse files Browse the repository at this point in the history
Explain what happens when we bump our `poetry.lock`, and a new
Pyside6 version. Also, have a step-by-step guide on how the maintainer
should create a new PySide6 RPM and update FPF's repo, so that
Dangerzone can be released.
  • Loading branch information
apyrgio committed Jan 30, 2024
1 parent 2532720 commit b616d64
Showing 1 changed file with 26 additions and 1 deletion.
27 changes: 26 additions & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ This section documents the release process. Unless you're a dangerzone developer
Before making a release, all of these should be complete:

- [ ] [Add new Linux platforms and remove obsolete ones](#add-new-platforms-and-remove-obsolete-ones)
- [ ] Bump the Python dependencies using `poetry lock`
- [ ] [Check for new PySide6 versions](#check-for-new-pyside6-versions)
- [ ] Update `version` in `pyproject.toml`
- [ ] Update `share/version.txt`
- [ ] Update the "Version" field in `install/linux/dangerzone.spec`
Expand Down Expand Up @@ -48,6 +50,30 @@ In case of an EOL version:
* Consult the previous paragraph, but also `grep` your way around.
2. Add a notice in our `CHANGELOG.md` about the version removal.

## Check for new PySide6 versions

When a new PySide6 version has been released, we will get notified because the
nightly CI tests on `freedomofpres/python3-pyside6-rpm` will start failing.

Even if we miss these notifications, we will see failing builds in the
Dangerzone repo once we update our `poetry.lock` file. More specifically,
`./dev_scripts/env.py --distro fedora [...] build` will start failing, because
it won't be able to find a PySide6 RPM for the new version.

The Dangerzone maintainer should do the following:

1. Check the changelog for the new PySide6 version, and ensure it doesn't
introduce a breaking change.
2. Clone locally the https://github.com/freedomofpress/python3-pyside6-rpm repo.
3. Bump the PySide6 version and create a new PySide6 RPM for the supported
Fedora versions.
4. Copy it under the `dist/` directory of the Dangerzone repo.
5. Create an end-user build environment with `./dev_scripts/env.py --distro fedora [...] build`
6. Test that the Dangerzone UI works properly.
7. Ship the new PySide6 RPMs in our Fedora repo
(https://github.com/freedomofpress/yum-tools-prod)
8. Send a PR to the Dangerzone repo, with the new `poetry.lock` file.

## Large Document Testing

Parallel to the QA process, the release candidate should be put through the large document tests in a dedicated machine to run overnight.
Expand All @@ -61,7 +87,6 @@ These tests will identify any regressions or progression in terms of document co
To ensure that new releases do not introduce regressions, and support existing
and newer platforms, we have to do the following:

- [ ] Bump the Python dependencies using `poetry lock`
- [ ] Make sure that the tip of the `main` branch passes the CI tests.
- [ ] Make sure that the Apple account has a valid application password and has
agreed to the latest Apple terms (see [macOS release](#macos-release)
Expand Down

0 comments on commit b616d64

Please sign in to comment.