Subject: Re: bug#66567: [PATCH] use-package: Add ignored-files support to :vc keyword

From: Philip Kaludercic <[email-masked]>
Date: Tue, 07 Nov 2023 21:24:58 +0000

Tony Zorman <[email-masked]> writes:

> On Wed, Nov 01 2023 16:38, Philip Kaludercic wrote:
>> Tony Zorman <[email-masked]> writes:
>>> On Wed, Nov 01 2023 12:48, Philip Kaludercic wrote:
>>>> Tony Zorman <[email-masked]> writes:
>>>>> On Wed, Nov 01 2023 09:09, Philip Kaludercic wrote:
>>>>>
>>>>>> Why is use-package checking for valid keywords in the first place?
>>>>>
>>>>> Better error messages, mostly. Especially people switching from
>>>>> quelpa/straight/vc-use-package might be surprised that :vc is not a
>>>>> drop-in replacement for those packages. I feel like alerting them to
>>>>> this fact sooner rather than later makes for a better experience.
>>>>
>>>> IIUC this would raise an error when an unknown keyword is encountered,
>>>> right?
>>>
>>> Yes, a declaration like
>>>
>>>     (use-package foo
>>>       :vc (:url "url" :blargh "123"))
>>>
>>> would result in the following message
>>>
>>>     ⛔ Error (use-package): Failed to parse package foo: use-package: Keyword :vc received unknown argument: :blargh. Supported keywords are: (:url :branch :lisp-dir :main-file :vc-backend :rev :shell-command :make :ignored-files)
>>>
>>> Things get a bit muddier if ':blargh' would be passed down to
>>> package-vc-install.
>>
>> What I was wondering, was if it would make sense to raise an warning
>> instead.
>
> Now I'm a bit confused: where exactly? Inside of use-package or
> package-vc? Either way, I think raising an error when the user inputs
> nonsense is totally justified—I'd just like that error to be
> understandable as quickly as possible.

I was thinking that package-vc should emit an error, but that
use-package could emit a warning, in case a new keyword is added to
package-vc specifications but hasn't yet been added to the use-package
layer -- mainly because I don't use the latter and am not that familiar
with the code.

>   Tony