Subject: bug#79027: xref/pp changes in latest versions?

From: Eli Zaretskii <[email-masked]>
Date: Wed, 16 Jul 2025 14:39:17 +0300

> From: Gonzalo Larumbe <[email-masked]>
> Date: Wed, 16 Jul 2025 00:04:32 +0200
> 
> I am experiencing an error in a CI job in GitHub in some packages I currently maintain (verilog-ext and
> vhdl-ext, available on MELPA). The error only happens in the `snapshot` build, cached from a recent Emacs
> version (https://github.com/purcell/nix-emacs-ci).
> 
> In both of these packages (verilog-ext and vhdl-ext) I have created an `xref` backend based on tree-sitter.
> To test it there is an ERT test suite that writes the xref items to a text file with `(pp-default-function #'pp-29)`
> and compares it with a reference file created previously using the same function.
> 
> This test works well with all Emacs versions from 29.1 to 30.1 and with release-snapshot. However with the
> latest versions it seems something in `pp` or in `xref` might have changed that I am missing and maybe I
> should update to. Is there any idea of what could it be?
> 
> I attach the log of GitHub actions failing job in case it could be useful.

Judging by the log, the failures are due to differences in text
properties, and specifically to the differences in the 'fontified'
properties.  Why is that significant for your test?  The 'fontified'
property is used internally by JIT font-lock feature of Emacs, so it
shouldn't matter to any Lisp program, unless the program is somehow
related to font-lock machinery.

For that matter, how about telling more about what
test-hdl-files-equal does and what is its purpose and main ideas of
implementation?  It's hard to tell anything intelligent without some
additional information.