Release Announcement

SecureDrop Client 0.10.0 Released

March 19, 2024

We’re pleased to announce that SecureDrop Client 0.10.0, part of the SecureDrop Workstation, has been released. Changes that pilot participants should be aware of are below; a complete list of changes can be found on GitHub.

What’s new in SecureDrop Client 0.10.0?


This release primarily adds support for exporting files to VeraCrypt-provisioned USB devices, which can be used on Windows, macOS and Linux, making it easier to share and work with files outside of SecureDrop Workstation. A number of other improvements to the export workflow have been made, including:

  • Don’t prompt for a passphrase if the drive is already unlocked
  • Improve user-facing error messages
  • Add .rtf printing support
  • Ensure all print jobs have been fully enqueued

Other changes in this release include:

  • Fix syntax of mypy comments (#1646)
  • Pull out string "transcript.txt" into a constant (#1658)
  • Restore workaround for segmentation faults in tests (#1656)
  • Auto-detect Wayland in developer environment (#1653)
  • Verify gettext machine objects (.mos) are reproducible (#1666)
  • Migrate dependency management to poetry (#1671)
  • Enable dependabot for Python and GitHub Actions (#1768, #1782, #1824, #1830)
  • Move and refactor debian/ packaging files from securedrop-builder (#1741)
  • Use --require-hashes when installing dependencies during package build (#1792)
  • Lint .desktop files in CI (#1783)
  • Apply bandit and safety linting to all components in one place (#1814)
  • Add initial configuration for Rust components (#1817, #1818)
  • Standardize make lint in all components (#1841)
  • Move remaining CircleCI jobs over to GitHub Actions (#1841)
  • Apply black and isort formatting to all components in one place (#1860)
  • Add shellcheck linting (#1843)
  • Stop using deprecated pkg_resources (#1851)
  • Have CI run piuparts (#1844)
  • Use dh_apparmor for installing the profile (#1856)
  • Use setuptools.find_packages() in (#1873)
  • Parameterize sender_is_current_user in test instead of randomization (#1884)
  • Stop running client tests in parallel with pytest-xdist (#1881)
  • Run lintian on Debian packages (#1845)
  • Remove __pycache__ folders from packages. (#1909)
  • Remove specific version from .pot files. (#1915)

Users will receive these updates the next time they run the updater.


Thanks to Nahara, Stelios, Philip McMahon, and Juan Elosua for their volunteer contributions to this release. Translations were updated thanks to the work of many volunteers:

  • Bengali: diyaf
  • Catalan: Benet (BennyBeat) R. i Camps, John Smith
  • Chinese (Traditional): Meng Pang Wang, Chi-Hsun Tsai, Chido Musodza
  • Chinese (Simplified): Kishin Sagume, ff98sha
  • Croatian: Igor K, Milo Ivir
  • Finnish: Jiri Grönroos, Oskari Lavinto
  • French: AO Localization Lab, vex vex
  • German: Ettore Atalan
  • Greek: Dimitris Maroulidis, Adrian
  • Icelandic: Oktavia, Sveinn í Felli
  • Italian: Claudio Arseni
  • Polish: Adam Rak
  • Portuguese (Brazil): Guilherme
  • Portuguese (Portugal): notmuchtohide
  • Russian: Alexey Peschany, Andrey
  • Slovak: 1000101
  • Spanish: clarailr, David Figuera
  • Swedish: Jonas Waga
  • Turkish: Alper Gunay

Thanks to Localization Lab for supporting this effort.

This release incorporates Freedom of the Press Foundation contributions by Giulio Berra, Nathan Dyer, Gonzalo Bulnes Guilpain, Kunal Mehta, Erik Moeller, Cory Francis Myers, Kevin O'Gorman, Allie R, Francisco Rocha, Rowen S, and Michael Z.

SecureDrop Workstation Pilot Status

SecureDrop Workstation is still in a closed-beta pilot phase, which is projected to move towards general adoption later this year.

Return to News