0.69.0

FerrisMind/omnivoice-rs0.69.0Apr 30, 2026by github-actions[bot]

AI Summary

This release enhances Difftastic's syntax-aware diffing capabilities by correctly handling trailing punctuation and introduces support for Assembly. It also improves parsing for multiple languages and updates build requirements.

Key Highlights

  • Trailing punctuation is now recognized as insignificant for Go, Java, JavaScript, Python, Rust, Swift, and TypeScript.
  • Added support for Assembly language parsing.
  • Substantially improved parsing for Clojure, Common Lisp, CSS, Dart, Erlang, F#, OCaml, Python, Rust, Scala, TypeScript, and VHDL.
  • File detection now considers `.gitattributes` to determine if a file is binary.

Breaking Changes

  • Support for the Hack language has been removed.
  • Build now requires Rust 1.85 or later.

New Features

  • Trailing punctuation handling for specified languages.
  • Assembly language support.
  • .gitattributes support for binary file detection.

Full Release Notes

Difftastic is a structural diff tool that understands syntax. See [the manual](https://difftastic.wilfred.me.uk/) to get started, and [the changelog](https://github.com/Wilfred/difftastic/blob/master/CHANGELOG.md) for historical changes.

## Diffing

Difftastic now understands when trailing punctuation isn't significant, so `foo(1,)` and `foo(1)` are treated as "no syntactic changes". This is supported for Go, Java, JavaScript, Python, Rust, Swift and TypeScript.

### Parsing

Added support for Assembly.

Substantially improved parsing for Perl.

Improved parsing for Clojure, Common Lisp, CSS, Dart, Erlang, F#, OCaml, Python, Rust, Scala, TypeScript and VHDL.

Removed support for Hack, as the upstream parser is no longer maintained. `.php` files starting with `<?hh` are now treated as text.

### File Detection

Difftastic now considers `.gitattributes` when deciding if a file is binary, recognising both the `-text` and `binary` attributes.

### Build

Difftastic now requires Rust 1.85 or later to build.