emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/transient e1a37e2222 2/3: Inform users if they have to


From: Jonas Bernoulli
Subject: [elpa] externals/transient e1a37e2222 2/3: Inform users if they have to manually upgrade seq
Date: Mon, 4 Dec 2023 14:59:24 -0500 (EST)

branch: externals/transient
commit e1a37e22220f8f9f94c01c1e615800d2aa92fcc2
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>

    Inform users if they have to manually upgrade seq
---
 lisp/transient.el | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/lisp/transient.el b/lisp/transient.el
index b9cd3439bc..7a9dbd73fd 100644
--- a/lisp/transient.el
+++ b/lisp/transient.el
@@ -63,6 +63,35 @@
              (not (fboundp 'seq-keep)))
     (unload-feature 'seq 'force)))
 (require 'seq)
+(unless (fboundp 'seq-keep)
+  (display-warning 'transient (substitute-command-keys "\
+Transient requires `seq' >= 2.24,
+but due to bad defaults, Emacs' package manager, refuses to
+upgrade this and other built-in packages to higher releases
+from GNU Elpa, when a package specifies that this is needed.
+
+To fix this, you have to add this to your init file:
+
+  (setq package-install-upgrade-built-in t)
+
+Then evaluate that expression by placing the cursor after it
+and typing \\[eval-last-sexp].
+
+Once you have done that, you have to explicitly upgrade `seq':
+
+  \\[package-upgrade] seq \\`RET'
+
+Then you also must make sure the updated version is loaded,
+by evaluating this form:
+
+  (progn (unload-feature 'seq t) (require 'seq))
+
+Until you do this, you will get random errors about `seq-keep'
+being undefined while using Transient.
+
+If you don't use the `package' package manager but still get
+this warning, then your chosen package manager likely has a
+similar defect.") :emergency))
 
 (eval-when-compile (require 'subr-x))
 



reply via email to

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