Commit graph

75 commits

Author SHA1 Message Date
Alex Pyrgiotis
2371d1c23c
Add release note for containerd graph driver
Fixes #933
2024-09-30 15:45:15 +03:00
deeplow
d0e1df5546
Add drag and drop support for document selection 2024-06-27 11:51:41 +02:00
Alex Pyrgiotis
aebc091400
Explain how to create, sign, and verify source tarballs
Update our docs and scripts to be able to create a source tarball for a
Dangerzone version, sign it, and explain how can users verify it.

Closes #822
2024-06-03 12:59:22 +03:00
Alex Pyrgiotis
a8e51c17d9
Install Python from python.org
Add a note in our release instructions to install Python from
python.org. This should fix some incompatibilities with older macOS
versions.

Refs #471
2024-05-09 17:36:04 +03:00
Alex Pyrgiotis
83c165ae33
dev_scripts: Sign our assets and calculate their hashes
Add a new script called `sign-assets.py`, which produces the hash of all
the Dangerzone assets for a release (Windows/macOS installers, container
image), and signs them individually.

Also update our RELEASE.md document, to incorporate this script into our
release workflow.
2024-05-09 17:32:07 +03:00
Alex Pyrgiotis
b97e9540c1
Fix minor typos in RELEASE.md 2024-05-09 16:46:16 +03:00
Alex Pyrgiotis
d54a152eeb
Update pre-release task for PySide6
Update the description in the pre-release task for PySide6, since a lot
has changed after writing this section. Now that `python3-pyside6` is in
the Fedora Rawhide repo, and will soon get backported in the stable
repos, we no longer check for newer upstream versions, but if Fedora
finally did the backport.

Refs freedomofpress/maint-dangerzone-pyside6#5
2024-04-25 16:23:39 +03:00
Alex Pyrgiotis
83265009a3
Small revamp in our release instructions
Reword, revise, remove release procedure steps, to better reflect what's
the proper time to perform a step.
2024-04-25 16:23:39 +03:00
Alex Pyrgiotis
b920de36d1
Announce our Ubuntu Noble / Fedora 40 support
Closes #762
2024-04-24 14:30:40 +03:00
deeplow
5c86927269
Change "external state" QA scenario to only win/mac
The previous scenario 10 tested the handling of state upon Dangerzone
updates. This, however was particularly difficult to do on Linux due to
the need to add a repository and install, especially in our
semi-automated QA environment.

For this reason this commits removes Linux from this scenario and moves
it closer to the top of the scenarios list to reduce the change of
state "contamination". In other words, before testing the new version,
the tester now installs a previous version and then the new one, thus
guaranteeing that there is no inconsistent state due to installing an
earlier version later in QA.

Fixes #719
2024-04-01 18:18:40 +03:00
Naglis Jonaitis
b284a55dc6
Fix typos 2024-03-28 13:23:36 +02:00
deeplow
4f08f99e93
Add release notes template
Simplifies the release announcement drafting by providing some
templates. It would have been preferable to be a .github config file,
but GitHub does not yet support content templates for release notes.
2024-03-05 14:48:37 +00:00
deeplow
41c48106fb
RELEASE.md: add check for verifying last-minute criticals 2024-03-05 14:46:05 +00:00
Alex Pyrgiotis
aeb8c33b6e
Update expected output for a QA scenario
Inform testers that the container code no longer returns "UNTRUSTED >"
strings in its output. Every string is trusted now, and the output will
be similar for container and Qubes isolation providers alike.
2024-02-20 16:00:35 +02:00
deeplow
e375624fdc
Bump Qubes Fedora on RELEASE.md
Fixes #712
2024-02-15 14:42:01 +00:00
Alex Pyrgiotis
3e10fd1df4
Explain what happens when PySide6 gets updated
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.
2024-01-31 17:11:31 +02:00
Alex Pyrgiotis
46d5827772
Elaborate on how to add/remove Linux platforms
Explain what's the process behind adding/removing Linux platforms, prior
to a release.
2024-01-31 17:11:30 +02:00
Alex Pyrgiotis
d54ef875a6
Add official support for Fedora 39
Now that we can create a Dangerzone RPM that depends on PySide6, we can
officially support Fedora 39 as a platform. Add this platform in our CI
tests, as well as our install/release notes.

Fixes #606
2024-01-31 17:11:30 +02:00
deeplow
250d8356cd
Hash-verify container pip install & merge build-image
Ensure that when the container image is installing pymupdf (unavailable
in the repos) with verified hashes. To do so, it has the pymupdf
dependency declared in a "container" group in `pyproject.toml`, which
then gets exported into a requirements.txt, which is then used for
hash-verification when building the container.

Because this required modifying the container image build scripts, they
were all merged to avoid duplicate code. This was an overdue change
anyways.
2024-01-03 12:58:35 +00:00
Alex Pyrgiotis
e137976581
dev_scripts: Upload release assets to GitHub
Add a script to upload release assets to GitHub. This script can take
either a release ID, a Git tag, or the latest draft release.

Note that while GitHub's official client can upload assets to releases,
it cannot upload them to draft releases [1], hence why we created this
script.

