Skip to content

Cmdr v0.38.0

Choose a tag to compare

@github-actions github-actions released this 11 Aug 10:03
890e36f

The three main advancements:

  • Search now works regardless of indexing.
  • Backgrounded operations look and work better now.
  • A ton of stability fixes and resource use improvements around indexing and otherwise.

Added

  • Search a folder Cmdr hasn't indexed yet: it walks the drive live, streams matches as they're found, says which wait
    you're in, offers the permission for a folder macOS refused, and keeps walking when you send the results to a pane
    (b3fd1f9, 11baa34, 1ade70f, d4c2aba, 78bcbd4, 45096d9, 75d011f, 5bfb8c2, b49f8f7, e846c0c, dfdd7ab,
    e72322f, efdeef0, bf0c546, 4c24157)
  • Scope a search to the current folder (the new default) or the whole volume, with ⌥C and ⌥V (b7ccec1)
  • Add a corner chip in the main window for a backgrounded operation, with its progress and one click to the queue
    (a447baa, 221c84d)
  • Open the operation queue with ⌥⌘Q from View, renamed from "Transfer queue" since it holds deletes, renames, and
    archive edits too (2a52e4f, 10110bf)
  • Keep a failed background operation and its reason until you dismiss it, in the queue and as a toast in the main window
    (8b97ed9, c53a996, 0eb03c8, d592d04)
  • Ask before quitting with a transfer in flight, and clear away whatever it left half-written (fe2cb82, f5c5e2b,
    20a1022, 6819a06)
  • Roll back a copy from the Transfers window (7a1e1c3)
  • Resize dialogs from any edge, and grow every dialog that shows a path (d9de60c, e7b4871)
  • Hover any shortened path or label to see the whole thing (3270e3f)
  • Copy the current folder's path with ⌃⌘C on the .. row, with a toast showing what landed on the clipboard (e883b52)
  • Ask agents where your disk space is going: one indexed listing tool with size ranking, paging, and honest coverage
    (45365c1)
  • Agree to the terms during onboarding, instead of consent being assumed from the download (7a16691)

Changed

  • Rewrite the terms of service: 3,423 words down to 2,203, accurate about what Cmdr actually does, and each release now
    converts to AGPL three years after it ships rather than every version on one shared date (248cfc6, 57249e4,
    8af2470, 69fa0f5, 1311d8a, 3ba6b4b)
  • Cut about 97 MB off peak memory during a search (d75453b)
  • Stop a dotfile write in your home folder rescoring the whole drive: 5.25 s per pass becomes 2.1 ms (0271855)
  • Stop an idle machine rewriting 51,081 folder-ranking rows a minute for a result that didn't change (234bd2a)
  • Halve the live index write cost by committing a burst of changes once instead of once per file (3313aab)
  • Stop asking iCloud and Dropbox about folders that hold no cloud files (7457451)
  • Cut roughly 9,400 log lines an hour about the things that are always fine (5431df6, 6834c4d, 1354ab0, b67ff31)
  • Stop an idle NAS connection filling the log with packet traces (e24382a)
  • Show the same honest readout in the Transfers window as in the copy dialog: both bars labelled, percentages, speed,
    and a time left that doesn't shift the layout (b4884f2, 7a1e1c3, 442dc73)
  • Open What's new on the headlines, with each release's details behind a Show more (d6d14da)
  • Ask the copy conflict question in a card you can read at a glance (ec81db8)
  • Give the whole app one line-height scale, so text spacing stops varying screen by screen (22fb4bb)
  • Say "Background" rather than "Queue" on the progress dialog when there's no queue to join (8441b4e)
  • Stop the write-error dialogs saying "failed" at you (19ecb6a)

Fixed

  • Fix a folder move on a phone destroying the child you chose to keep (56047e4, 3971e86)
  • Fix a folder move to a NAS deleting the local files you chose to skip, and the conflict dialog reporting a real file
    as 0 bytes (b84a6f8)
  • Fix copying a local folder to a NAS or phone failing outright, and a failed folder copy wiping the destination folder
    (7046e9d, be819a3)
  • Stop a force-quit or a crash mid-copy leaving a truncated file wearing your real filename, on every drive (a19325c,
    06837bc)
  • Fix a scan preview authorizing an operation on a different selection (1e75af2)
  • Fix a delete guessing a folder was a file when its details couldn't be read (0cabe9f)
  • Stop two disks being handed one identity, which could route reads and file operations to the wrong drive (181c2b7,
    a3c6684)
  • Fix folder navigation stalling up to a second while the file watcher armed (0141b74)
  • Fix ⌘- and ⌘+ freezing the app for up to 46 seconds while fonts were measured, and non-Latin names staying at an
    estimated width in Brief mode (62e69c3, bb781c1)
  • Fix a folder replaced outside Cmdr leaving ghost files in the pane (4b633df)
  • Fix copying to a NAS dying on a filename with a ? or a quote in it (9536ea4)
  • Name the file that actually failed in a transfer, instead of the folder you selected, and say which file the server
    refused the name of (7f4b50e, 4062288, 119cdb8)
  • Stop blaming macOS for a folder your file server refused, and drop the Full Disk Access prompt that couldn't help
    (c912c8d, f37fe12)
  • Fix a pane stranding itself on "Path not found" after its network drive disappeared (b314f81)
  • Fix Quick Look and dragging files out doing nothing on a direct-SMB pane (230ff58, fea2628)
  • Fix a burst of changes on a phone pegging a core and freezing the pane (63d7e0e, 1b4e667)
  • Fix a backgrounded transfer's conflict question never reaching you (d744a61)
  • Fix a search from your home folder reporting that Cmdr doesn't cover it (6d3d7ab)
  • Fix a folder-size filter answering from a ranked sample, so a 1.7 TB folder stops going missing, and add sorting by
    size or date (7ee6b63)
  • Stop search presenting a filtered count as the whole truth (37e9c93)
  • Fix a file with a newline in its name being unfindable, in search, selection, and excludes (d0b63a1, b71cef1,
    b73fa8e, 15e444c)
  • Fix dialog text sitting further in than its own title, and long paths escaping the panel (555be09, 63be2dc)
  • Fix a listing on a network share passing as fresh when another machine had already changed it (f0b139a, 23f5328,
    28431ec)
  • Stop a NAS getting blamed for the seconds Cmdr itself spent frozen (608b1dd)
  • Fix network and external drives skipping the per-navigation self-heal that local browsing gets (76863f0)
  • Fix a dead mount stalling launch while Cmdr swept last session's leftovers (e063f79)

Security

  • Stop a saved cloud AI key ever coming back out of the OS secret store (4f32fe9)
  • Close a bypass that served the private analytics dashboard without authentication (79969df)
  • Rate-limit every public ingest endpoint, with a global ceiling so an error-report flood can't drown the channel or
    delete real reports (037186a, 763b847, f816960, 67c125f, 7a02364)
  • Clear the RUSTSEC-2026-0221 unsoundness advisory (63a0858)

Non-app