Subject: bug#79024: 31.0.50; Multiple working trees support for VC

From: Sean Whitton <[email-masked]>
Date: Sun, 27 Jul 2025 20:46:56 +0100

Hello,

On Sun 27 Jul 2025 at 12:17pm +03, Eli Zaretskii wrote:

> "make" builds Emacs, but doesn't run the test suite.  This is similar
> to what other projects do: to run the test suite, you need to say
> "make check".
>
> Since the entire test suite takes quite some time to run, I usually
> run only the relevant test(s), like this:
>
>   make -C test lisp/some-tests
>
> (assuming the test file is test/lisp/some-tests.el).  Some changes
> need to run more than one test file.

Right.  But other projects I've worked with often always build the tests
even if they don't run them.  But I can see arguments against doing
that, too.

> Paul now posted an almost identical failure, so I don't think this has
> anything to do with my Git version.

Agreed.

I pushed a fix just now which makes all the tests pass for me on
GNU/Linux.  If that doesn't also fix the Git tests for you on Windows,
then I'm not sure what else could be wrong.

As for Mercurial, I can implement the temporary file thing again, but
I'd like to know about line endings first.

If you do 'hg init' in a temporary directory, 'echo foo >bar', put a
commit message containing DOS line breaks in a temporary file, and do
'hg commit bar --logfile=temp', does the commit message that gets
recorded look correct?

With Git we have to switch back to Unix line endings while writing out
the temporary file because Git expects that; I would assume Mercurial
does not, but I'm not sure.

-- 
Sean Whitton