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

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

[elpa] master ee4cf1e 2/2: Improve debbugs-gnu-search


From: Michael Albinus
Subject: [elpa] master ee4cf1e 2/2: Improve debbugs-gnu-search
Date: Sat, 11 Jun 2016 17:51:16 +0000 (UTC)

branch: master
commit ee4cf1e79a1dfe1b32402825447ca039ee240fee
Author: Michael Albinus <address@hidden>
Commit: Michael Albinus <address@hidden>

    Improve debbugs-gnu-search
    
    * packages/debbugs/debbugs-gnu.el (debbugs-gnu-search):
    Use `author' for phrase based search, `status' for attribute-based
    search.  Fix allowed values for `status' search.
    
    * packages/debbugs/debbugs.el (debbugs-search-est): Fix docstring.
    Quote keys with apostroph in order to handle "@" properly in
    Debbugs::SOAP Perl module.  Make sharper test for `submitter' and
    address@hidden'.
---
 packages/debbugs/debbugs-gnu.el |   16 ++++++++++------
 packages/debbugs/debbugs.el     |   15 +++++++--------
 2 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/packages/debbugs/debbugs-gnu.el b/packages/debbugs/debbugs-gnu.el
index dd1fe33..6cf8f34 100644
--- a/packages/debbugs/debbugs-gnu.el
+++ b/packages/debbugs/debbugs-gnu.el
@@ -379,10 +379,11 @@ marked as \"client-side filter\"."
            (setq key (completing-read
                       "Enter attribute: "
                       (if phrase
-                          '("severity" "package" "tags" "submitter" "date"
-                            "subject" "status")
-                        '("severity" "package" "archive" "src" "tag"
+                          '("severity" "package" "tags"
+                            "author" "date" "subject")
+                        '("severity" "package" "archive" "src" "status" "tag"
                           "owner" "submitter" "maint" "correspondent"
+                          ;; Client-side queries.
                           "date" "log_modified" "last_modified"
                           "found_date" "fixed_date" "unarchived"
                           "subject" "done" "forwarded" "msgid" "summary"))
@@ -413,16 +414,19 @@ marked as \"client-side filter\"."
                (add-to-list
                 'debbugs-gnu-current-query (cons (intern key) val1))))
 
-            ((member key '("owner" "submitter" "maint" "correspondent"))
+            ((member
+              key '("author" "owner" "submitter" "maint" "correspondent"))
              (setq val1 (read-string "Enter email address: "))
              (when (not (zerop (length val1)))
                (add-to-list
-                'debbugs-gnu-current-query (cons (intern key) val1))))
+                'debbugs-gnu-current-query
+                (cons (intern (if (equal key "author") "@author" key)) val1))))
 
             ((equal key "status")
              (setq
               val1
-              (completing-read "Enter status: " '("done" "forwarded" "open")))
+              (completing-read
+               "Enter status: " '("pending" "forwarded" "fixed" "done")))
              (when (not (zerop (length val1)))
                (add-to-list
                 'debbugs-gnu-current-query (cons (intern key) val1))))
diff --git a/packages/debbugs/debbugs.el b/packages/debbugs/debbugs.el
index 422a775..8efeddb 100644
--- a/packages/debbugs/debbugs.el
+++ b/packages/debbugs/debbugs.el
@@ -565,17 +565,15 @@ The following conditions are possible:
 
   ATTRIBUTE is one of the following keywords:
 
-  :status --  Status of bug.  Valid values are \"done\",
-  \"forwarded\" and \"open\".
-
   :subject, :@title -- The subject of a message or the title of
   the bug, a string.
 
   :date, :@cdate -- The submission or modification dates of a
   message, a number.
 
-  :submitter, :@author -- The email address of the submitter of a
-  bug or the author of a message belonging to this bug, a string.
+  :@author -- The email address of the author of a message
+  belonging to this bug, a string.  It may be different than
+  the email of the person submitting the bug.
   The special email address \"me\" is used as pattern, replaced
   with `user-mail-address'.
 
@@ -699,7 +697,7 @@ Examples:
            (setq kw (pop elt))
            (unless (keywordp kw)
              (error "Wrong keyword: %s" kw))
-           (setq key (substring (symbol-name kw) 1))
+           (setq key (format "'%s'" (substring (symbol-name kw) 1)))
            (cl-case kw
              ;; Phrase condition.
              (:phrase
@@ -724,8 +722,9 @@ Examples:
 
              ;; Attribute condition.
              ((:submitter :@author)
-              ;; It shouldn't happen in a phrase condition.
-              (if phrase-cond
+              ;; It shouldn't happen.
+              (if (or (and (eq kw :submitter) phrase-cond)
+                      (and (eq kw :@author) attr-cond))
                   (error "Wrong keyword: %s" kw))
               (if (not (stringp (car elt)))
                   (setq vec (vconcat vec (list key "")))



reply via email to

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