aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Bernoulli <jonas@bernoul.li>2025-08-06 23:13:49 +0200
committerJonas Bernoulli <jonas@bernoul.li>2025-08-06 23:13:49 +0200
commit92020002b3f162e26af11f1a01c21bb18111b1cc (patch)
treeef3981706d81715f799c69e42a9b0832aac46d87
parent8f5d30c1e051b3cb6e1c3d1e6ae983d3b41ee70c (diff)
Remove kludge for and-let* bug in older Emacs releases
`and-let*' used to behave like `if' instead of like `when' (as always documented), but that has been fixed all the way back in Emacs 27.1. We can drop this kludge because by now we require at least Emacs 28.1. See debbug#31840.
-rw-r--r--lisp/magit-diff.el40
-rw-r--r--lisp/magit-git.el19
-rw-r--r--lisp/magit-refs.el5
3 files changed, 29 insertions, 35 deletions
diff --git a/lisp/magit-diff.el b/lisp/magit-diff.el
index bf497b9..6dc19ac 100644
--- a/lisp/magit-diff.el
+++ b/lisp/magit-diff.el
@@ -1171,9 +1171,8 @@ The information can be in three forms:
If no DWIM context is found, nil is returned."
(cond
((and-let* ((commits (magit-region-values '(commit branch) t)))
- (progn
- (deactivate-mark)
- (concat (car (last commits)) ".." (car commits)))))
+ (deactivate-mark)
+ (concat (car (last commits)) ".." (car commits))))
(magit-buffer-refname
(cons 'commit magit-buffer-refname))
((derived-mode-p 'magit-stash-mode)
@@ -1227,24 +1226,23 @@ If no DWIM context is found, nil is returned."
(and-let* ((commits (magit-region-values '(commit branch) t))
(revA (car (last commits)))
(revB (car commits)))
- (progn
- (when interactive
- (deactivate-mark))
- (if mbase
- (let ((base (magit-git-string "merge-base" revA revB)))
- (cond
- ((string= (magit-rev-parse revA) base)
- (format "%s..%s" revA revB))
- ((string= (magit-rev-parse revB) base)
- (format "%s..%s" revB revA))
- (interactive
- (let ((main (magit-completing-read "View changes along"
- (list revA revB)
- nil t nil nil revB)))
- (format "%s...%s"
- (if (string= main revB) revA revB) main)))
- (t "%s...%s" revA revB)))
- (format "%s..%s" revA revB)))))
+ (when interactive
+ (deactivate-mark))
+ (if mbase
+ (let ((base (magit-git-string "merge-base" revA revB)))
+ (cond
+ ((string= (magit-rev-parse revA) base)
+ (format "%s..%s" revA revB))
+ ((string= (magit-rev-parse revB) base)
+ (format "%s..%s" revB revA))
+ (interactive
+ (let ((main (magit-completing-read "View changes along"
+ (list revA revB)
+ nil t nil nil revB)))
+ (format "%s...%s"
+ (if (string= main revB) revA revB) main)))
+ (t "%s...%s" revA revB)))
+ (format "%s..%s" revA revB))))
(defun magit-diff-read-range-or-commit (prompt &optional secondary-default mbase)
"Read range or revision with special diff range treatment.
diff --git a/lisp/magit-git.el b/lisp/magit-git.el
index 16b46d5..1c71b78 100644
--- a/lisp/magit-git.el
+++ b/lisp/magit-git.el
@@ -1494,11 +1494,10 @@ Git."
(defun magit-name-tag (rev &optional lax)
(and-let* ((name (magit-rev-name rev "refs/tags/*")))
- (progn
- (when (string-suffix-p "^0" name)
- (setq name (substring name 0 -2)))
- (and (or lax (not (string-match-p "[~^]" name)))
- (substring name 5)))))
+ (when (string-suffix-p "^0" name)
+ (setq name (substring name 0 -2)))
+ (and (or lax (not (string-match-p "[~^]" name)))
+ (substring name 5))))
(defun magit-ref-abbrev (refname)
"Return an unambiguous abbreviation of REFNAME."
@@ -2338,9 +2337,8 @@ If `first-parent' is set, traverse only first parents."
(defun magit-format-rev-summary (rev)
(and-let* ((str (magit-rev-format "%h %s" rev)))
- (progn
- (magit--put-face 0 (string-match " " str) 'magit-hash str)
- str)))
+ (magit--put-face 0 (string-match " " str) 'magit-hash str)
+ str))
(defvar magit-ref-namespaces
'(("\\`HEAD\\'" . magit-head)
@@ -2669,9 +2667,8 @@ and this option only controls what face is used.")
(magit-read-range
prompt
(or (and-let* ((revs (magit-region-values '(commit branch) t)))
- (progn
- (deactivate-mark)
- (concat (car (last revs)) ".." (car revs))))
+ (deactivate-mark)
+ (concat (car (last revs)) ".." (car revs)))
(magit-branch-or-commit-at-point)
secondary-default
(magit-get-current-branch))))
diff --git a/lisp/magit-refs.el b/lisp/magit-refs.el
index 441cb1b..2ffa12e 100644
--- a/lisp/magit-refs.el
+++ b/lisp/magit-refs.el
@@ -366,9 +366,8 @@ Type \\[magit-reset] to reset `HEAD' to the commit at point.
(and-let* ((buffer (magit-get-mode-buffer
'magit-refs-mode nil
(eq use-buffer-args 'selected))))
- (progn
- (setq args (buffer-local-value 'magit-buffer-arguments buffer))
- t))))
+ (setq args (buffer-local-value 'magit-buffer-arguments buffer))
+ t)))
(t
(setq args (alist-get 'magit-show-refs transient-values))))
args))