GNU bug report logs - #60418
[PATCH] Add :vc keyword to use-package

Previous Next

Package: emacs;

Reported by: Tony Zorman <soliditsallgood <at> mailbox.org>

Date: Fri, 30 Dec 2022 07:04:03 UTC

Severity: normal

Tags: patch

Merged with 61937

Found in version 29.0.60

Done: Philip Kaludercic <philipk <at> posteo.net>

Bug is archived. No further changes may be made.

Full log


Message #130 received at 60418 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Philip Kaludercic <philipk <at> posteo.net>
Cc: soliditsallgood <at> mailbox.org, felician.nemeth <at> gmail.com,
 60418 <at> debbugs.gnu.org, stefankangas <at> gmail.com
Subject: Re: bug#60418: [PATCH] Add :vc keyword to use-package
Date: Fri, 05 May 2023 09:53:45 +0300
> From: Philip Kaludercic <philipk <at> posteo.net>
> Cc: soliditsallgood <at> mailbox.org,  60418 <at> debbugs.gnu.org,
>   felician.nemeth <at> gmail.com,  stefankangas <at> gmail.com
> Date: Fri, 05 May 2023 05:49:26 +0000
> 
> >> How about we just say "the commit of the latest release"?
> >
> > When package-vc-install is used, what is "the latest release"? isn't
> > that the HEAD of the default branch?  IOW, what about packages that
> > make no releases at all?
> 
> No, the commit of the latest release is interpreted the same way as
> elpa-admin.el does, namely the last revision that modified the "Version"
> header.  If no such commit can be found, then a message is printed out
> and the installation continues under the assumption that the package is
> using a rolling-release model.

I thought package-vc-install is used (or at least can be used) to
fetch the latest HEAD from the upstream repository?  I even thought
this was its main raison d'ĂȘtre?

If that's not true, does it mean we have no means for package users to
track the latest development code of a package?

> >> Are there any other places where we can fix this confusion?
> >
> > I guess the documentation of package-vc-install shares these issues?
> 
> How does this sound like to you:
> 
> diff --git a/lisp/emacs-lisp/package-vc.el b/lisp/emacs-lisp/package-vc.el
> index 8f62e7d65f3..b28e33b3b89 100644
> --- a/lisp/emacs-lisp/package-vc.el
> +++ b/lisp/emacs-lisp/package-vc.el
> @@ -747,11 +747,14 @@ package-vc-install
>  symbol whose name is the package name, and the URL for the
>  package will be taken from the package's metadata.
>  
> -By default, this function installs the last version of the package
> -available from its repository, but if REV is given and non-nil, it
> -specifies the revision to install.  If REV has the special value
> -`:last-release' (interactively, the prefix argument), that stands
> -for the last released version of the package.
> +By default, this function installs the last revision of the
> +package available from its repository, but if REV is given and
> +non-nil, it specifies the revision to install.  If REV has the
> +special value `:last-release' (interactively, the prefix
> +argument), an attempt is made to find the revision of the latest
> +release.  This is done by looking up the last revision that
> +modified the \"Version\" header, as described in the Info
> +node `(elisp) Library Headers'.

First, too much of passive voice.
More importantly, this still doesn't tell:

  . what is "the last revision", the one installed if REV is omitted?
  . what are possible values of REV, in addition to :last-release, and
    how are those values interpreted, in VCS terms?

> I can apply this or any variation thereof to emacs-29.

emacs-29 is fine for documentation changes.




This bug report was last modified 2 years and 1 day ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.