Skip to content

Driven v2.4.0

Choose a tag to compare

@pmaxhogan pmaxhogan released this 26 Jul 00:49
98d706d

Features

  • 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)

Bug Fixes

  • core: self-heal a stale drive_file_id when an update hits a definitive 404 (#168) (8b983b3)

Performance Improvements

  • core: per-directory decision cursor for the exclusion preview + NFC fast path (#172) (a587fed)

Notes

  • Behavior change (gitignore semantics): a !negation inside a nested .gitignore that lives inside an excluded directory no longer re-includes files from that directory. This matches git's own behavior (git does not read ignore files inside ignored directories) and is what makes safe directory pruning possible. If you relied on the old permissive re-include, move the negation to a .gitignore outside the excluded directory or use a per-source include pattern.
  • Anchored include patterns now enable pruning: include patterns like /*/.env or /repo/path/.env let the scanner skip excluded directories (e.g. node_modules) entirely; fully relative patterns like .env still force a full descent. The rules editor now warns about the latter.
  • Remote self-heal: if a backed-up file's Drive object is deleted out-of-band, Driven now detects it (at startup, on deep-verify, and on upload) and re-uploads automatically instead of erroring forever with "Drive unavailable".
  • io_priority (Settings -> Rules) now maps to real OS scheduling: on Windows, low runs backup CPU below normal and hints file I/O low; idle uses full background mode. Best-effort on Linux/macOS.