[1]: https://cli.github.com/manual/gh_release_upload
2023-12-21 21:38:39 +02:00
deeplow
2c5f04c2c3
Add instructions for adding release tag
Instructions only stated how to verify the release tag bug not how
to make it.
2023-12-19 08:06:14 +00:00
deeplow
184abfd5fc
Fix Qubes indentation 2023-12-18 08:19:26 +00:00
deeplow
418e388535
Add note that Windows 11 is in a VM 2023-12-18 08:18:27 +00:00
deeplow
2594dab31d
Simplify initial setup section titles 2023-12-18 08:18:27 +00:00
deeplow
bb653b3425
Right-click (scenario 8) can be tested under Qubes
Fixes #641
2023-12-18 08:18:27 +00:00
deeplow
d0e9eea55c
"Checklist-ize" RELEASE.md 2023-12-18 08:18:27 +00:00
deeplow
24ddda4070
Add point about creating an issue for QA & Release 2023-12-18 08:18:27 +00:00
deeplow
b3fed27178
Move container building notice to release instructions 2023-12-18 08:18:27 +00:00
deeplow
65afdc68cd
Add 'Release' section and indent subsections 2023-12-18 08:18:27 +00:00
deeplow
01b107ced9
Title-case various sections for consistency 2023-12-18 08:18:26 +00:00
deeplow
05b8e59d67
Make RELEASE Windows structure similar to macOS 2023-12-18 08:18:26 +00:00
deeplow
3d21e17e3b
Reorganize macOS release into setup and building 2023-12-18 08:18:26 +00:00
deeplow
a936780266
Move pre-release instructions to top of RELEASE
The instructions to cut a release were after all the scenarios which
made them easy to miss.
2023-12-18 08:18:26 +00:00
Alex Pyrgiotis
9bad7ab3bb
Improve the instructions for QA step 10
Clarify how can a tester install the previous version of Dangerzone in
the step 10 of the QA.

Closes #597
2023-12-07 20:45:29 +02:00
Alex Pyrgiotis
8dc8372998
Add extra Qubes QA scenarios
Add some QA scenarios that target QA testing on Qubes.
2023-10-11 10:33:31 +01:00
Alex Pyrgiotis
1961899bed
Bump version to 0.5.0 2023-10-03 11:32:38 +03:00
deeplow
049fa7d484
Update notarization process (altool deprecated)
Following de deprecation notice of the Apple notarization tool 'altool',
we're updating the instructions to reflect the change to the new tool
'notarytool'.

The migration process essentially required updating the commands and
migrating credentials. It is documented in [1].

Fixes #506

[1]: https://developer.apple.com/documentation/technotes/tn3147-migrating-to-the-latest-notarization-tool
2023-10-02 16:03:32 +01:00
Alex Pyrgiotis
af7087af65
Update our release/QA instructions for Qubes
Update the release/QA instructions for Qubes, so that they take into
account the fact that we can now publish a Qubes RPM through our
official repos.
2023-09-25 12:51:41 +03:00
deeplow
b73ce5bf6a
Add large test logic and documentation
Adds a large pool of document that can and should be used prior to a
release to understand effects of the new release over a real-world
scenario.

Documents are stored in an external git LFS repo under
`tests/test_docs_large` and currently it's about 11K documents gathered
from multiple PDF readers and office suite's test sets.

Documentation on how to run the tests is under
`docs/developer/TESTING.md`
2023-08-22 16:11:31 +01:00
Alex Pyrgiotis
00adf223a5
Add release requirements for Apple account 2023-08-22 12:05:40 +03:00
Alex Pyrgiotis
404c49874b
Prefer grabbing the altool password from the keychain
Closes #522
2023-08-22 12:05:40 +03:00
Alex Pyrgiotis
664e0c1477
Update our release instructions
Update our release instructions in the following ways:

1. Make sure to check the Python dependencies / version before the
   release.
2. Make sure to upload the final container.tar.gz image as a release
   artifact.
2023-08-02 13:43:03 +03:00
deeplow
f66375bd44
Add QA instructions for Qubes alpha support 2023-07-26 14:03:15 +01:00
Alex Pyrgiotis
f4b29b72fc
Add support for Fedora 38 in the QA script
Update the release instructions and the QA script to support Fedora 38.
2023-05-16 16:20:32 +03:00
Alex Pyrgiotis
1ae7581df6
Use a different certificate for MacOS
Replace our reference to an Apple development certificate with a
Developer ID Application certificate. The former is not accepted during
the code notarization phase, whereas the latter is.
2023-04-24 11:50:58 +03:00
Alex Pyrgiotis
4c346154b2
Minor fixes in the Fedora release instructions 2023-04-24 11:50:57 +03:00
Alex Pyrgiotis
7f7d8bc2cc
Update notarization instructions 2023-04-24 11:50:57 +03:00
Alex Pyrgiotis
dce516b4e8
Add dev instructions for building Debian packages 2023-04-14 10:54:43 +03:00
deeplow
49f72320d9
Update macOS release building instructions
Make the instructions consistent with the release building changes.
2023-04-14 08:50:58 +01:00
deeplow
78959100a8
Update fedora installation / release instructions
Changes instructions from the packagecloud setup to
packages.freedom.press

Delegates the key import to .repo configuration, following the example
of docker's install instructions [1].

[1]: https://docs.docker.com/engine/install/fedora/#install-docker-engine
2023-04-14 08:41:55 +01:00