Subject: Re: bug#63469: 29.0.90; project.el doesn't add menu-bar entries

From: Juri Linkov <[email-masked]>
Date: Tue, 23 May 2023 21:11:50 +0300

> BTW, there is another problem: by default 'project-name' is defined as
> (file-name-nondirectory (directory-file-name (project-root project))).
> But then project name often is the same for different projects
> because the directory name is the same for the same repository.
> For example, in a subtree:
>
>   emacs-master/emacs/...
>   emacs-29/emacs/...
>   emacs-28/emacs/...
>
> All project names are the same 'emacs'.  How would it be possible to
> customize project names?  Trying to get a parent dir might be too
> unreliable.  So probably the only way is to define the name manually.
> Maybe in .dir-locals.el.  Actually this works:
>
>   ((nil . ((project-vc-name . "emacs-29"))))
>
> Not sure why non-VC projects can't be named the same way.

And indeed this is a real problem: in file buffers there is
one project name that comes from project-vc-name, and in
non-file buffers another project name deduced from dirs.

This distinction became visible while testing project-mode
on the mode-line.

> Also noticed that project-vc-name is not marked as safe,
> so always asks a confirmation.

This problem exists only until project.el is loaded.
So maybe the 'safe' cookie should be in ###autoload.