emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: feature/package-vc has been merged


From: Philip Kaludercic
Subject: Re: feature/package-vc has been merged
Date: Mon, 07 Nov 2022 08:42:18 +0000

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Philip Kaludercic <philipk@posteo.net>
>> Cc: monnier@iro.umontreal.ca,  rms@gnu.org,  emacs-devel@gnu.org
>> Date: Sun, 06 Nov 2022 18:35:10 +0000
>> 
>> Eli Zaretskii <eliz@gnu.org> writes:
>> 
>> > And if you think many do, why not clone the repository directly into
>> > ~/.emacs.d/elpa/?
>> 
>> Because that won't take care of scraping for autoloads, byte
>> compilation and installing missing dependencies.
>
> I don't see why.  Please elaborate how having the repository inside
> ~/.emacs.d gets in the way of these activities.

It doesn't get in the way, the issue just is that if you were to just
clone a package right into .emacs.d, you would still have to do all
these steps individually and manually.

>> >> All of this would only apply to packages with external `:lisp-dir's,
>> >> which doesn't immediately interest a user/developer.  Having to keep
>> >> this in mind would pointlessly expose an internal detail of package-vc
>> >> that I'd like to avoid.
>> >
>> > But it is us who introduced and support :lisp-dir.  If we think it's a
>> > leaky abstraction, we could decide not to support it.
>> 
>> You mean as in only allowing for packages to distribute lisp code in the
>> root directory of the repository?  That would pointlessly break too many
>> packages that decide to structure their file hierarchy for whatever
>> reason.
>
> Is that what :lisp-dir is about? then the doc strings in package-vc.el
> doesn't even hint about that.  In particular, there's nothing there
> about the root directory of the repository.  

The docstring for `package-vc--archive-spec-alist' has the following
(I'm still looking for a better way to document this):

 `:lisp-dir' (string)
    The repository-relative name of the directory to use for loading the Lisp
    sources.  If not given, the value defaults to the root directory
    of the repository.

One example where this is being used is for org-mode:
https://git.savannah.gnu.org/cgit/emacs/org-mode.git/tree/.

>                                              (Not that I understand
> why having Lisp files in a subdirectory of the repository would be a
> problem that needs an explicit configuration of the package, probably
> missing something else again.)

Maybe I am mistaken, but having a directory in `load-path' doesn't mean
all sub-directories are automatically indexed, right?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]