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

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

[elpa] externals/debbugs b15eaf2 068/311: * debbugs-gnu.el (debbugs-gnu-


From: Stefan Monnier
Subject: [elpa] externals/debbugs b15eaf2 068/311: * debbugs-gnu.el (debbugs-gnu-get-bugs): If
Date: Sun, 29 Nov 2020 18:41:42 -0500 (EST)

branch: externals/debbugs
commit b15eaf243a4b79477f6e919c0fab77b76c338557
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>

    * debbugs-gnu.el (debbugs-gnu-get-bugs): If
    `debbugs-gnu-current-severities' contains only the pseudo-severity
    "tagged", return just the local tagged bugs.
---
 ChangeLog      |  4 ++++
 debbugs-gnu.el | 29 ++++++++++++++++++++---------
 2 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3f10631..01171f1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2011-07-20  Michael Albinus  <michael.albinus@gmx.de>
 
+       * debbugs-gnu.el (debbugs-gnu-get-bugs): If
+       `debbugs-gnu-current-severities' contains only the pseudo-severity
+       "tagged", return just the local tagged bugs.
+
        * debbugs.texi (top): Add a title page.
        (all): Correct some typos.
 
diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index c42e115..a7f3daa 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -317,15 +317,26 @@ expression matchin the corresponding value, a string."
   "Retrieve bugs numbers from debbugs.gnu.org according search criteria."
   (let ((debbugs-port "gnu.org")
        (args `(:archive ,debbugs-gnu-current-archive))
-       (ids (when (member "tagged" debbugs-gnu-current-severities)
-              (copy-sequence debbugs-gnu-local-tags))))
-    (dolist (severity (delete "tagged" debbugs-gnu-current-severities))
-      (when (not (zerop (length severity)))
-       (setq args (append args `(:severity ,severity)))))
-    (dolist (package debbugs-gnu-current-packages)
-      (when (not (zerop (length package)))
-       (setq args (append args `(:package ,package)))))
-    (sort (nconc ids (apply 'debbugs-get-bugs args)) '<)))
+       (tagged (when (member "tagged" debbugs-gnu-current-severities)
+                 (copy-sequence debbugs-gnu-local-tags)))
+       (severities
+        (delete "tagged" (copy-sequence debbugs-gnu-current-severities)))
+       ids)
+    (if (null severities)
+       ;; If `debbugs-gnu-current-severities' contains only the
+       ;; pseudo-severity "tagged", we return just the local tagged
+       ;; bugs.
+       (sort tagged '<)
+      ;; Otherwise, we retrieve the bugs from the server.
+      (dolist (severity severities)
+       (when (not (zerop (length severity)))
+         (setq args (append args `(:severity ,severity)))))
+      (dolist (package debbugs-gnu-current-packages)
+       (when (not (zerop (length package)))
+         (setq args (append args `(:package ,package)))))
+      (setq ids (apply 'debbugs-get-bugs args))
+      (dolist (id tagged (sort ids '<))
+       (add-to-list 'ids id)))))
 
 (defvar debbugs-gnu-current-widget nil)
 



reply via email to

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