Skip to content

Releases: imfing/diffs-cli

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 06 Jun 18:13

This release rewrites the diffs backend in Rust.

The main goal is to remove the CLI's dependency on shelling out to git for core local operations. diffs now uses libgit2 directly for local and branch diff generation, repository status, branch detection, ignore handling, and file-watch filtering. That makes the local review path faster, easier to package as a single binary, less dependent on the user's shell environment, and more predictable across platforms.

The browser UI and core workflow stay the same: run diffs, open the local review UI, and inspect your working tree or GitHub pull requests in the browser.

What's Changed

  • Rewrote the backend in Rust.
  • Replaced subprocess-based local Git operations with libgit2-backed implementations.
  • Preserved local diff, branch diff, GitHub PR review, local comments, file watching, and browser reload workflows.
  • Updated release packaging for Rust target triples across macOS, Linux, and Windows.
  • Updated Homebrew cask generation for the new archive names.
  • Refreshed README copy and screenshots for the Rust-based release.

Install

brew install --cask imfing/tap/diffs

Or download a platform archive from the assets below.

Notes

This is a large internal migration. Please report regressions around local diff rendering, file watching, branch detection, comments, or packaging.

Full Changelog: v0.3.0...v0.4.0

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 30 May 23:52

Changelog

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 May 00:02

Changelog

  • 8a5a7a0: chore: switch shadcn style to nova (@imfing)
  • 56d8619: feat: add reviewed/hide-reviewed, file ordering, and richer diff settings (@imfing)
  • a4abf81: feat: upgrade web deps and rework diff settings popover (@imfing)
  • fe71369: fix: resolve collapse/selection interactions across reviewed, hide-reviewed, and ordering (@imfing)

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 26 May 21:20

Changelog

  • b4acbe3: feat: add --include-dirty flag to branch command for including staged, unstaged, and untracked changes (@imfing)
  • e1bb266: feat: add configurable font families (@imfing)
  • 7630d63: feat: persist scroll position and collapse state in sessionStorage (@imfing)
  • afd278e: fix: refresh local diff after git commits (@imfing)

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 25 May 23:20

Changelog

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 23 May 22:55

Changelog

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 23 May 20:11

Changelog

  • 3dcbf87: fix(ci): add missing secrets to release workflow environment (@imfing)

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 23 May 20:04

Changelog

  • 29be977: chore(ci): add Homebrew installation instructions and configure Homebrew tap (@imfing)
  • 1eeeb29: feat: add version command (@imfing)

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 23 May 18:04

Changelog

  • e99ee81: feat: add NotFound component for handling 404 errors (@imfing)
  • 21067d5: fix: enhance PR target parsing to handle mixed case URLs and subpages (@imfing)
  • f480b6f: refactor: update GitHub host flag to --gh-host and enhance PR target parsing (@imfing)

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 23 May 16:04

Changelog