Subject: Re: bug#65386: [PATCH] ; Refine some 'package-vc' docstrings

From: Mauro Aranda <[email-masked]>
Date: Sun, 20 Aug 2023 16:24:21 -0300

Eshel Yaron <[email-masked]> writes:

 > Philip Kaludercic <[email-masked]> writes:
 >
 >> Eshel Yaron <[email-masked]> writes:
 >>
 >>>> Also, would it make sense to determine this at compile-time?  On the
 >>>> other hand, if a VC backend is installed later on from ELPA, we would
 >>>> want the custom type to reflect this.
 >>>
 >>> Yes, I couldn't find a way to defer computing the set of candidates to
 >>> "customization type", I'm not sure if that even makes total sense.  I
 >>> think it's not that crucial since someone adding a VC backend and
 >>> immediately trying to customize these options seems to me like a very
 >>> minor edge case, and we had the same issue prior to my patch anyhow.
 >>
 >> Likely yes, but if we have two mostly equivalent solutions, I think that
 >> flexibility without having to restart Emacs is preferable to 
performance.
 >>
 >
 > Hmm I'm not sure I completely follow.  Which two solutions do you have
 > in mind?  I agree that it would be nice have the `:type` updated if the
 > user adds a relevant VC backend, but I don't think `defcustom` supports
 > something like that.  How do you propose to achieve that flexibility?

I haven't watch this thread closely, but do note that creating dynamic
choices is quite possible, if I understand correctly what you're looking
for.

If you can, take a look at the defcustom of completion-styles, in
minibuffer.el.  Its type uses a choice with a specialized
:convert-widget function to keep the choices up-to date.