./devel/difftastic, Syntax-aware diffing tool

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.62.0, Package name: difftastic-0.62.0, Maintainer: bsiegert

Difftastic is an experimental structured diff tool that compares files
based on their syntax.


Master sites:

Filesize: 28438.813 KB

Version history: (Expand)


CVS history: (Expand)


   2024-12-21 17:30:54 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.62.0

Diffing
 - Improved handling of multiline strings, which could cause a crash if they \ 
occurred at the end of the file. This was particularly noticeable with YAML.

Parsing
 - Improved language detection when one argument is a named pipe.
 - Updated to the latest tree-sitter parser for Bash, C, C++, C#, CSS, Go, \ 
Haskell, HTML, Java, JavaScript, JSON, Julia, Lua, Objective-C, OCaml, PHP,
   Python, Ruby, Scala, TOML, TypeScript and XML.

Syntax Highlighting
 - Improved syntax highlighting, particularly for keywords.

Build
 - difftastic now requires Rust 1.74.1 to build.
 - Prebuilt packages for macOS on x86-64 are now built on macOS 13.
   2024-10-24 14:11:11 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.61.0

Recommended git configuration has changed! Please update your ~/.gitconfig to \ 
match the git instructions, regardless of your difftastic version.

Display
 - Side-by-side display is now smarter on very wide terminals when the content \ 
is narrow.

Diffing
 - Fixed a crash (introduced in 0.60) when the final line in a file does not \ 
have a trailing newline and occurs more than once in the file.

Build
 - difftastic now requires Rust 1.66 to build.
   2024-08-01 19:43:13 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.60.0

Diffing
 - Fixed a crash (introduced in 0.59) when the final changed hunk included the \ 
last line of the file.

Display
 - Fixed an issue where files with no common content would show duplicate hunks.
 - Fixed a performance issue when files had extremely long lines (e.g. 100,000+ \ 
characters).
   2024-07-26 10:59:51 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.59.0

0.59 (released 20th July 2024)
Diffing

Fixed crash on some textual files where a single change contained more than \ 
1,000 words.
Parsing

Added support for device tree and F#.

Difftastic now uses tree-sitter comment highlighing as a hint that nodes should \ 
be treated as atoms. This ensures comments are treated more consistently across \ 
languages. This fixes cases in Elm where comment differences were ignored, and \ 
may improve other languages too.
   2024-05-13 08:17:57 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.58.0

0.58 (released 11th May 2024)
Parsing
 - Difftastic now preserves tree-sitter parse tree structure on parse error
   nodes. This reverts the flattening behaviour introduced in 0.38. Preserving
   structure tends to produce better diffs, although it increases the risk that
   difftastic will show fewer changes in the presence of parse errors.
 - Since difftastic is now conservative with parse errors (DFT_PARSE_ERROR_LIMIT
   is 0 by default), this seems like a better tradeoff.
 - Updated C, C++, CMake, CSS, Elm, Go, Lua and Python parsers.

Diffing
 - --strip-cr now defaults to on, so comparing a file with CRLF endings with a
   file with unix line endings will not show spurious changes.

Documentation
 - Difftastic now has a man page, see the difft.1 file.

Performance
 - Fixed a memory leak and improved performance in some cases.

Command Line Interface
 - Fixed a crash when difftastic could not detect the terminal width, such as
   inside eshell.
 - Difftastic now also considers $COLUMNS when detecting the terminal width.
   2024-04-03 22:05:44 by pin | Files touched by this commit (5) | Package updated
Log message:
devel/difftastic: update to 0.57.0

0.57 (released 1st April 2024)
Parsing
 - Text file detection is now stricter, considering null bytes as a hint that
   files are binaries.

Diffing
 - Fixed an issue where hidden files (filename starting with .) were ignored
   when diffing directories.
 - Scheme now uses the same slider heuristics as other lisps, preferring the
   outer delimiter.
 - Fixed an issue with line-based diffing where only the first line in a large
   changed region was highlighted. This was particularly noticeable when
   diffing brand new files.

Display
 - Fixed an issue when reporting changes in binary files, where trailing
   whitespace was inconsistent with other changes shown.
   2024-03-06 20:58:27 by pin | Files touched by this commit (4) | Package updated
Log message:
devel/difftastic: update to 0.56.1

0.56.1 (released 5th March 2024)
Build
 - Fixed an issue with building difftastic on aarch64 with rust 1.71 or earlier.

0.56 (released 5th March 2024)
Parsing
 - Updated JavaScript, TypeScript, QML and Perl parsers.
 - Makefile*.in is now detected as Makefile syntax.
 - Improved shebang parsing with whitespace, e.g. #! /bin/bash is now detected \ 
as a shell script.
 - Added support for Scheme and Smali.

Diffing
 - Fixed an issue with runaway memory usage on text files with very long lines.

Display
 - Fixed an issue where all files would show a permissions change when using \ 
difftastic with git difftool.
 - Fixed an issue with paths not showing the containing directory when using \ 
difftastic with git difftool.
 - Difftastic now correctly reports file permission changes when called from git \ 
diff.
 - Fixed an issue with the experimental JSON display mode where it ignored \ 
--skip-unchanged.
 - Fixed an issue with tabs not being replaced in single-column display.
   2024-02-13 11:07:59 by pin | Files touched by this commit (3) | Package updated
Log message:
devel/difftastic: update to 0.55.0

0.55 (released 1st February 2024)
Parsing
 - Added support for Objective-C and VHDL.
 - Files starting with <?xml are now parsed as XML.
 - Fixed a munmap_chunk(): invalid pointer crash on parsing some large files,
   particularly JSON.

Display
 - The default display width for tabs has changed to 4.
 - Fixed an issue where difftastic would sometimes output literal tabs rather
   than respecting the display width for tabs.

Build
 - difftastic now requires Rust 1.65 to build.