Difftastic 0.69.0

0.69.0
Added 1
  • Added support for Assembly language
Changed 6
  • Trailing punctuation is now treated as insignificant in diffs for Go, Java, JavaScript, Python, Rust, Swift and TypeScript, so foo(1,) and foo(1) are treated as no syntactic changes
  • Substantially improved parsing for Perl
  • Improved parsing for Clojure, Common Lisp, CSS, Dart, Erlang, F#, OCaml, Python, Rust, Scala, TypeScript and VHDL
  • Files starting with <?hh are now treated as text instead of Hack
  • Difftastic now considers .gitattributes when deciding if a file is binary, recognising both the -text and binary attributes
  • Difftastic now requires Rust 1.85 or later to build
Removed 1
  • Removed support for Hack, as the upstream parser is no longer maintained

Difftastic is a structural diff tool that understands syntax. See the manual to get started, and the changelog 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.

View original

Upgraded? How did it go?

Discussion