Alexis Métaireau
7eb54c3dd5
Split updater GUI code from the code checking for release updates
...
The code making the actual requests and checks now lives in the
`updater.releases` module. The code should be easier to read and to
reason about.
Tests have been updated to reflect this.
2025-02-27 17:55:00 +01:00
Alexis Métaireau
f1dac59fb8
FIXUP commit for signature tests
2025-02-26 21:26:49 +01:00
Alexis Métaireau
3f6c134d93
FIXUP: Use user data dir rather than config
2025-02-26 16:30:25 +01:00
Alexis Métaireau
c313c6d1d7
FIXUP: Use the digest when pulling the container
2025-02-26 16:03:28 +01:00
Alexis Métaireau
760948b5b5
Add tests for registry
2025-02-25 17:20:25 +01:00
Alexis Métaireau
49c4cee898
make the signature tests pass
2025-02-25 15:44:46 +01:00
Alexis Métaireau
22d01a4045
fixup! c9c301d833
2025-02-25 15:44:24 +01:00
Alexis Métaireau
7e4cd66d2b
fixup! b4818ce854
2025-02-25 15:44:24 +01:00
Alexis Métaireau
d93c99f8e2
fixup! b4818ce854
2025-02-25 15:44:24 +01:00
Alexis Métaireau
43f6d89bbb
fixup! b37815a96c
2025-02-25 15:44:24 +01:00
Alexis Métaireau
bba427d619
fixup! 83418f09f2
2025-02-25 15:44:24 +01:00
Alexis Métaireau
4a4bf7c571
fixup! 3e861cc0cd
2025-02-25 15:44:24 +01:00
Alexis Métaireau
7e283196d8
fixup! 35704b8a18
2025-02-25 15:44:24 +01:00
Alexis Métaireau
8381b2fb7b
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
7baddd0064
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
0c063b5b27
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
01f7b37151
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
9bf663fdb9
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
cf7a3dbb56
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
4621902a2b
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
ec4028b486
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
43cb02bcca
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
ab51a71bdf
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
b5bfbb5d6e
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
3e861cc0cd
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
83418f09f2
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
fb89f00c73
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
ecb3d87b1f
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
a4fa6aaed8
fixup! (WIP) Add tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
c9c301d833
fixup! (WIP) some more tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
b37815a96c
fixup! (WIP) some more tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
35704b8a18
fixup! (WIP) some more tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
b4818ce854
fixup! (WIP) some more tests
2025-02-25 15:44:08 +01:00
Alexis Métaireau
0f2d81dbd6
(WIP) some more tests
2025-02-13 19:12:25 +01:00
Alexis Métaireau
a540fc5b08
(WIP) Add tests
2025-02-12 18:23:12 +01:00
Alexis Métaireau
c2841dcc08
Run ruff format
Tests / build-container-image (push) Has been cancelled
Tests / Download and cache Tesseract data (push) Has been cancelled
Tests / windows (push) Has been cancelled
Tests / macOS (arch64) (push) Has been cancelled
Tests / macOS (x86_64) (push) Has been cancelled
Tests / build-deb (debian bookworm) (push) Has been cancelled
Tests / build-deb (debian bullseye) (push) Has been cancelled
Tests / build-deb (debian trixie) (push) Has been cancelled
Tests / build-deb (ubuntu 20.04) (push) Has been cancelled
Tests / build-deb (ubuntu 22.04) (push) Has been cancelled
Tests / build-deb (ubuntu 24.04) (push) Has been cancelled
Tests / build-deb (ubuntu 24.10) (push) Has been cancelled
Tests / install-deb (debian bookworm) (push) Has been cancelled
Tests / install-deb (debian bullseye) (push) Has been cancelled
Tests / install-deb (debian trixie) (push) Has been cancelled
Tests / install-deb (ubuntu 20.04) (push) Has been cancelled
Tests / install-deb (ubuntu 22.04) (push) Has been cancelled
Tests / install-deb (ubuntu 24.04) (push) Has been cancelled
Tests / install-deb (ubuntu 24.10) (push) Has been cancelled
Tests / build-install-rpm (fedora 40) (push) Has been cancelled
Tests / build-install-rpm (fedora 41) (push) Has been cancelled
Tests / run tests (debian bookworm) (push) Has been cancelled
Tests / run tests (debian bullseye) (push) Has been cancelled
Tests / run tests (debian trixie) (push) Has been cancelled
Tests / run tests (fedora 40) (push) Has been cancelled
Tests / run tests (fedora 41) (push) Has been cancelled
Tests / run tests (ubuntu 20.04) (push) Has been cancelled
Tests / run tests (ubuntu 22.04) (push) Has been cancelled
Tests / run tests (ubuntu 24.04) (push) Has been cancelled
Tests / run tests (ubuntu 24.10) (push) Has been cancelled
2025-01-23 14:48:33 +01:00
Alexis Métaireau
3d5cacfffb
Warn users if the minimum version of Docker Desktop is not met
...
This only happens on Windows and macOS.
Fixes #693
2025-01-21 10:21:24 +01:00
jkarasti
cecfe63338
Lint: Fix unused-import (F401)
2024-12-17 17:44:32 +01:00
jkarasti
4da6b92e12
Format: Run ruff format
over the source code
2024-12-17 17:44:31 +01:00
Alex Pyrgiotis
0383081394
Factor out container utilities to separate module
2024-12-10 11:31:39 +02:00
Alex Pyrgiotis
25fba42022
Extend the interface of the isolation provider
...
Add the following two methods in the isolation provider:
1. `.is_available()`: Mainly used for the Container isolation provider,
it specifies whether the container runtime is up and running. May be
used in the future by other similar providers.
2. `.should_wait_install()`: Whether the isolation provider takes a
while to be installed. Should be `True` only for the Container
isolation provider, for the time being.
2024-12-10 11:29:00 +02:00
Alex Pyrgiotis
e22c795cb7
container: Revamp container image installation
...
Revamp the container image installation process in a way that does not
involve using image IDs. We don't want to rely on image IDs anymore,
since they are brittle (see
https://github.com/freedomofpress/dangerzone/issues/933 ). Instead, we
use image tags, as provided in the `image-id.txt` file. This allows us
to check fast if an image is up to date, and we no longer need to
maintain multiple image IDs from various container runtimes.
Refs #933
Refs #988
Fixes #1020
2024-12-10 11:29:00 +02:00
Alex Pyrgiotis
309bd12423
Move container-specific method from base class
...
Move the `is_runtime_available()` method from the base
`IsolationProvider` class, and into the `Dummy` provider class. This
method was originally defined in the base class, in order to be mocked
in our tests for the `Dummy` provider. There's no reason for the `Qubes`
class to have it though, so we can just move it to the `Dummy` provider.
2024-12-09 19:19:21 +02:00
Alexis Métaireau
504a9e1df2
tests: mark the hancom office suite tests for rerun on failures
...
Tests / run tests (fedora 41) (push) Has been cancelled
Tests / run tests (ubuntu 20.04) (push) Has been cancelled
Tests / run tests (ubuntu 22.04) (push) Has been cancelled
Tests / run tests (ubuntu 24.04) (push) Has been cancelled
Tests / run tests (ubuntu 24.10) (push) Has been cancelled
Tests / windows (push) Has been cancelled
Tests / macOS (arch64) (push) Has been cancelled
Tests / macOS (x86_64) (push) Has been cancelled
Tests / build-deb (debian bookworm) (push) Has been cancelled
Tests / build-deb (debian bullseye) (push) Has been cancelled
Tests / build-deb (debian trixie) (push) Has been cancelled
Tests / build-deb (ubuntu 20.04) (push) Has been cancelled
Tests / build-deb (ubuntu 22.04) (push) Has been cancelled
Tests / build-deb (ubuntu 24.04) (push) Has been cancelled
Tests / build-deb (ubuntu 24.10) (push) Has been cancelled
Tests / install-deb (debian bookworm) (push) Has been cancelled
Tests / install-deb (debian bullseye) (push) Has been cancelled
Tests / install-deb (debian trixie) (push) Has been cancelled
Tests / install-deb (ubuntu 20.04) (push) Has been cancelled
Tests / install-deb (ubuntu 22.04) (push) Has been cancelled
Tests / install-deb (ubuntu 24.04) (push) Has been cancelled
Tests / install-deb (ubuntu 24.10) (push) Has been cancelled
Tests / build-install-rpm (fedora 39) (push) Has been cancelled
Tests / build-install-rpm (fedora 40) (push) Has been cancelled
Tests / build-install-rpm (fedora 41) (push) Has been cancelled
Tests / run tests (debian bookworm) (push) Has been cancelled
Tests / run tests (debian bullseye) (push) Has been cancelled
Tests / run tests (debian trixie) (push) Has been cancelled
Tests / run tests (fedora 39) (push) Has been cancelled
Tests / run tests (fedora 40) (push) Has been cancelled
It seem that these tests are flaky, and as a result our CI pipeline is
failing from time to time. This will rerun it automatically when there
is an error.
See https://github.com/freedomofpress/dangerzone/issues/968 for more
information
2024-11-19 18:00:47 +01:00
Alex Pyrgiotis
d561878e03
tests: Restore previously mocked function
...
Restore the `isolation_provider.base.kill_process_group()` function,
which was previously mocked, at the end of the
`test_linger_unkillable()` test. This function is initially mocked, in
order to simulate a hang process. After the mocking completes, the test
needs the original function once more, in order to actually kill the
spawned process.
2024-10-30 16:45:45 +01:00
Alexis Métaireau
c1cf16a705
chore: remove unused imports
Tests / build-deb (debian trixie) (push) Blocked by required conditions
Tests / build-deb (ubuntu 20.04) (push) Blocked by required conditions
Tests / build-deb (ubuntu 22.04) (push) Blocked by required conditions
Tests / build-deb (ubuntu 23.10) (push) Blocked by required conditions
Tests / build-deb (ubuntu 24.04) (push) Blocked by required conditions
Tests / build-deb (ubuntu 24.10) (push) Blocked by required conditions
Tests / install-deb (debian bookworm) (push) Blocked by required conditions
Tests / install-deb (debian bullseye) (push) Blocked by required conditions
Tests / install-deb (debian trixie) (push) Blocked by required conditions
Tests / install-deb (ubuntu 20.04) (push) Blocked by required conditions
Tests / install-deb (ubuntu 22.04) (push) Blocked by required conditions
Tests / install-deb (ubuntu 23.10) (push) Blocked by required conditions
Tests / install-deb (ubuntu 24.04) (push) Blocked by required conditions
Tests / install-deb (ubuntu 24.10) (push) Blocked by required conditions
Tests / build-install-rpm (fedora 39) (push) Blocked by required conditions
Tests / build-install-rpm (fedora 40) (push) Blocked by required conditions
Tests / build-install-rpm (fedora 41) (push) Blocked by required conditions
Tests / run tests (debian bookworm) (push) Blocked by required conditions
Tests / run tests (debian bullseye) (push) Blocked by required conditions
Tests / run tests (debian trixie) (push) Blocked by required conditions
Tests / run tests (fedora 39) (push) Blocked by required conditions
Tests / run tests (fedora 40) (push) Blocked by required conditions
Tests / run tests (fedora 41) (push) Blocked by required conditions
Tests / run tests (ubuntu 20.04) (push) Blocked by required conditions
Tests / run tests (ubuntu 22.04) (push) Blocked by required conditions
Tests / run tests (ubuntu 23.10) (push) Blocked by required conditions
Tests / run tests (ubuntu 24.04) (push) Blocked by required conditions
Tests / run tests (ubuntu 24.10) (push) Blocked by required conditions
Scan latest app and container / security-scan-container (push) Waiting to run
Scan latest app and container / security-scan-app (push) Waiting to run
2024-10-30 01:21:39 +01:00
Alex Pyrgiotis
8172195f95
tests: Add a doc with multimedia elements
...
Add a doc that contains an MP4 video in it, which has an audio and video
stream. This type of document could not be converted with the latest
Dangerzone releases, because PyMuPDF threw this error in the container's
stdout:
MuPDF error: unsupported error: cannot create appearance stream for
Screen annotations
This error message was treated literally by our client code, which
parsed the first few bytes in order to find out the page height/width.
This resulted to a misleading Dangerzone error, e.g.:
A page exceeded the maximum height
This issue started occurring since 0.6.0, which added streaming support,
and was fixed by commit 3f86e7b465
. That
fix was not accompanied by a test document that would ensure we would
not have this regression from now on, so we add it in this
commit.
Refs #877
Closes #917
2024-10-22 17:31:39 +03:00
Alexis Métaireau
a95b612e78
Catch installation errors and display them.
...
Fixes #193
2024-10-17 16:20:56 +02:00
Alex Pyrgiotis
4398986970
tests: Improve test for top-level conversion errors
2024-10-17 15:50:12 +03:00
Alex Pyrgiotis
1ca867c295
tests: Remove provider_wait fixtures
2024-10-17 15:50:12 +03:00