[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#69528: 30.0.50; [BUG] transient.el is not a member of package--built
From: |
Philip Kaludercic |
Subject: |
bug#69528: 30.0.50; [BUG] transient.el is not a member of package--builtin-versions |
Date: |
Mon, 04 Mar 2024 18:41:26 +0000 |
No Wayman <iarchivedmywholelife@gmail.com> writes:
> No Wayman <iarchivedmywholelife@gmail.com> writes:
>
>> Transient.el was added in 28.1 according to NEWS.
>> It is not a member of package--builtin-versions for any of the
>> following Emacs
>> versions: 28.1, 28.2, 29.1, 29.2.
At least on Emacs 30, (assq 'transient package--builtin-versions) gives
me a non-nil value. I can confirm that this is the case on the emacs-29
branch.
I suspect this commit resolved the issue, since
`loaddefs-generate--parse-file' only checks the version header, not the
package-version header.
--8<---------------cut here---------------start------------->8---
commit fa5f06c1251ff717d661f05fcd240b4792054aae
Author: Jonas Bernoulli <jonas@bernoul.li>
Date: Tue Dec 5 20:01:44 2023 +0100
; * lisp/transient.el: Set Version instead of Package-Version
`finder-compile-keywords' only considers the "Version" header.
diff --git a/lisp/transient.el b/lisp/transient.el
--- a/lisp/transient.el
+++ b/lisp/transient.el
@@ -1,35 +1,35 @@
;;; transient.el --- Transient commands -*- lexical-binding:t -*-
;; Copyright (C) 2018-2023 Free Software Foundation, Inc.
;; Author: Jonas Bernoulli <jonas@bernoul.li>
;; Homepage: https://github.com/magit/transient
;; Keywords: extensions
-;; Package-Version: 0.5.2
+;; Version: 0.5.2
;; Package-Requires: ((emacs "26.1") (compat "29.1.4.4") (seq "2.24"))
;; SPDX-License-Identifier: GPL-3.0-or-later
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published
;; by the Free Software Foundation, either version 3 of the License,
;; or (at your option) any later version.
;;
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;; Transient is the library used to implement the keyboard-driven menus
;; in Magit. It is distributed as a separate package, so that it can be
;; used to implement similar menus in other packages.
;;; Code:
--8<---------------cut here---------------end--------------->8---
So in general, this patch might be appropriate?
diff --git a/lisp/emacs-lisp/loaddefs-gen.el b/lisp/emacs-lisp/loaddefs-gen.el
index 581053f6304..42f386933dc 100644
--- a/lisp/emacs-lisp/loaddefs-gen.el
+++ b/lisp/emacs-lisp/loaddefs-gen.el
@@ -433,7 +433,8 @@ loaddefs-generate--parse-file
;; loaddefs for packages so that `syntax-ppss' later gives
;; correct results.
(emacs-lisp-mode)
- (let ((version (lm-header "version"))
+ (let ((version (or (lm-header "package-version")
+ (lm-header "version")))
package)
(when (and version
(setq version (ignore-errors (version-to-list version)))
>
> I believe the behavior described here is due to this:
> https://www.reddit.com/r/emacs/comments/1b69v1b/let_magit_330_use_builtin_transient/
>
> To summarize, the user has a built-in version of transient.el shipped
> with Emacs 29.2.
> They installed magit 3.3.0, which requires transient 0.3.6. Instead of
> package.el seeing magit's transient.el dependency as satisfied by the
> built-in version, it installed the latest version.
>
> I've patched Elpaca, which relies on package--builtin-vesrions, due to
> similar complaints about transient.el being pulled in despite the
> built-in version satisfying a dependency.
I suspect that whatever you did, won't help us since this specific issue
will be resolved by the time any package.el-related fix would be published?
--
Philip Kaludercic on peregrine