branch: elpa/magit
commit 92020002b3f162e26af11f1a01c21bb18111b1cc
Author: Jonas Bernoulli <[email protected]>
Commit: Jonas Bernoulli <[email protected]>

    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.
---
 lisp/magit-diff.el | 40 +++++++++++++++++++---------------------
 lisp/magit-git.el  | 19 ++++++++-----------
 lisp/magit-refs.el |  5 ++---
 3 files changed, 29 insertions(+), 35 deletions(-)

diff --git a/lisp/magit-diff.el b/lisp/magit-diff.el
index bf497b9a0d8..6dc19ac7096 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 16b46d53f26..1c71b781d69 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 441cb1b0fb0..2ffa12e7d54 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))

Reply via email to