Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Client-side support for VeraCrypt; use QWizard for export #1779

Merged
merged 24 commits into from
Feb 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
7cf329f
Update build requirements
rocodes Feb 1, 2024
7aa8a6e
Address mounting race condition by checking udisks info prior to atte…
rocodes Feb 2, 2024
396fec1
Combine export.py and device.py and avoid long-running thread/singlet…
rocodes Jan 25, 2024
03124e3
Don't depend on controller in Device, just pass list of filepaths for…
rocodes Jan 25, 2024
9076394
(WIP) Update integration test fixture to use Device
rocodes Jan 26, 2024
882c745
WIP: update export_service fixtures for functional tests
rocodes Jan 26, 2024
e45b2f1
fixup: isort, lint
rocodes Jan 26, 2024
392ae69
Export and print use single method signature across components. Devic…
rocodes Jan 26, 2024
1f9bd89
move device.py -> export.py
rocodes Jan 26, 2024
a802bb3
(fixup) fix patch namespace for export mock
rocodes Jan 27, 2024
dadebfc
Use one dialog for all exports.
rocodes Jan 27, 2024
7d343f0
WIP: export wizard
rocodes Jan 29, 2024
2e0994c
Remove encryption_method from json metadata
rocodes Feb 2, 2024
929df1f
Remove unused export pyqtSignals
rocodes Feb 2, 2024
45fac2c
Remove export_dialog.py and tests
rocodes Feb 2, 2024
fd7fdab
Export wizard improvements.
rocodes Feb 2, 2024
13c5e24
Use QProcess instead of subprocess for qrexec commands
rocodes Feb 5, 2024
27525f5
(WIP) Add functional tests for Export Wizard
rocodes Feb 3, 2024
251f5b0
Handle error case after preflight failure.
rocodes Feb 5, 2024
3f9be9c
Address tmpdir scope issue by holding a reference to the export tmpdi…
rocodes Feb 5, 2024
22a968e
docstrings for print and export callbacks
rocodes Feb 5, 2024
c6ec546
(WIP) Simpler signaling logic in main wizard page. Basic working tran…
rocodes Feb 5, 2024
ca3d754
Page validation and layout fixes
rocodes Feb 6, 2024
fe2f5cb
Fix print error signals
rocodes Feb 6, 2024
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
9 changes: 2 additions & 7 deletions client/securedrop_client/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
from PyQt5.QtCore import Qt, QThread, QTimer
from PyQt5.QtWidgets import QApplication, QMessageBox

from securedrop_client import __version__, export, state
from securedrop_client import __version__, state
from securedrop_client.database import Database
from securedrop_client.db import make_session_maker
from securedrop_client.gui.main import Window
Expand Down Expand Up @@ -240,16 +240,11 @@ def start_app(args, qt_args) -> NoReturn: # type: ignore[no-untyped-def]
database = Database(session)
app_state = state.State(database)

with threads(4) as [
export_service_thread,
with threads(3) as [
sync_thread,
main_queue_thread,
file_download_queue_thread,
]:
export_service = export.getService()
export_service.moveToThread(export_service_thread)
export_service_thread.start()

gui = Window(app_state)

controller = Controller(
Expand Down
Loading
Loading