Subject: bug#41821: 28.0.50; read-directory-name in vc commands should provide defaults from projects

From: Eli Zaretskii <[email-masked]>
Date: Thu, 02 Jul 2020 20:41:57 +0300

> Cc: [email-masked], [email-masked]
> From: Dmitry Gutov <[email-masked]>
> Date: Thu, 2 Jul 2020 17:43:29 +0300
> 
> > I just fear that this is a slippery slope: we will eventually need to
> > inject this into many GP commands, "for consistency".
> 
> The notion of current project is very common in most editors

But Emacs is more than just an IDE, it can be and is used for many
other jobs.  For example, I customary take a break from my development
work to read email, and when doing so I might issue some Grep command
that I need for some email message I'm writing.  I don't think it's
right for Emacs to assume that every Grep I do is necessarily related
to the last project I was working on (which could be days in the past,
btw).  This way, we would need a command to "get out of" (or "close")
the project, which I think would be both a nuisance and absurd.

> >> Another long-term violation of your idea is the default definition of
> >> xref-backend-references. It uses the current project. You could say that
> >> mixes up abstractions as well, but it's just too handy to implement this
> >> way.
> > 
> > I don't think I understand the issue and the use case, sorry.
> 
> The use case is 'M-x xref-find-refereces' and xref backends which don't 
> override xref-backend-references. In which case this command searches 
> the current project using general purpose tools (one of semantic symref 
> tools, or Grep).
> 
> But xref backend != current project. They're technically and 
> theoretically independent.

So you are saying that it might bring me the wrong references once in
a while?  That's not good, is it?