Subject: Re: bug#34949: 27.0.50; Docstring of `vc-deduce-fileset' incomplete

From: Philipp Stephani <[email-masked]>
Date: Sun, 5 Apr 2020 11:47:10 +0200

Am So., 5. Apr. 2020 um 01:58 Uhr schrieb Juri Linkov <[email-masked]>:
>
> >> Many things were implemented under this request
> >> and more could be done on another round of improvements,
> >> but it would be too much for the same request,
> >> so I'm closing it now.
> >
> > I haven't followed this bug that closely, but it seems the initial
> > issue about the undocumented arguments and return values of
> > vc-deduced-fileset isn't addressed yet. At least on both master and
> > emacs-27 these topics are still not documented.
>
> Thanks for the report, I checked your initial request to see what
> remains to do:
>
> > The docstring of `vc-deduce-fileset' doesn't describe the OBSERVER parameter.
>
> OBSERVER was renamed to NOT-STATE-CHANGING a week ago in master and
> described in the docstring of `vc-deduce-fileset'.

Thanks!

>
> > It also doesn't explain the meaning of the return values
> > FILESET-ONLY-FILES, STATE, and CHECKOUT-MODEL.
>
> This is hard to explain because this is internal data, I even don't know
> where to begin.  For example, here is some code from vc-next-action
> that uses data returned from vc-deduce-fileset:
>
>   (not (eq model 'implicit)) (eq state 'up-to-date)
>
> Do you know what 'implicit' model means here and where to find all other
> possible model values?  Also please help to find all possible states like
> 'up-to-date' here.  I see more states used in vc-deduce-fileset like
> 'missing', 'ignored', 'needs-update', but where is a complete list?

Would it make sense to document these values as internal for now,
similar to what we do with the 11th return value of
parse-partial-sexp?