GNU bug report logs - #41572
28.0.50; [PATCH] Support plain project marked with file .emacs-project

Previous Next

Package: emacs;

Reported by: Zhu Zihao <cjpeople2013 <at> gmail.com>

Date: Thu, 28 May 2020 04:46:02 UTC

Severity: normal

Merged with 54228

Found in versions 28.0.50, 29.0.50

Fixed in version 29.1

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: 41572 <at> debbugs.gnu.org
Cc: "Philip K." <philipk <at> posteo.net>, Rudi Schlatte <rudi <at> constantly.at>, Augusto Stoffel <arstoffel <at> gmail.com>, Zhu Zihao <cjpeople2013 <at> gmail.com>, Theodor Thornhill <theo <at> thornhill.no>, Daniel Martín <mardani29 <at> yahoo.es>, Eric Abrahamsen <eric <at> ericabrahamsen.net>, João Távora <joaotavora <at> gmail.com>, Manuel Uberti <manuel.uberti <at> inventati.org>, Juri Linkov <juri <at> linkov.net>, Rudolf Adamkovič <salutis <at> me.com>
Subject: bug#41572: 28.0.50; [PATCH] Support plain project marked with file .emacs-project
Date: Sat, 26 Nov 2022 03:49:36 +0200
[Message part 1 (text/plain, inline)]
On 26/9/21 03:22, Dmitry Gutov wrote:
> Another issue is people working on monorepos (often backed by Git) 
> sometimes want to split them into separate projects. The latter 
> capability (excluding subproject's files) informed the choice of the 
> approach. Which is altering the vc project backend's behavior, rather 
> that offering this feature through another backend, like the one added 
> in the previous patch, for example.
> 
> I don't know if all users of this feature will want them excluded, 
> though. The attached implementation does, and maybe another option could 
> be added to disable this.
> 
> Or we could drop this part of the behavior, insisting that users who 
> want it could add the corresponding entries to project-vc-ignores. This 
> way they would be listing the subprojects twice, however. And the 
> project-vc-merge-submodules=nil behavior matches the other option 
> (submodule files are excluded from the parent).

Here's a third approach, which now seems to me the most approachable.

It solves the semantic problems by having the new "plain" projects also 
belong to the same type (which is still called project-vc, but means 
something more now). The backend's variables are adhered to, and 'git 
ls-files' is used for file listing in Git-backend subprojects still.

The subprojects' files are not excluded from the parent project, but as 
long as the format of markers stays with wildcards, it at least remains 
feasible to do, though with some extra expense at runtime. We'll see if 
people really want this.

It will probably also improve performance over Tramp compared to the 
current.

Does this work for everybody?
[project-vc-extra-root-markers.diff (text/x-patch, attachment)]

This bug report was last modified 2 years and 227 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.