Skip to content

feat(file-compare): compare files in the background with progress and a log console - #67

Merged
dafi merged 26 commits into
mainfrom
feat/async-file-comparison
Sep 26, 2026
Merged

dafi merged 26 commits into
mainfrom
feat/async-file-comparison

Conversation

@dafi

@dafi dafi commented Sep 26, 2026

Copy link
Copy Markdown
Member

Summary

Comparing large files used to freeze the window until the comparison finished. Now the comparison runs in the background: the window stays responsive and a progress bar shows how far it has got.

File comparison windows now also have a log console, a pane at the bottom of the window. It shows read errors, which no longer appear in a blocking alert, and how long each comparison took.

What changes for the user

  • Background comparison with progress
    • the status bar shows which file is being read, then a progress bar while the comparison runs
    • the current comparison stays visible until the new one is ready
    • toolbar buttons, menus and path controls are disabled while the comparison runs, then re-enabled
    • a request made during a comparison (for example a path change or a file drop) is queued and runs right after the current one
  • Log console
    • each completed comparison is logged with the time it took
    • read errors are logged too, the console opens automatically, and the previous comparison stays on screen
    • it can be shown or hidden from View ▸ Show Log Console (⌥⌘L)
  • Unsaved edits are safer: before anything reloads the files (drag & drop, a path change, session preferences, a file changed outside the app), you're asked to save your edits. Cancelling keeps them.
  • Navigation: moving to the next or previous file of a folder session no longer marks the session as modified.
  • Faster on large files: very long or minified lines are handled faster, and resizing the window no longer recalculates row heights unless it needs to.

dafi added 26 commits September 11, 2026 05:59
@dafi
dafi merged commit 0582ba8 into main Sep 26, 2026
@dafi
dafi deleted the feat/async-file-comparison branch September 26, 2026 05:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant