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: Stefan Monnier
Subject: Re: feature/package-vc has been merged
Date: Wed, 16 Nov 2022 15:05:30 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

> As mentioned below, I think the harm is that unintended error could
> appear.  But I get your argument too, that mistakes should be fixed in
> general and having these pop up during byte compilation is a good way to
> make these more noticeable...

Either way is fine by me, every use of `lisp-dir` should come with
a comment justifying it, IMO.

>>>>> -(defun package-generate-autoloads (name pkg-dir)
>>>>> -  "Generate autoloads in PKG-DIR for package named NAME."
>>>>> -  (let* ((auto-name (format "%s-autoloads.el" name))
>>>>> +(defun package-generate-autoloads (pkg-desc pkg-dir)
>>>>> +  "Generate autoloads for PKG-DESC in PKG-DIR."
>>>>> +  (let* ((name (package-desc-name pkg-desc))
>>>>> +         (auto-name (format "%s-autoloads.el" name))
>>>>>           ;;(ignore-name (concat name "-pkg.el"))
>>>>>           (output-file (expand-file-name auto-name pkg-dir))
>>>>>           ;; We don't need 'em, and this makes the output reproducible.
>>>>
>>>> I thought an alternative was for `package-vc.el` to call this function
>>>> with the `:lisp-dir` as `pkg-dir`, so we don't need to change this part
>>>> of the code.
>>>
>>> I might be missing something, but the previous signature was missing a
>>> package description object that the change required.
>>
>> No, I mean that the change should not be needed (and hence the change
>> in signature shouldn't be needed either).
>
> If there is any place where :lisp-dir this is needed, then here, because
> this is the place where the auto-load is generated containing the
> `load-path' modification.  If I don't have the package description, then
> I cannot infer the right sub-directory.

I don't understand: in my mental model, package-vc would call
(package-generate-autoloads 'org "/foo/bar/org/lisp/") and that would
generate the right autoloads file with the right modification of
`load-path`, and then `package-vc` would just need to create an
additional /foo/bar/org/org-autoloads.el file which simply loads
/foo/bar/org/lisp/org-autoloads.el.


        Stefan




reply via email to

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