X-Git-Url: https://code.delx.au/gnu-emacs-elpa/blobdiff_plain/283f47064c3f04d274ff9dc0e467a544391f75cb..485aba46966fc9f812898cbd5f17a9e519cca013:/packages/debbugs/debbugs-gnu.el diff --git a/packages/debbugs/debbugs-gnu.el b/packages/debbugs/debbugs-gnu.el index 4c108cc46..0ecfb165a 100644 --- a/packages/debbugs/debbugs-gnu.el +++ b/packages/debbugs/debbugs-gnu.el @@ -209,7 +209,7 @@ "If non-nil, don't show closed bugs." :group 'debbugs-gnu :type 'boolean - :version "25.2") + :version "25.1") (defconst debbugs-gnu-all-severities (mapcar 'cadr (cdr (get 'debbugs-gnu-default-severities 'custom-type))) @@ -379,10 +379,13 @@ 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" + ;; Client-side queries. + "status") + '("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,21 +416,29 @@ 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)))) + ;; Client-side filters. ((equal key "status") (setq val1 - (completing-read "Enter status: " '("done" "forwarded" "open"))) + (completing-read + (format "Enter status%s: " + (if (null phrase) "" " (client-side filter)")) + '("pending" "forwarded" "fixed" "done"))) (when (not (zerop (length val1))) - (add-to-list - 'debbugs-gnu-current-query (cons (intern key) val1)))) + (if (null phrase) + (add-to-list + 'debbugs-gnu-current-query (cons (intern key) val1)) + (add-to-list + 'debbugs-gnu-current-filter (cons 'pending val1))))) - ;; Client-side filters. ((member key '("date" "log_modified" "last_modified" "found_date" "fixed_date" "unarchived")) (setq val1 @@ -466,12 +477,13 @@ marked as \"client-side filter\"." 'debbugs-gnu-current-query 'debbugs-gnu-current-filter) (cons (intern key) (cons val1 val2))))) + ;; "subject", "done", "forwarded", "msgid", "summary". ((not (zerop (length key))) (setq val1 (funcall (if phrase 'read-string 'read-regexp) - (format "Enter %s%s" - key (if phrase ": " " (client-side filter)")))) + (format "Enter %s%s: " + key (if phrase "" " (client-side filter)")))) (when (not (zerop (length val1))) (add-to-list (if phrase @@ -678,8 +690,11 @@ are taken from the cache instead." 'debbugs-gnu-done) ((member "pending" (cdr (assq 'keywords status))) 'debbugs-gnu-pending) - ((= (cdr (assq 'date status)) - (cdr (assq 'log_modified status))) + ;; For some new bugs `date' and `log_modified' may + ;; differ in 1 second. + ((< (abs (- (cdr (assq 'date status)) + (cdr (assq 'log_modified status)))) + 3) 'debbugs-gnu-new) ((< (- (float-time) (cdr (assq 'log_modified status)))