Subject: Re: bug#55039: [PATCH] Use VC-relative file names in ChangeLog entries

From: Eli Zaretskii <[email-masked]>
Date: Thu, 08 Sep 2022 12:20:13 +0300

> From: Philip Kaludercic <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Thu, 08 Sep 2022 08:45:47 +0000
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> >> From: Philip Kaludercic <[email-masked]>
> >> Cc: [email-masked],  [email-masked]
> >> Date: Tue, 06 Sep 2022 20:11:57 +0000
> >> 
> >> >> Also, as the entire point of
> >> >> the patch was that emacs.git is using relative path names, should a
> >> >> .dir-locals.el variable be set to ensure this is done?
> >> >
> >> > I guess so, yes.  But what would happen to people who use Emacs
> >> > versions before 29?
> >> 
> >> It should have no effect.
> >
> > Unfortunately, this is not true, at least not the way this was
> > implemented in our .dir-locals.el.  Now, whenever I visit _any_ file
> > in the repository, I get this warning pop up:
> >
> >   The local variables list in d:/gnu/git/emacs/trunk/
> >   contains values that may not be safe (*).
> >
> >   Do you want to apply it?  You can type
> >   y  -- to apply the local variables list.
> >   n  -- to ignore the local variables list.
> >   !  -- to apply the local variables list, and permanently mark these
> > 	values (*) as safe (in the future, they will be set automatically.)
> >   i  -- to ignore the local variables list, and permanently mark these
> > 	values (*) as ignored
> >
> >       tab-width : 8
> >       sentence-end-double-space : t
> >       fill-column : 70
> >       emacs-lisp-docstring-fill-column : 65
> >       bug-reference-url-format : "https://debbugs.gnu.org/%s"
> >     * diff-add-log-use-relative-names : t
> >       indent-tabs-mode : nil
> >       electric-quote-comment : nil
> >       electric-quote-string : nil
> >       mode : bug-reference-prog
> >
> > and I _must_ type a response.  If I answer !, Emacs will write to my
> > init file, which I'm not sure I like; if I type y, I will have to do
> > that for every file I visit.
> 
> I see, should I revert the change?

Is it possible to make the setting dependent on the Emacs version?

I don't think there's a need to revert, even if we cannot make this
better.  Assuming people want this setting very much, that is.  Just
something to remember for the future: introducing these is not
cost-free.

> > This is the nuisance caused by immediately adding newly introduced
> > variables into file-local or directory-local settings to our
> > repository.  We should keep this in mind when introducing such stuff.
> 
> Generally speaking, the ability to set a variable only if the symbol is
> bound would be useful for features like these.

I don't think that's possible in practice, since many variables are
loaded only when needed.  But if I'm wrong, then yes, it would be good
to have such a capability.