[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/debbugs b051b97 196/311: Simplify debbugs-org.el
From: |
Stefan Monnier |
Subject: |
[elpa] externals/debbugs b051b97 196/311: Simplify debbugs-org.el |
Date: |
Sun, 29 Nov 2020 18:42:10 -0500 (EST) |
branch: externals/debbugs
commit b051b976fe018299768638def0523e9ed891cbee
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>
Simplify debbugs-org.el
* packages/debbugs/debbugs-org.el (debbugs-org-search)
(debbugs-org-patches, debbugs-org, debbugs-org-bugs):
Call `debuubugs-gnu-*' counterparts directly.
---
debbugs-org.el | 137 ++++++++-------------------------------------------------
1 file changed, 18 insertions(+), 119 deletions(-)
diff --git a/debbugs-org.el b/debbugs-org.el
index 71adf1d..c413d11 100644
--- a/debbugs-org.el
+++ b/debbugs-org.el
@@ -134,125 +134,28 @@ This could be a temporary buffer, or a buffer linked
with a file.")
Search arguments are requested interactively. The \"search
phrase\" is used for full text search in the bugs database.
Further key-value pairs are requested until an empty key is
-returned."
+returned. If a key cannot be queried by a SOAP request, it is
+marked as \"client-side filter\"."
(interactive)
-
- (unwind-protect
- ;; Check for the phrase.
- (let ((phrase (read-string debbugs-gnu-phrase-prompt))
- key val1 severities packages)
-
- (add-to-list 'debbugs-gnu-current-query (cons 'phrase phrase))
-
- ;; The other queries.
- (catch :finished
- (while t
- (setq key (completing-read
- "Enter attribute: "
- '("severity" "package" "tags" "submitter" "author"
- "subject" "status")
- nil t))
- (cond
- ;; Server-side queries.
- ((equal key "severity")
- (setq
- severities
- (completing-read-multiple
- "Enter severities: " debbugs-gnu-all-severities nil t
- (mapconcat 'identity debbugs-gnu-default-severities ","))))
-
- ((equal key "package")
- (setq
- packages
- (completing-read-multiple
- "Enter packages: " debbugs-gnu-all-packages nil t
- (mapconcat 'identity debbugs-gnu-default-packages ","))))
-
- ((member key '("tags" "subject"))
- (setq val1 (read-string (format "Enter %s: " key)))
- (when (not (zerop (length val1)))
- (add-to-list
- 'debbugs-gnu-current-query (cons (intern key) val1))))
-
- ((member key '("submitter" "author"))
- (when (equal key "author") (setq key "@author"))
- (setq val1 (read-string "Enter email address: "))
- (when (not (zerop (length val1)))
- (add-to-list
- 'debbugs-gnu-current-query (cons (intern key) 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))))
-
- ;; The End.
- (t (throw :finished nil)))))
-
- ;; Do the search.
- (debbugs-org severities packages))))
+ (cl-letf (((symbol-function 'debbugs-gnu-show-reports)
+ #'debbugs-org-show-reports))
+ (call-interactively 'debbugs-gnu-search)))
;;;###autoload
(defun debbugs-org-patches ()
"List the bug reports that have been marked as containing a patch."
(interactive)
- (debbugs-org nil debbugs-gnu-default-packages nil nil "patch"))
+ (cl-letf (((symbol-function 'debbugs-gnu-show-reports)
+ #'debbugs-org-show-reports))
+ (call-interactively 'debbugs-gnu-patches)))
;;;###autoload
-(defun debbugs-org (severities &optional packages archivedp suppress tags)
+(defun debbugs-org ()
"List all outstanding bugs."
- (interactive
- (let (severities archivedp)
- (list
- (setq severities
- (completing-read-multiple
- "Severities: " debbugs-gnu-all-severities nil t
- (mapconcat 'identity debbugs-gnu-default-severities ",")))
- ;; The next parameters are asked only when there is a prefix.
- (if current-prefix-arg
- (completing-read-multiple
- "Packages: " debbugs-gnu-all-packages nil t
- (mapconcat 'identity debbugs-gnu-default-packages ","))
- debbugs-gnu-default-packages)
- (when current-prefix-arg
- (setq archivedp (y-or-n-p "Show archived bugs?")))
- (when (and current-prefix-arg (not archivedp))
- (y-or-n-p "Suppress unwanted bugs?"))
- ;; This one must be asked for severity "tagged".
- (when (member "tagged" severities)
- (split-string (read-string "User tag(s): ") "," t)))))
-
- ;; Initialize variables.
- (when (and (file-exists-p debbugs-gnu-persistency-file)
- (not debbugs-gnu-local-tags))
- (with-temp-buffer
- (insert-file-contents debbugs-gnu-persistency-file)
- (eval (read (current-buffer)))))
-
- ;; Add queries.
- (dolist (severity (if (consp severities) severities (list severities)))
- (when (not (zerop (length severity)))
- (add-to-list 'debbugs-gnu-current-query (cons 'severity severity))))
- (dolist (package (if (consp packages) packages (list packages)))
- (when (not (zerop (length package)))
- (add-to-list 'debbugs-gnu-current-query (cons 'package package))))
- (when archivedp
- (add-to-list 'debbugs-gnu-current-query '(archive . "1")))
- (when suppress
- (add-to-list 'debbugs-gnu-current-query '(status . "open"))
- (add-to-list 'debbugs-gnu-current-query '(status . "forwarded")))
- (dolist (tag (if (consp tags) tags (list tags)))
- (when (not (zerop (length tag)))
- (add-to-list 'debbugs-gnu-current-query (cons 'tag tag))))
-
- ;; Show result.
- (debbugs-org-show-reports)
-
- ;; Reset query.
- (setq debbugs-gnu-current-query nil))
+ (interactive)
+ (cl-letf (((symbol-function 'debbugs-gnu-show-reports)
+ #'debbugs-org-show-reports))
+ (call-interactively 'debbugs-gnu)))
(defun debbugs-org-show-reports ()
"Show bug reports as retrieved via `debbugs-gnu-current-query'."
@@ -411,19 +314,15 @@ the corresponding buffer (e.g. by closing Emacs)."
(debbugs-org-regenerate-status))
;;;###autoload
-(defun debbugs-org-bugs (&rest bugs)
+(defun debbugs-org-bugs ()
"List all BUGS, a list of bug numbers."
- (interactive
- (mapcar 'string-to-number
- (completing-read-multiple "Bug numbers: " nil 'natnump)))
- (dolist (elt bugs)
- (unless (natnump elt) (signal 'wrong-type-argument (list 'natnump elt))))
- (add-to-list 'debbugs-gnu-current-query (cons 'bugs bugs))
- (debbugs-org nil))
+ (interactive)
+ (cl-letf (((symbol-function 'debbugs-gnu-show-reports)
+ #'debbugs-org-show-reports))
+ (call-interactively 'debbugs-gnu-bugs)))
;; TODO
-;; - Refactor it in order to avoid code duplication with debbugs-gnu.el.
;; - Make headline customizable.
;; - Sort according to different TODO properties.
- [elpa] externals/debbugs e234767 259/311: Don't insert two Summary lines in the commit message, (continued)
- [elpa] externals/debbugs e234767 259/311: Don't insert two Summary lines in the commit message, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs dcb6956 262/311: * packages/debbugs/debbugs-ug.texi (Minor Mode): Show example of activation., Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs c916195 270/311: * debbugs-gnu.el (debbugs-gnu-phrase-prompt): Small fix in help-echo., Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 930b0dd 275/311: * packages/debbugs/debbugs-gnu.el (debbugs-gnu-rescan): New argument NOCACHE., Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 84c56ad 280/311: Debbugs code cleanup, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 9639e41 287/311: Release debbugs 0.22, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs e200440 299/311: Debbugs code cleanup, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 0a2dd7d 308/311: Fix debbugs-gnu Subject setting when used directly from Gnus, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 8e3045a 174/311: Allow reading debbugs from an offline cache, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs b82c4ec 199/311: Fix some quoting problems in doc strings, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs b051b97 196/311: Simplify debbugs-org.el,
Stefan Monnier <=
- [elpa] externals/debbugs edb8081 205/311: Minor fixes for debbugs control messages, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs facae1d 217/311: Release debbugs 0.12, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 14ad2e0 210/311: Improve debbugs sorting., Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 3ceed8f 212/311: Add the pseudo-package "test" to `debbugs-gnu-default-packages', Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs db4eaa3 236/311: Add 'Mail Command Index' reference in debbugs manual, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 21686da 240/311: Fix previous change for version-less commands, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 32ded42 246/311: Automate commit -> debbugs workflow (Bug#35362), Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 104900b 261/311: Use more faces for gradually staler bugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 21dd446 285/311: Fix bug#38551 in debbugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 3e212ef 286/311: Bump the Emacs version number, Stefan Monnier, 2020/11/29