0.69.0
JinhuaLiang/WavCraft0.69.0Apr 30, 2026by github-actions[bot]
AI Summary
This release focuses on improvements to the Difftastic structural diff tool, specifically regarding syntax-aware parsing, trailing punctuation handling, and file detection.
Key Highlights
- Difftastic now ignores trailing punctuation in syntax diffs.
- Added support for Assembly language parsing.
- Improved parsing for multiple languages including Perl, Clojure, Python, and Rust.
- File detection now respects `.gitattributes` for binary/text classification.
New Features
- Trailing punctuation diffing support for Go, Java, JavaScript, Python, Rust, Swift, and TypeScript.
- Assembly parsing support.
- Improved parsing for Clojure, Common Lisp, CSS, Dart, Erlang, F#, OCaml, Rust, Scala, TypeScript, and VHDL.
- Git attributes 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.