emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reconsider defaults for use-package-vc-prefer-newest


From: Suhail Singh
Subject: Re: Reconsider defaults for use-package-vc-prefer-newest
Date: Wed, 25 Sep 2024 11:15:49 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

Philip Kaludercic <philipk@posteo.net> writes:

> The idea is to add a "COMMIT MISMATCH" warning whenever we detect that
> two packages have different commits.

Which are the two packages being considered?

>From my perspective, the following is the desired behaviour: whenever
package.el has evidence that the same purported package version is being
served via different commits in the various remote archives (that the
user has enabled) the user is made aware.  If the package versions
aren't the same, then no "COMMIT MISMATCH" should be shown.

I.e., the situation of interest is when versions match, but commits
don't.  If it helps, "NON-UNIQUE COMMIT" might be more accurate, but I
don't have a strong opinion on the wording.

> What this doesn't do yet is eliminate false positives, such as
> different commits between a local version of a package and a remote
> version.  I guess we are only interested in differences between remote
> packages, right?

If the package is a local :vc checkout, I don't have strong opinions on
whether it is considered or ignored.  If the package is an installed
version (via package-install), then it should be compared against any
other version that has the same version number (i.e., in the same manner
as a remote package would be compared).

> Does MELPA annotate their packages with commits?

Both MELPA and MELPA Stable seem to.  I am basing this on the assumption
that the result of button-describe comes from the archive in question.
If there is a better way to confirm, please do let me know.

> +                                   (if (and (not (package-desc-dir opkg))
> +                                            (equal ocommit commit))
> +                                       "" ", COMMIT MISMATCH!")))))

If (package-desc-dir opkg) evaluates to non-nil, then the above
evaluates to ", COMMIT MISMATCH!" which seems incorrect.

> It is documented on the elpa-admin branch:
>
> https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/README?h=elpa-admin&id=9bd65395f1d4875915731ddbdd73a471f10d7794#n215

Thanks for sharing the reference, but why is this not in the default
branch (which is the only one linked from <https://elpa.gnu.org/>) to
begin with?  Alternatively, if the elpa-admin variant is considered the
canonical version, why doesn't the link from <https://elpa.gnu.org/>
point to
<https://git.savannah.gnu.org/cgit/emacs/elpa.git/plain/README?h=elpa-admin>
instead?

The comment at the top of the file states that the two versions "differ
slightly".  However, differences in the documentation of supported
options (regardless of whether or not their use is encouraged) is not
what I would consider a "slight" difference.

> That being said, I still think that this is a feature that we would want
> to advise package maintainers not to use.

Agreed.

-- 
Suhail



reply via email to

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