emacs-devel
[Top][All Lists]
Advanced

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

Re: debbugs-gnu-bugs shows unanswered bugs as handled


From: Tino Calancha
Subject: Re: debbugs-gnu-bugs shows unanswered bugs as handled
Date: Wed, 8 Jun 2016 22:29:31 +0900 (JST)
User-agent: Alpine 2.20 (LRH 67 2015-01-07)



Thank you Michael for the answer!  Very clear.

On Sun, 5 Jun 2016, Michael Albinus wrote:
The idea of `owner' is different. It is not set automatically.
I see there is no straight way to fix it.  So sad :-(
From now on i will not send the second email on my own bug
reports, except pings :-)

I have found 2 more issues code (added patches at the end of the email).

I)
   I have noticed the code uses the attributes 'submitter and 'author
   as synonymous: tipically they have same value but not always.
   For instance try folowing example:

[OK]
M-x debbugs-gnu-search RET
nuisance AND asked RET RET
;; list bugs: 19328, 23680

[BAD]
M-x debbugs-gnu-search RET
nuisance AND asked RET submitter address@hidden RET RET
;; Don't show bugs because author and submitter are not equivalent;
;; for instance, in bug#19328, the submitter is address@hidden
;; but the author is address@hidden


II)
   I guess attribute 'status should be handled also in the client side.

   See for instance,

[BAD]
(setq debbugs-gnu-default-suppress-bugs nil) ; show bugs with status "done"
M-x debbugs-gnu-search RET
nuisance AND asked RET status done RET RET
;; Don't show any bug



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Following patches fix I) and II).

Please, note that on debbugs.el
i have modified just
debbugs-search-est

There is other uses of :submitter on that file (e.g. debbugs-get-bugs);
i am wondering if they also need to be fixed (i didn't look on it).

Regards,
Tino
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

From d9f5968d762edc62f45d251cbcc0d37e2183f66d Mon Sep 17 00:00:00 2001
From: Tino Calancha <address@hidden>
Date: Wed, 8 Jun 2016 21:38:45 +0900
Subject: [PATCH 1/3] * debbugs-gnu.el (debbugs-gnu-search): submitter and
 author fields are not identical: the former is handled on the client side;
 the latter on the server side.   (debbugs-gnu-get-bugs): Idem.

* debbugs.el (debbugs-search-est): Attribute :submitter searched on
the client side.
---
 debbugs-gnu.el | 27 +++++++++++++++++++++------
 debbugs.el     |  7 ++++---
 2 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index 8ec7a32..f2874d3 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -370,13 +370,14 @@ marked as \"client-side filter\"."
            (setq key (completing-read
                       "Enter attribute: "
                       (if phrase
-                          '("severity" "package" "tags" "submitter" "date"
-                            "subject" "status")
+                          '("severity" "package" "tags" "author" "date"
+                            "subject" "status" "submitter")
                         '("severity" "package" "archive" "src" "tag"
-                          "owner" "submitter" "maint" "correspondent"
+                          "owner" "author" "maint" "correspondent"
                           "date" "log_modified" "last_modified"
                           "found_date" "fixed_date" "unarchived"
-                          "subject" "done" "forwarded" "msgid" "summary"))
+                          "subject" "done" "forwarded" "msgid" "summary"
+               "submitter"))
                       nil t))
            (cond
             ;; Server-side queries.
@@ -404,11 +405,11 @@ marked as \"client-side filter\"."
                (add-to-list
                 'debbugs-gnu-current-query (cons (intern key) val1))))

-            ((member key '("owner" "submitter" "maint" "correspondent"))
+            ((member key '("owner" "author" "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 "@author") val1))))

             ((equal key "status")
              (setq
@@ -457,6 +458,17 @@ marked as \"client-side filter\"."
                     'debbugs-gnu-current-query 'debbugs-gnu-current-filter)
                 (cons (intern key) (cons val1 val2)))))

+         ;; Additional client-side filters.
+         ((equal key "submitter")
+          (setq val1 (read-string "Enter email address: "))
+          (when (string-equal "me" val1)
+            (setq val1 user-mail-address))
+          (when (string-match "<\\(.+\\)>" val1)
+            (setq val1 (match-string 1 val1)))
+          (when (not (zerop (length val1)))
+            (add-to-list
+             'debbugs-gnu-current-filter (cons (intern "originator") val1))))
+
             ((not (zerop (length key)))
              (setq val1
                    (funcall
@@ -561,6 +573,9 @@ marked as \"client-side filter\"."
                    ((eq (car elt) 'date)
                     (list (list :date (cddr elt) (cadr elt)
                                 :operator "NUMBT")))
+            ((eq (car elt) 'author)
+             (list (list :@author (cdr elt)
+                         :operator "ISTRINC")))
                    (t
                     (list (list (intern (concat ":" (symbol-name (car elt))))
                                 (cdr elt) :operator "ISTRINC"))))
diff --git a/debbugs.el b/debbugs.el
index 422a775..6462f05 100644
--- a/debbugs.el
+++ b/debbugs.el
@@ -574,8 +574,9 @@ The following conditions are possible:
   :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'.

@@ -723,7 +724,7 @@ Examples:
                 (error "Wrong %s: %s" key val)))

              ;; Attribute condition.
-             ((:submitter :@author)
+             (:@author
               ;; It shouldn't happen in a phrase condition.
               (if phrase-cond
                   (error "Wrong keyword: %s" kw))
--
2.8.1

From 3f466b17abd51910b225894ce87cf7c47748f441 Mon Sep 17 00:00:00 2001
From: Tino Calancha <address@hidden>
Date: Wed, 8 Jun 2016 21:42:05 +0900
Subject: [PATCH 2/3] * debbugs-gnu.el (debbugs-gnu-search): Attribute status
 is searched on the client side. * debbugs.el (debbugs-search-est): Idem.

---
 debbugs-gnu.el | 20 ++++++++++----------
 debbugs.el     | 20 --------------------
 2 files changed, 10 insertions(+), 30 deletions(-)

diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index f2874d3..c73d462 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -377,7 +377,7 @@ marked as \"client-side filter\"."
                           "date" "log_modified" "last_modified"
                           "found_date" "fixed_date" "unarchived"
                           "subject" "done" "forwarded" "msgid" "summary"
-               "submitter"))
+               "status" "submitter"))
                       nil t))
            (cond
             ;; Server-side queries.
@@ -409,15 +409,7 @@ marked as \"client-side filter\"."
              (setq val1 (read-string "Enter email address: "))
              (when (not (zerop (length val1)))
                (add-to-list
-                'debbugs-gnu-current-query (cons (intern "@author") val1))))
-
-            ((equal key "status")
-             (setq
-              val1
-              (completing-read "Enter status: " '("done" "forwarded" "open")))
-             (when (not (zerop (length val1)))
-               (add-to-list
-                'debbugs-gnu-current-query (cons (intern key) val1))))
+         'debbugs-gnu-current-query (cons (intern "@author") val1))))

             ;; Client-side filters.
             ((member key '("date" "log_modified" "last_modified"
@@ -469,6 +461,14 @@ marked as \"client-side filter\"."
             (add-to-list
              'debbugs-gnu-current-filter (cons (intern "originator") val1))))

+         ((equal key "status")
+          (setq
+           val1
+           (completing-read "Enter status: " '("pending" "forwarded" "fixed" 
"done")))
+          (when (not (zerop (length val1)))
+            (add-to-list
+             'debbugs-gnu-current-filter (cons (intern "pending") val1))))
+
             ((not (zerop (length key)))
              (setq val1
                    (funcall
diff --git a/debbugs.el b/debbugs.el
index 6462f05..36b5fb8 100644
--- a/debbugs.el
+++ b/debbugs.el
@@ -565,9 +565,6 @@ 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.

@@ -743,23 +740,6 @@ Examples:
                 (setq vec
                       (vconcat vec (list key (mapconcat #'identity val " 
"))))))

-             (:status
-              ;; It shouldn't happen in a phrase condition.
-              (if phrase-cond
-                  (error "Wrong keyword: %s" kw))
-              (setq attr-cond t)
-              (if (not (stringp (car elt)))
-                  (setq vec (vconcat vec (list key "")))
-                ;; Possible values: "done", "forwarded" and "open"
-                (while  (and (stringp (car elt))
-                             (string-match
-                              "\\`\\(done\\|forwarded\\|open\\)\\'" (car elt)))
-                  (let ((x (pop elt)))
-                    (unless (member x val)
-                      (setq val (append val (list x))))))
-                (setq vec
-                      (vconcat vec (list key (mapconcat #'identity val " 
"))))))
-
              ((:subject :package :tags :severity :@title)
               ;; It shouldn't happen in a phrase condition.
               (if phrase-cond
--
2.8.1

From dbbdb7e4d75a79f878d5c0ec9034c016f3fc59f1 Mon Sep 17 00:00:00 2001
From: Tino Calancha <address@hidden>
Date: Wed, 8 Jun 2016 21:45:38 +0900
Subject: [PATCH 3/3] * debbugs-ug.texi (Searching in the Debbugs Database):
 Fix typo

---
 debbugs-ug.texi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/debbugs-ug.texi b/debbugs-ug.texi
index 553e19b..045e9d1 100644
--- a/debbugs-ug.texi
+++ b/debbugs-ug.texi
@@ -176,7 +176,7 @@ AND is used by default.

 Wild card searches are also supported.  It can be used for forward
 match search and backward match search.  For example, "[BW] euro"
-matches words which begin with "euro".  "[EW] shere" matches words
+matches words which begin with "euro".  "[EW] sphere" matches words
 which end with "sphere".  Moreover, regular expressions are also
 supported.  For example, "[RX] ^inter.*al$" matches words which begin
 with "inter" and end with "al"address@hidden forms, as
--
2.8.1






reply via email to

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