This file is maintained by release-please. Released entries are appended automatically from Conventional Commits when the "chore: release" pull request is merged. The project follows Semantic Versioning.
2.12.0 (2026-08-18)
- app: opt-in debug logging mode and safer, richer diagnostic bundles (#314) (33c281c)
- core: allow nested backup sources when the parent excludes the child (#294) (0b62df9)
- core: live exclusion pickup and a visible pending-work queue (#313) (e6427c7)
- live bottleneck indicator on the Activity dashboard (#311) (2d9d763)
- ui: folder picker sort/filter/create/rename and exclusions size rollups (#315) (7e87341)
- app: never freeze on tray quit during a backup; quitting tray state; honest recovery status (#312) (f951cde)
- clear the attention banner after a passing run and make source removal backend-aware (#310) (6d8e1ab)
- s3: honest per-source versioning across backends and multipart-upload leak sweep (#316) (d462592)
2.11.1 (2026-08-15)
- republish 2.11.0 as 2.11.1 after a red release gate (3e206c4)
2.11.0 (2026-08-14)
- core: exempt Zone.Identifier from the ads_skipped warning (#288) (f37ff68)
- let a slow add-source wizard finish instead of failing with a phantom disk error (#291) (1fbba98)
2.10.1 (2026-08-14)
2.10.0 (2026-08-03)
2.9.0 (2026-08-03)
- cli: headless restore engine, driven-cli restore, chaos restore coverage (#243) (0e10e56)
- core: SSH (SFTP) backup destination (#260) (9e41b62)
- e2e: containerized WebDriver harness driving the real app, gating releases (#247) (ebf13c3)
- ui: scripted IPC mock + Playwright visual regression suite (#244) (8d09d3d)
2.8.0 (2026-08-02)
2.7.0 (2026-08-02)
2.6.0 (2026-07-31)
2.5.1 (2026-07-30)
- build: ad-hoc sign the macOS bundle so it is not reported as damaged (#231) (6dd0cf9)
- chaos: expect a permission-denied skip on unix in noaccess-file (#229) (6bb45df)
2.5.0 (2026-07-30)
- cli: import destinations from an existing rclone config (#213) (baaf7bd)
- core: enable macOS locked-file backup via the APFS snapshot broker (#201) (ada822e)
- core: local and removable-folder backup destination (#212) (c416a24)
- core: macOS APFS snapshot broker for locked files (#196) (a5f105e)
- core: pluggable backup destination backends (#200) (871df59)
- core: S3-compatible backup destination (#207) (37acb03)
- core: scheduled integrity scrub of remote objects (#203) (049c62a)
- ui: guide macOS users to grant Full Disk Access when files are denied (#216) (aa5327e)
- ci: wait for MinIO readiness before the S3 integration suite (#226) (fff471a)
- core: classify macOS locked and permission-denied opens into the skip-and-report path (#195) (08d2864)
- core: downgrade the APFS helper-dir check from fatal to advisory (#211) (65010ac)
- net: redact proxy credentials from the diagnostic bundle (#190) (8e514f3)
- net: redact userinfo from PAC source in logs (#208) (8692bc0)
- net: refresh stale PAC scripts instead of pinning them for the process (#191) (18b0d43)
- scanner: route the deep-verify hash through the platform-open helper (#193) (3af5c65)
- ui: do not offer versioning on destinations that cannot honour it (#224) (857c8ba)
- ui: make the destination step backend-driven and stop copy claiming Drive behaviour (#219) (9d67765)
- ui: tear down exclusion-preview listeners lost to an unmount race (#206) (2656c9f)
- ui: use a template tray icon on macOS (#202) (eaefa9a)
2.4.0 (2026-07-26)
- cli: add dump-client-creds to print an account's stored BYO OAuth client (#166) (4b6070b)
- core: parallel scan with negation-aware directory pruning (#169) (3792e47)
- core: remote-existence audit heals files whose Drive objects vanished (#171) (5cb8e3a)
- core: run the scan walk at the configured io_priority (#173) (8f39961)
- core: shape bundle-build file reads with the io_priority setting (#179) (af8f048)
- core: shape upload I/O with the io_priority setting (#176) (badd9c9)
- core: wire the ioPriority setting to real OS thread priorities (#170) (51bb1f3)
- persist rolling backend logs and capture frontend console into diagnostics (#167) (292e221)
- real-world benchmark suite comparing driven with rclone (#178) (85f6d6a)
- ui: instant exclusion-preview re-evaluation from an in-memory tree (#177) (8f49570)
- ui: sticky shell chrome, indeterminate scan progress and navigation cleanup (#163) (4896336)
- ui: transient in-app toast notifications (#164) (0104a8e)
- ui: warn when include patterns defeat directory pruning (#162) (6d3b4b2)
2.3.0 (2026-07-25)
- core: record a backup_done activity row when a run completes (#160) (90cde5c)
- ui: files-uploaded stat card with sparkline and smoother Activity load-in (#157) (2d85c99)
- ui: live streaming folder-tree preview for the exclusion editor (#158) (47ebe14)
- telemetry: count bundled uploads in the anonymous aggregate (#159) (11af7ea)
- ui: label bundle_upload and hook activity event types (#154) (2998c76)
- ui: make the backing-up bar a true determinate progress bar (#155) (eed80a6)
2.2.0 (2026-07-25)
- ui: add an indefinite pause and a paused banner with one-click resume (#151) (090d70c)
- ui: last-5m throughput sparkline behind the current-throughput stat (#153) (e60b27f)
- core: make the manual pause actually halt in-flight upload dispatch (#148) (d984826)
- core: mirror local folder structure on Drive for plaintext sources (#150) (a5d0673)
- ui: stream live scan progress from the moment Run Now is clicked (#149) (12ddd1e)
2.1.0 (2026-07-24)
- core: adaptive upload parallelism with throughput probe and disk-saturation gate (#143) (8ecced6)
- core: filesystem timestamp-granularity probe with ctime fallback and per-directory gitignore cascade (#141) (344262c)
- drive: support Google Shared Drive destinations end-to-end (#142) (d9c3161)
- net: native OS reachability backends with automatic fallback (#138) (319e85f)
- net: SOCKS5 and PAC proxy support for all outbound connections (#145) (2f0b7d1)
- net: support a custom corporate root CA for all outbound connections (#134) (929e93d)
- per-source toggle to back up OneDrive cloud-only placeholder files (#133) (6863ea3)
- telemetry: capture latency percentiles and add rollup query endpoint (#132) (4e9fde6)
- telemetry: preview exactly what a telemetry ping sends (#139) (95fbd9a)
- core: commit file_state for a create that skipped post-upload so the next scan updates instead of re-creating (#146) (f5230d1)
- deps: bump tauri-winrt-notification to drop vulnerable quick-xml (closes #89) (#129) (232fd8f)
- telemetry: exclude pre-schema rows from latency rollup (#137) (1ae6220)
- ui: add cursor pointer to buttons and link-buttons (#136) (dbd4809)
2.0.1 (2026-07-20)
2.0.0 (2026-07-19)
- core: pack cold small-file folders into tar.gz bundles (#110) (95b573a)
- core: restore-by-date point-in-time restore via trash-as-version-store (#109) (aed3f11)
- least-privilege VSS elevation helper broker + secured IPC (#96) (d8886be)
- power: real metered-network detection on macOS and Linux (#95) (c475ac1)
- wire OS sleep/wake power events (suspend-edge session snapshot) (#97) (bcbfed6)
- wire the least-privilege VSS helper into locked-file backup (#112) (70ffbcb)
- core: dedicated restore.no_version_as_of error code for point-in-time rejections (#111) (64a23b5)
- deps: bump crossbeam-epoch to 0.9.20 and spin to 0.9.9 to clear cargo-deny advisories (62f3356)
- eager VSS helper launch with attended UAC window and decline-only memoisation (#113) (3c6b029)
- release 2.0.0 (871492f)
1.0.0 (2026-07-03)
- chaos: assert AppendOnlyLog post-restart contract via reconcile (#86) (1c2da3b)
- ci: resolve cargo-deny advisories (anyhow 1.0.103, quick-xml ignores) (#90) (8d85e62)
0.5.0 (2026-06-27)
- auto-open on startup setting (#66) (3dbae06), closes #58
- per-state tray glyph icons and animated syncing (#64) (2c2755f)
- publish Docker images for the CLI and chaos-soak (#60) (8df71e6)
0.4.0 (2026-06-27)
- ui: global backup progress bar in the app header (#55) (b7513b5)
- ui: sticky restore action bar and virtualized large lists (#54) (4631225)
0.3.1 (2026-06-26)
- settings: allow resetting nullable settings to Auto/Unlimited (#50) (4108c13)
- ui: onboarding Drive picker, settings error handling, dark titlebar, and activity labels (#48) (cca1cf9)
0.3.0 (2026-06-26)
- comprehensive UI/UX overhaul + tray i18n/icon fix + CLI tests (#37) (542e276)
- updater: floor the dev channel to stable so dev never falls behind (#20) (1ebd52e)
- capstone: recovery-repair must not re-enable user-disabled encrypted sources (04c9ba9)
0.2.0 (2026-06-25)
- cli: local-state inspection subcommands (status / history / verify) (#13) (4a4763a)
- core: metered network pause-or-throttle toggle (#17) (4b690d5)
- core: pre/post backup shell hooks (#16) (35df924)
- core: schedule windows (time-of-day backup gating) (3de2cf7)
- core: schedule windows (time-of-day backup gating) (89afd39)
- landing: on-brand driven.maxhogan.dev root page + assemble script (M12) (0809cdc)
- capstone: post-GA hardening - recovery-repair, OAuth cred validation, restore fail-closed (4236724)
- ci: do not cancel push-to-main coverage baseline runs (#15) (6e26a5d)
- ui: keep vitest coverage config out of vite.config.ts (e3a353e)
0.1.0 (2026-06-25)
Initial general-availability release of Driven, a one-way encrypted backup desktop app that mirrors local folders into the user's own Google Drive.
- One-way folder backup to Google Drive. Local additions and changes are uploaded; remote files are never written back to disk during normal operation, so the source folders are the single source of truth.
- Client-side encryption per source. Filenames and file contents are encrypted with XChaCha20-Poly1305 before upload; a BIP39 recovery phrase protects the per-account master key. Encryption is opt-in per source.
- Scanner and planner that walk the source tree, honor
.gitignoreplus the built-in and user exclude rules, follow the symlink policy, and compute the minimal upload / trash plan against the recorded remote state. - Concurrent executor with a pacer that bounds in-flight work, retries on transient network failures, and resumes interrupted multi-part uploads.
- Battery and network awareness. Backups defer on battery and on metered or offline networks, and resume automatically when conditions allow.
- Windows Volume Shadow Copy support so files held with an exclusive write lock (for example Outlook PST files, running database files) still back up.
- Restore browser. Browse the encrypted remote tree, full-text search file names, and restore selected files to a chosen folder with streaming decryption.
- Activity dashboard with a live tail and paginated, filterable history of every backup operation.
- In-app auto-update with signed update manifests and a stable / dev channel selector (Settings > About). See the README for the macOS updater caveat.
- Anonymous, opt-out telemetry (coarse counts only; no file names, paths, or content) to help prioritize fixes.
- First-run setup wizard for Google sign-in, bring-your-own OAuth client credentials, source selection, and the encryption recovery phrase.