[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