[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13824: 24.3.50; :package-version not taking priority over :version
From: |
Bill Wohler |
Subject: |
bug#13824: 24.3.50; :package-version not taking priority over :version |
Date: |
Sat, 10 Aug 2019 15:10:13 -0700 |
Eli Zaretskii <eliz@gnu.org> wrote:
> > From: Stefan Kangas <stefan@marxist.se>
> > Date: Thu, 8 Aug 2019 05:59:21 +0200
> > Cc: 13824@debbugs.gnu.org
> >
> > Bastien Guerry <bzg@altern.org> writes:
> >
> > > The docstring of `defcustom' says:
> > >
> > > :package-version
> > > VALUE should be a list with the form (PACKAGE . VERSION)
> > > specifying that the variable was first introduced, or its
> > > default value was changed, in PACKAGE version VERSION. This
> > > keyword takes priority over :version.
> > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > >
> > > but `describe-variable-custom-version-info' gives priority to :version
> > > over :package-version. Which one is correct here?
> >
> > This is still an issue on current master (and 26.2).
> >
> > I reproduced this using:
> >
> > (progn
> > (defcustom foobar nil
> > "foo"
> > :version "27.1"
> > :package-version '(foo . "1"))
> > (describe-variable-custom-version-info 'foobar))
> >
> > Which results in:
> >
> > "This variable was introduced, or its default value was changed, in
> > version 27.1 of Emacs.
> > "
> >
> > But C-h f defcustom says:
> >
> > :package-version
> > VALUE should be a list with the form (PACKAGE . VERSION)
> > specifying that the variable was first introduced, or its
> > default value was changed, in PACKAGE version VERSION. This
> > keyword takes priority over :version.
>
> The implementation only prefers :package-version for the purposes of
> customize-changed-options, i.e. the Options->Customize Emacs->New
> Options menu item. By contrast, describe-variable-custom-version-info
> is used for displaying the doc strings of options. For a package that
> is bundled with Emacs, I think displaying :version in "C-h v" makes
> sense. If people agree, then this is a minor documentation bug (also
> to be fixed in the ELisp manual), not a code bug.
>
> Bill, what is your take on this? Your change, which introduced this
> attribute, only modified customize-changed-options. Was that on
> purpose?
Thanks for asking. The original intent of package-version was to provide
more accurate version information in packages that were updated more
often than Emacs, regardless of whether they were packaged in Emacs
(like MH-E and Gnus) or not. I think that should apply to any function
that displays version information for an option. That is, any function
that looks for :version should also look for :package-version.
--
Bill Wohler <wohler@newt.com> aka <Bill.Wohler@nasa.gov>
http://www.newt.com/wohler/, GnuPG ID:610BD9AD