[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/debbugs c3ec95a 282/311: Implement debbugs-gnu-select-c
From: |
Stefan Monnier |
Subject: |
[elpa] externals/debbugs c3ec95a 282/311: Implement debbugs-gnu-select-current-bugs-with-rmail |
Date: |
Sun, 29 Nov 2020 18:42:30 -0500 (EST) |
branch: externals/debbugs
commit c3ec95a5183ded63647283b5beedd932ebe49f64
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>
Implement debbugs-gnu-select-current-bugs-with-rmail
* packages/debbugs/debbugs.el:
* packages/debbugs/debbugs-gnu.el:
* packages/debbugs/debbugs-org.el: Apply `string-join' where possible.
* packages/debbugs/debbugs-gnu.el
(debbugs-gnu-select-current-bugs-with-rmail):
New defun.
(debbugs-gnu-select-current-bugs): Call it.
(debbugs-gnu-select-current-bugs-with-gnus)
(debbugs-gnu-read-emacs-bug-with-rmail)
(debbugs-gnu-read-emacs-bug-with-gnus): Rearrange order.
---
debbugs-gnu.el | 192 ++++++++++++++++++++++++----------------
debbugs-org.el | 2 +-
debbugs-ug.info | 269 ++++++++++++++++++++++++++++----------------------------
debbugs.el | 12 +--
4 files changed, 255 insertions(+), 220 deletions(-)
diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index 25558d1..bbf2254 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -107,6 +107,7 @@
;; "/": Display only bugs matching a string
;; "R": Display only bugs blocking the current release
;; "w": Display all the currently selected bug reports
+;; "A": Show all messages from the currently shown bugs
;; When you visit the related bug messages in Gnus or Rmail, you could
;; also send or make control messages by keystroke "C" or "E" in the
@@ -490,14 +491,14 @@ depend on PHRASE being a string, or nil. See Info node
severities
(completing-read-multiple
"Enter severities: " debbugs-gnu-all-severities nil t
- (mapconcat #'identity debbugs-gnu-default-severities ","))))
+ (string-join 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 ","))))
+ (string-join debbugs-gnu-default-packages ","))))
((equal key "archive")
;; We simplify, by assuming just archived bugs are requested.
@@ -633,12 +634,12 @@ Shall be bound in `debbugs-org-*' functions.")
(setq severities
(completing-read-multiple
"Severities: " debbugs-gnu-all-severities nil t
- (mapconcat #'identity debbugs-gnu-default-severities ",")))
+ (string-join 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 ","))
+ (string-join debbugs-gnu-default-packages ","))
debbugs-gnu-default-packages)
(when current-prefix-arg
(setq archivedp (y-or-n-p "Show archived bugs?")))
@@ -812,8 +813,8 @@ are taken from the cache instead."
(setq words (append (mapcar #'number-to-string merged) words)))
;; `words' could contain the same word twice, for example
;; "fixed" from `keywords' and `pending'.
- (setq words (mapconcat
- #'identity (cl-delete-duplicates words :test #'equal) ","))
+ (setq words
+ (string-join (cl-delete-duplicates words :test #'equal) ","))
(when (or (not merged)
(not (let ((found nil))
(dolist (id (if (listp merged)
@@ -1376,39 +1377,6 @@ interest to you."
(set-buffer-modified-p nil)
(special-mode))
-(defun debbugs-gnu-read-emacs-bug-with-rmail (id status merged)
- "Read email exchange for debbugs bug ID.
-STATUS is the bug's status list.
-MERGED is the list of bugs merged with this one."
- (let* ((mbox-dir (make-temp-file "debbugs" t))
- (mbox-fname (format "%s/bug_%d.mbox" mbox-dir id)))
- (debbugs-get-mbox id 'mboxmaint mbox-fname)
- (rmail mbox-fname)
- ;; Download messages of all the merged bug reports and append them
- ;; to the mailbox of the requested bug.
- (when merged
- (dolist (bugno merged)
- (let ((fn (make-temp-file "url")))
- (debbugs-get-mbox bugno 'mboxmaint fn)
- (rmail-get-new-mail fn)
- (delete-file fn)
- ;; Remove the 'unseen' attribute from all the messages we've
- ;; just read, so that all of them appear in the summary with
- ;; the same face.
- (while (< rmail-current-message rmail-total-messages)
- (rmail-show-message (1+ rmail-current-message))))))
- (set (make-local-variable 'debbugs-gnu-bug-number) id)
- (set (make-local-variable 'debbugs-gnu-subject)
- (format "Re: bug#%d: %s" id (alist-get 'subject status)))
- (rmail-summary)
- (define-key rmail-summary-mode-map "C" #'debbugs-gnu-send-control-message)
- (define-key rmail-summary-mode-map "E" #'debbugs-gnu-make-control-message)
- (set-window-text-height nil 10)
- (other-window 1)
- (define-key rmail-mode-map "C" #'debbugs-gnu-send-control-message)
- (define-key rmail-mode-map "E" #'debbugs-gnu-make-control-message)
- (rmail-show-message 1)))
-
(defconst debbugs-gnu-select-bugs-limit-max 50
"Absolute maximum for `debbugs-gnu-select-bugs-limit'.")
@@ -1434,51 +1402,73 @@ avoid overloading the server."
"Retrieve the mailboxes for all currently shown bugs.
Limited by `debbugs-gnu-select-bugs-limit'."
(interactive)
- (unless (eq debbugs-gnu-mail-backend 'gnus)
- (error "This function only works with Gnus."))
- (debbugs-gnu-select-current-bugs-with-gnus))
-
-(defun debbugs-gnu-select-current-bugs-with-gnus ()
- "Create a Gnus group of the messages from the currently shown bugs."
(save-excursion
- (require 'gnus-group)
- (let ((mbox-url
- (replace-regexp-in-string
- ";mboxstat=yes" ""
- (alist-get 'emacs gnus-bug-group-download-format-alist)
- nil t))
- ids)
+ (let (ids)
(goto-char (point-min))
(dotimes (_ debbugs-gnu-select-bugs-limit)
- (push (debbugs-gnu-current-id t) ids)
- (push (alist-get 'mergedwith (debbugs-gnu-current-status)) ids)
- (forward-line 1))
+ (push (debbugs-gnu-current-id t) ids)
+ (setq ids
+ (append (alist-get 'mergedwith (debbugs-gnu-current-status)) ids))
+ (forward-line 1))
(setq ids (delq nil (nreverse ids)))
- (gnus-read-ephemeral-bug-group ids mbox-url)
- (debbugs-gnu-summary-mode 1))))
+ (cond
+ ((not ids)
+ (message "No bug reports in the current buffer"))
+ ((eq debbugs-gnu-mail-backend 'rmail)
+ (debbugs-gnu-select-current-bugs-with-rmail ids))
+ ((eq debbugs-gnu-mail-backend 'gnus)
+ (debbugs-gnu-select-current-bugs-with-gnus ids))
+ (t (error "No valid mail backend specified"))))))
+
+(defun debbugs-gnu-select-current-bugs-with-rmail (ids)
+ "Read email exchange for debbugs IDS.
+IDS is the list of bug IDs."
+ (let* ((mbox-dir (make-temp-file "debbugs" t))
+ (mbox-fname
+ (format
+ "%s/bug_%s.mbox" mbox-dir (mapconcat #'number-to-string ids ","))))
+ (debbugs-get-mbox (car ids) 'mboxmaint mbox-fname)
+ (rmail mbox-fname)
+ (dolist (bugno (cdr ids))
+ (let ((fn (make-temp-file "url")))
+ (debbugs-get-mbox bugno 'mboxmaint fn)
+ (rmail-get-new-mail fn)
+ (delete-file fn)
+ ;; Remove the 'unseen' attribute from all the messages we've
+ ;; just read, so that all of them appear in the summary with
+ ;; the same face.
+ (while (< rmail-current-message rmail-total-messages)
+ (rmail-show-message (1+ rmail-current-message)))))
+ ;; (set (make-local-variable 'debbugs-gnu-bug-number) id)
+ ;; (set (make-local-variable 'debbugs-gnu-subject)
+ ;; (format "Re: bug#%d: %s" id (alist-get 'subject status)))
+ (rmail-summary)
+ (define-key rmail-summary-mode-map "C" #'debbugs-gnu-send-control-message)
+ (define-key rmail-summary-mode-map "E" #'debbugs-gnu-make-control-message)
+ (set-window-text-height nil 10)
+ (other-window 1)
+ (define-key rmail-mode-map "C" #'debbugs-gnu-send-control-message)
+ (define-key rmail-mode-map "E" #'debbugs-gnu-make-control-message)
+ (rmail-show-message 1)))
(defcustom debbugs-gnu-lars-workflow nil
"If non-nil, set some Gnus vars as preferred by Lars."
:type 'boolean
:version "27.1")
-(defun debbugs-gnu-read-emacs-bug-with-gnus (id status merged)
- "Read email exchange for debbugs bug ID.
-STATUS is the bug's status list.
-MERGED is the list of bugs merged with this one."
- (require 'gnus-dup)
+(defun debbugs-gnu-select-current-bugs-with-gnus (ids)
+ "Create a Gnus group of the messages from the currently shown bugs.
+IDS is the list of bug IDs."
+ (require 'gnus-group)
(when debbugs-gnu-lars-workflow
(setq gnus-suppress-duplicates t
gnus-save-duplicate-list t))
- ;; Use Gnus.
- (gnus-read-ephemeral-emacs-bug-group
- (cons id (if (listp merged) merged (list merged)))
- (cons (current-buffer)
- (current-window-configuration)))
- (with-current-buffer (window-buffer (selected-window))
- (set (make-local-variable 'debbugs-gnu-bug-number) id)
- (set (make-local-variable 'debbugs-gnu-subject)
- (format "Re: bug#%d: %s" id (alist-get 'subject status)))
+ (let ((mbox-url
+ (replace-regexp-in-string
+ ";mboxstat=yes" ""
+ (alist-get 'emacs gnus-bug-group-download-format-alist)
+ nil t)))
+ (gnus-read-ephemeral-bug-group ids mbox-url)
(debbugs-gnu-summary-mode 1)))
(defun debbugs-gnu-select-report ()
@@ -1499,6 +1489,58 @@ MERGED is the list of bugs merged with this one."
(debbugs-gnu-read-emacs-bug-with-gnus id status merged))
(t (error "No valid mail backend specified")))))
+(defun debbugs-gnu-read-emacs-bug-with-rmail (id status merged)
+ "Read email exchange for debbugs bug ID.
+STATUS is the bug's status list.
+MERGED is the list of bugs merged with this one."
+ (let* ((mbox-dir (make-temp-file "debbugs" t))
+ (mbox-fname (format "%s/bug_%d.mbox" mbox-dir id)))
+ (debbugs-get-mbox id 'mboxmaint mbox-fname)
+ (rmail mbox-fname)
+ ;; Download messages of all the merged bug reports and append them
+ ;; to the mailbox of the requested bug.
+ (when merged
+ (dolist (bugno merged)
+ (let ((fn (make-temp-file "url")))
+ (debbugs-get-mbox bugno 'mboxmaint fn)
+ (rmail-get-new-mail fn)
+ (delete-file fn)
+ ;; Remove the 'unseen' attribute from all the messages we've
+ ;; just read, so that all of them appear in the summary with
+ ;; the same face.
+ (while (< rmail-current-message rmail-total-messages)
+ (rmail-show-message (1+ rmail-current-message))))))
+ (set (make-local-variable 'debbugs-gnu-bug-number) id)
+ (set (make-local-variable 'debbugs-gnu-subject)
+ (format "Re: bug#%d: %s" id (alist-get 'subject status)))
+ (rmail-summary)
+ (define-key rmail-summary-mode-map "C" #'debbugs-gnu-send-control-message)
+ (define-key rmail-summary-mode-map "E" #'debbugs-gnu-make-control-message)
+ (set-window-text-height nil 10)
+ (other-window 1)
+ (define-key rmail-mode-map "C" #'debbugs-gnu-send-control-message)
+ (define-key rmail-mode-map "E" #'debbugs-gnu-make-control-message)
+ (rmail-show-message 1)))
+
+(defun debbugs-gnu-read-emacs-bug-with-gnus (id status merged)
+ "Read email exchange for debbugs bug ID.
+STATUS is the bug's status list.
+MERGED is the list of bugs merged with this one."
+ (require 'gnus-dup)
+ (when debbugs-gnu-lars-workflow
+ (setq gnus-suppress-duplicates t
+ gnus-save-duplicate-list t))
+ ;; Use Gnus.
+ (gnus-read-ephemeral-emacs-bug-group
+ (cons id (if (listp merged) merged (list merged)))
+ (cons (current-buffer)
+ (current-window-configuration)))
+ (with-current-buffer (window-buffer (selected-window))
+ (set (make-local-variable 'debbugs-gnu-bug-number) id)
+ (set (make-local-variable 'debbugs-gnu-subject)
+ (format "Re: bug#%d: %s" id (alist-get 'subject status)))
+ (debbugs-gnu-summary-mode 1)))
+
(defvar debbugs-gnu-summary-mode-map
(let ((map (make-sparse-keymap)))
(define-key map "C" #'debbugs-gnu-send-control-message)
@@ -1778,8 +1820,7 @@ removed instead."
((member message '("merge" "forcemerge"))
(format
"%s %d %s\n" message bugid
- (mapconcat
- #'identity
+ (string-join
(debbugs-gnu-expand-bug-number-list
(completing-read-multiple
(format "%s with bug(s) #: " (capitalize message))
@@ -1788,8 +1829,7 @@ removed instead."
((member message '("block" "unblock"))
(format
"%s %d by %s\n" message bugid
- (mapconcat
- #'identity
+ (string-join
(debbugs-gnu-expand-bug-number-list
(completing-read-multiple
(format "%s with bug(s) #: " (capitalize message))
@@ -2144,7 +2184,7 @@ successfully sent."
(completing-read-multiple
"Package name(s) or email address: "
(append debbugs-gnu-all-packages (list user-mail-address)) nil nil
- (mapconcat #'identity debbugs-gnu-default-packages ","))
+ (string-join debbugs-gnu-default-packages ","))
debbugs-gnu-default-packages))
(unwind-protect
diff --git a/debbugs-org.el b/debbugs-org.el
index 99defe1..c4c081c 100644
--- a/debbugs-org.el
+++ b/debbugs-org.el
@@ -237,7 +237,7 @@ marked as \"client-side filter\"."
"* %s [#%s] %s %s\n"
(if done "DONE" "TODO")
priority subject
- (if tags (mapconcat #'identity (append '("") tags '("")) ":") "")))
+ (if tags (string-join (append '("") tags '("")) ":") "")))
;; Submitted.
(when date
diff --git a/debbugs-ug.info b/debbugs-ug.info
index 2629d91..c590ecc 100644
--- a/debbugs-ug.info
+++ b/debbugs-ug.info
@@ -96,37 +96,36 @@ predefined filter.
the constant 'debbugs-gnu-all-severities'). If the list is
empty, there is no filtering with respect to severities. The
keyword '"tagged"', which is also possible, is not a severity in
- the GNU Debbugs server but allows to restrict the result to bugs
+ the GNU Debbugs server but allows restricting the result to bugs
with a given user tag.
- PACKAGES, also a list of strings, point to the defined software
- packages on the GNU Debbugs server which shall be taken into
+ PACKAGES, also a list of strings, points to the defined software
+ packages on the GNU Debbugs server which should be taken into
account. The existing package names are compiled into the
constant 'debbugs-gnu-all-packages'.
- ARCHIVEDP, if non-'nil', extends the result also on archived bugs
- on the GNU Debbugs server.
+ ARCHIVEDP, if non-'nil', extends the retrieval to also apply to
+ archived bugs on the GNU Debbugs server.
- SUPPRESS shall also distinct between 'nil' and non-'nil'. When
- non-'nil', closed bugs are suppressed from being retrieved from
- the Debbugs server. Which bugs are regarded as suppressed is
- configured in the user option 'debbugs-gnu-suppress-bugs'. Per
- default, bugs marked as '"done"' are suppressed from being
- retrieved.
+ When SUPPRESS is non-'nil', closed bugs are suppressed from being
+ retrieved from the Debbugs server. Which bugs are regarded as
+ suppressed is configured via the user option
+ 'debbugs-gnu-suppress-bugs'. By default bugs marked as '"done"'
+ are suppressed from being retrieved.
When SEVERITIES contains the severity '"tagged"', TAGS is
- consulted in order to restrict the result on bugs which are
+ consulted in order to restrict the result to bugs which are
tagged with one of the strings of the list TAGS. This list can
- also be empty; in this case locally tagged bugs are included into
+ also be empty; in this case locally tagged bugs are included in
the results.
- Called interactively, the commands require just the SEVERITIES
- and the TAGS (if SEVERITIES includes '"tagged"'). In order to
- provide the other arguments interactively, the commands must be
- called with a prefix, like 'C-u M-x debbugs-gnu'. In the
- minibuffer, lists must be entered comma-separated.
+ When called interactively, the commands require just the
+ SEVERITIES and the TAGS (if SEVERITIES includes '"tagged"'). In
+ order to provide the other arguments interactively, the commands
+ must be called with a prefix, like 'C-u M-x debbugs-gnu'. In the
+ minibuffer, lists must be entered separated by commas.
- Default values for interactive use could be configured in the
+ Default values for interactive use can be configured with the
user options 'debbugs-gnu-default-severities' and
'debbugs-gnu-default-packages'.
@@ -137,15 +136,15 @@ predefined filter.
The commands 'debbugs-gnu-bugs' and 'debbugs-org-bugs' show bugs
specified by their bug number. Interactively, the bug numbers
- must be entered as comma-separated list of bugs or bug ranges.
+ must be entered as a comma-separated list of bugs or bug ranges.
- A bug range has either the form '12345-21345' or '-123'. In the
- former case, all bugs from 12345 until 21345 are presented, and
- in the latter case the last 123 bugs are shown, counting from the
+ A bug range has the form '12345-21345' or '-123'. In the former
+ case, all bugs from 12345 until 21345 are presented, and in the
+ latter case the last 123 bugs are shown, counting from the
highest bug number in the repository.
- A default value for interactive use could be configured in the
- user option 'debbugs-gnu-default-bug-number-list'.
+ A default value for interactive use can be configured in the user
+ option 'debbugs-gnu-default-bug-number-list'.
*note Presenting Bugs:: for the presentation of the results.
@@ -155,7 +154,7 @@ predefined filter.
The commands 'debbugs-gnu-patches' and 'debbugs-org-patches' show
all unarchived bugs of the packages declared in
'debbugs-gnu-default-packages', and tagged with '"patch"'. This
- is useful for bug triages.
+ is useful for bug triaging.
*note Presenting Bugs:: for the presentation of the results.
@@ -163,15 +162,15 @@ predefined filter.
-- Command: debbugs-org-tagged
The commands 'debbugs-gnu-tagged' and 'debbugs-org-tagged' show
- all bugs tagged locally. This list is useful for keeping bugs
- you are currently working on.
+ all bugs tagged locally. This list is useful for keeping track
+ of bugs you are currently working on.
*note Presenting Bugs:: for the presentation of the results.
-- User Option: debbugs-show-progress
- If this user option is non-'nil', there is a progress report when
- retrieving bugs.
+ If this user option is non-'nil', a progress report is shown when
+ retrieving bugs, defaults to t.
File: debbugs-ug.info, Node: Searching Bugs, Next: Presenting Bugs, Prev:
Retrieving Bugs, Up: Top
@@ -179,19 +178,19 @@ File: debbugs-ug.info, Node: Searching Bugs, Next:
Presenting Bugs, Prev: Ret
2 Searching in the Debbugs Database
***********************************
-The GNU Debbugs server allows text search in the database in the
-messages submitted to the bugs. It uses a HyperEstraier based search
-engine
+The GNU Debbugs server allows searching the text of the messages
+submitted to the bugs in the database. It uses a HyperEstraier based
+search engine
(https://fallabs.com/hyperestraier/uguide-en.html#searchcond)(1).
The search engine uses an index over the bug database. This index
-is refreshed once a day only; search hits do not include recent
-changes of the same day.
+is refreshed daily; search hits may not include recent changes made
+the same day.
-- Command: debbugs-gnu-search
-- Command: debbugs-org-search
- These both commands are completely interactive. They ask for a
+ Both these commands are completely interactive. They ask for a
'"search phrase"' for the text search. It is just a string which
contains the words to be searched for followed by each other. If
there are operators like "AND", "ANDNOT" and "OR" between the
@@ -209,13 +208,13 @@ changes of the same day.
above.
While the words to be searched for are case insensitive, the
- operators must be specified case sensitive.
+ operators must be specified in upper case.
While the search for the phrase is performed only in the bodies
of the messages belonging to a bug report, it is also possible to
- discriminate the search to further bug attributes. The commands
- ask for such key-value pairs, until an empty key is returned.
- Possible attributes are
+ restrict the search using further bug attributes. The commands
+ ask for such attribute-value pairs, until an empty attribute is
+ returned. Possible attributes are
'severity'
A comma-separated list of bug severities, *Note Retrieving
@@ -232,11 +231,11 @@ changes of the same day.
The email address of a message originator.
'date'
- A time period the bug has been in which the bug has been
- submitted or modified.
+ A time period during which the bug has been submitted or
+ modified.
'subject'
- Word(s) the subject of the bug report contains.
+ Word(s) contained in the subject of the bug report.
'status'
The status of the bug report. Valid values are "open",
@@ -244,15 +243,15 @@ changes of the same day.
It is also possible to apply these commands with an empty search
phrase. In this case, the GNU Debbugs server is searched only
- for bugs which fulfill the given attributes. The attributes to
- be applied are the same as already described, plus
+ for bugs which match the given attributes. The attributes to be
+ applied are the same as already described, plus
'archive'
Whether archived bugs shall be searched (no value to be
entered).
'src'
- Bugs which belong to a given source, if that attribute has
+ Bugs which belong to a given source, if that attribute is
set.
'tag'
@@ -275,10 +274,10 @@ changes of the same day.
bug fix.
'unarchived'
- The date the bug has been unarchived, if ever.
+ The date the bug was unarchived, if ever.
'done'
- The email address of the worker who has closed the bug (if
+ The email address of the worker who closed the bug (if
done).
'forwarded'
@@ -290,13 +289,13 @@ changes of the same day.
'summary'
The summary of the bug report.
- Not all of these attributes could be queried on the GNU Debbugs
+ Not all of these attributes can be queried on the GNU Debbugs
server via the Debbugs/SOAP backend. In this case, the results
- of a query are discriminated on the client side, which is
- indicated by the string "(client-side filter)" in the minibuffer
- after the attribute name. Note, that client side filters perform
- badly, because they could be applied only after all bugs have
- been downloaded.
+ of a query are filtered on the client side, which is indicated by
+ the string "(client-side filter)" in the minibuffer after the
+ attribute name. Note, that client side filters perform badly,
+ because they can be applied only after all bugs have been
+ downloaded.
These commands show also a progress report when
'debbugs-show-progress' is non-'nil'.
@@ -316,8 +315,8 @@ File: debbugs-ug.info, Node: Presenting Bugs, Next: Minor
Mode, Prev: Searchi
*****************
The commands described in the previous chapters generate (a) report
-buffer(s) applicable for navigation. 'debbugs-gnu-*' return a
-tabulated list, and 'debbugs-org-*' return a list of TODO items in
+buffer(s) applicable for navigation. 'debbugs-gnu-*' displays a
+tabulated list, and 'debbugs-org-*' displays a list of TODO items in
'org-mode'.
* Menu:
@@ -334,27 +333,27 @@ File: debbugs-ug.info, Node: Tabulated Lists, Next:
TODO Items, Up: Presentin
3.1 Tabulated Lists
===================
-A tabulated list of bug reports consist of four columns for every bug
-entry: 'Id' (the bug number), 'State' (some bug attributes),
+A tabulated list of bug reports consisting of four columns for every
+bug entry: 'Id' (the bug number), 'State' (some bug attributes),
'Submitter' (the name of the bug submitter), and 'Title' (the bug
-subject). Per default the bugs are sorted descending by 'Id'; this
-could be changed by clicking in the headline.
+subject). By default the bugs are sorted descending by 'Id'; this can
+be changed by clicking in the headline.
- Different foreground colours present further information on the bug
-report. If the bug number uses a red colour ('debbugs-gnu-tagged'),
-the bug has been tagged locally. The same face is used to mark bugs
-in the submitter or title column, when the bug has been reported / is
-maintained by the user.
+ Different foreground colors represent further information on the
+bug report. If the bug number uses a red color
+('debbugs-gnu-tagged'), the bug has been tagged locally. The same
+face is used to mark bugs in the submitter or title column, when the
+bug has been reported / is maintained by the user.
- The bug state could appear in different colours: red
-('debbugs-gnu-new', nobody has answered yet to this bug), ForestGreen
+ The bug state can appear in different colors: red
+('debbugs-gnu-new', nobody has answered this bug yet), ForestGreen
('debbugs-gnu-handled', the bug has been modified recently),
MidnightBlue ('debbugs-gnu-pending', the bug is pending), orange
('debbugs-gnu-stale', the bug has not been touched for a while), and
DarkGrey ('debbugs-gnu-done', the bug is closed). Archived bugs are
shown with inverse face ('debbugs-gnu-archived').
- The bug report buffers have enabled the minor 'debbugs-gnu-mode'.
+ The minor mode 'debbugs-gnu-mode' is active in bug report buffers.
This enables the following key strokes:
'<RET>' 'debbugs-gnu-select-report'
@@ -409,14 +408,14 @@ This enables the following key strokes:
*note Control Messages::.
'E' 'debbugs-gnu-make-control-message'
- Make (but don't yet send) a control message for this
- bug, *note Control Messages::.
+ Make (but don't send) a control message for this bug,
+ *note Control Messages::.
Tagging a bug locally via 't' is an efficient way to keep bugs
visible you are working on. The command 'debbugs-gnu-tagged' shows
all locally tagged bugs in a list.
- The user option 'debbugs-gnu-suppress-closed' controls, whether
+ The user option 'debbugs-gnu-suppress-closed' controls whether
closed bugs are shown in the initial list.
The user option 'debbugs-gnu-mail-backend' controls the
@@ -438,7 +437,7 @@ navigation in 'org-mode'.
Bug severities are mapped onto org severities, see
'debbugs-org-severity-priority'.
- The bug report buffers have enabled the minor 'debbugs-org-mode'.
+ The minor mode 'debbugs-org-mode' is active in bug report buffers.
This enables the following key strokes:
'<TAB>' 'org-cycle'
@@ -454,7 +453,7 @@ This enables the following key strokes:
Send a control message for this bug, *note Control Messages::.
'C-c # E' 'debbugs-gnu-make-control-message'
- Make (but don't yet send) a control message for this bug, *note
Control Messages::.
+ Make (but don't send) a control message for this bug, *note
Control Messages::.
When the bug attributes are shown by 'org-cycle', there is a link
'Messages' which opens the messages for that bug. The user options
@@ -542,7 +541,7 @@ meaning of the control messages, *Note Mail Command Index::.
'merge'
"forcemerge|merge 12345 54321"
- The second bug number is read interactively. It could be also a
+ The second bug number is read interactively. It can be also a
list of comma-separated bug numbers.
'invalid'
@@ -625,8 +624,8 @@ command 'C-u M-m'. If the predefined directory does not
point to an
existing path, it is read from the minibuffer.
A further 'M-m' in the corresponding '*vc-diff*' buffer opens the
-modified file. Here you can apply 'M-m' the next time. This creates
-a ChangeLog entry with all needed information. A final 'M-m' in the
+modified file. Here you can apply 'M-m' again. This creates a
+ChangeLog entry with all needed information. A final 'M-m' in the
'ChangeLog' buffer commits the patch via '*vc-log*'.
@@ -716,8 +715,8 @@ or <https://bugs.gnu.org/54321> will be shown in a bug
report buffer,
when 'debbugs-browse-mode' is enabled. See user option
'debbugs-browse-url-regexp' for the syntax of supported URLs.
- In order to enable it globally, you might add the following forms
-to your '~/.emacs':
+ In order to enable it globally, you can add the following forms to
+your '~/.emacs':
(add-hook 'bug-reference-mode-hook 'debbugs-browse-mode)
(add-hook 'bug-reference-prog-mode-hook 'debbugs-browse-mode)
@@ -733,16 +732,16 @@ Command Index
* debbugs-browse-mode: Minor Mode. (line 12)
* debbugs-gnu: Retrieving Bugs. (line 19)
-* debbugs-gnu-bugs: Retrieving Bugs. (line 73)
-* debbugs-gnu-patches: Retrieving Bugs. (line 90)
+* debbugs-gnu-bugs: Retrieving Bugs. (line 72)
+* debbugs-gnu-patches: Retrieving Bugs. (line 89)
* debbugs-gnu-pick-commits: Posting Patches. (line 16)
* debbugs-gnu-search: Searching Bugs. (line 15)
-* debbugs-gnu-tagged: Retrieving Bugs. (line 100)
+* debbugs-gnu-tagged: Retrieving Bugs. (line 99)
* debbugs-org: Retrieving Bugs. (line 21)
-* debbugs-org-bugs: Retrieving Bugs. (line 74)
-* debbugs-org-patches: Retrieving Bugs. (line 91)
+* debbugs-org-bugs: Retrieving Bugs. (line 73)
+* debbugs-org-patches: Retrieving Bugs. (line 90)
* debbugs-org-search: Searching Bugs. (line 16)
-* debbugs-org-tagged: Retrieving Bugs. (line 101)
+* debbugs-org-tagged: Retrieving Bugs. (line 100)
File: debbugs-ug.info, Node: Variable Index, Next: Key Index, Prev: Command
Index, Up: Top
@@ -759,9 +758,9 @@ Variable Index
* debbugs-gnu-branch-directory: Applying Patches. (line 18)
* debbugs-gnu-commit-description-format: Customizing debbugs-gnu-pick-commits.
(line 6)
-* debbugs-gnu-default-bug-number-list: Retrieving Bugs. (line 85)
-* debbugs-gnu-default-packages: Retrieving Bugs. (line 67)
-* debbugs-gnu-default-severities: Retrieving Bugs. (line 67)
+* debbugs-gnu-default-bug-number-list: Retrieving Bugs. (line 84)
+* debbugs-gnu-default-packages: Retrieving Bugs. (line 66)
+* debbugs-gnu-default-severities: Retrieving Bugs. (line 66)
* debbugs-gnu-default-suppress-bugs: Retrieving Bugs. (line 48)
* debbugs-gnu-git-remote-info-alist: Customizing debbugs-gnu-pick-commits.
(line 6)
@@ -771,7 +770,7 @@ Variable Index
* debbugs-gnu-suppress-closed: Tabulated Lists. (line 88)
* debbugs-gnu-trunk-directory: Applying Patches. (line 18)
* debbugs-org-severity-priority: TODO Items. (line 10)
-* debbugs-show-progress: Retrieving Bugs. (line 109)
+* debbugs-show-progress: Retrieving Bugs. (line 108)
File: debbugs-ug.info, Node: Key Index, Next: Mail Command Index, Prev:
Variable Index, Up: Top
@@ -1154,52 +1153,52 @@ Debbugs control mailserver commands
Tag Table:
Node: Top1097
Node: Retrieving Bugs2704
-Node: Searching Bugs7527
-Ref: Searching Bugs-Footnote-112077
-Ref: Searching Bugs-Footnote-212165
-Node: Presenting Bugs12256
-Node: Tabulated Lists12918
-Node: TODO Items17183
-Node: Control Messages18504
-Node: Applying Patches22021
-Node: Posting Patches23411
-Node: Customizing debbugs-gnu-pick-commits25896
-Node: Minor Mode26596
-Node: Command Index27872
-Node: Variable Index28874
-Node: Key Index30390
-Node: Mail Command Index32169
-Ref: Mail Command Index: reassign32322
-Ref: Mail Command Index: reopen33088
-Ref: Mail Command Index: found34242
-Ref: Mail Command Index: notfound35323
-Ref: Mail Command Index: fixed35732
-Ref: Mail Command Index: notfixed36178
-Ref: Mail Command Index: submitter36801
-Ref: Mail Command Index: forwarded37195
-Ref: Mail Command Index: notforwarded37813
-Ref: Mail Command Index: retitle38014
-Ref: Mail Command Index: severity38398
-Ref: Mail Command Index: clone38729
-Ref: Mail Command Index: merge39493
-Ref: Mail Command Index: forcemerge40880
-Ref: Mail Command Index: unmerge41324
-Ref: Mail Command Index: tags42027
-Ref: Mail Command Index: block43093
-Ref: Mail Command Index: unblock43130
-Ref: Mail Command Index: close43615
-Ref: Mail Command Index: package44265
-Ref: Mail Command Index: owner44877
-Ref: Mail Command Index: noowner45240
-Ref: Mail Command Index: archive45413
-Ref: Mail Command Index: unarchive45554
-Ref: Mail Command Index: #45847
-Ref: Mail Command Index: quit46107
-Ref: Mail Command Index: stop46114
-Ref: Mail Command Index: thank46121
-Ref: Mail Command Index: thanks46129
-Ref: Mail Command Index: thankyou46138
-Ref: Mail Command Index: thank you46149
-Ref: Mail Command Index: --46161
+Node: Searching Bugs7513
+Ref: Searching Bugs-Footnote-112044
+Ref: Searching Bugs-Footnote-212132
+Node: Presenting Bugs12223
+Node: Tabulated Lists12889
+Node: TODO Items17144
+Node: Control Messages18462
+Node: Applying Patches21977
+Node: Posting Patches23359
+Node: Customizing debbugs-gnu-pick-commits25844
+Node: Minor Mode26544
+Node: Command Index27818
+Node: Variable Index28820
+Node: Key Index30336
+Node: Mail Command Index32115
+Ref: Mail Command Index: reassign32268
+Ref: Mail Command Index: reopen33034
+Ref: Mail Command Index: found34188
+Ref: Mail Command Index: notfound35269
+Ref: Mail Command Index: fixed35678
+Ref: Mail Command Index: notfixed36124
+Ref: Mail Command Index: submitter36747
+Ref: Mail Command Index: forwarded37141
+Ref: Mail Command Index: notforwarded37759
+Ref: Mail Command Index: retitle37960
+Ref: Mail Command Index: severity38344
+Ref: Mail Command Index: clone38675
+Ref: Mail Command Index: merge39439
+Ref: Mail Command Index: forcemerge40826
+Ref: Mail Command Index: unmerge41270
+Ref: Mail Command Index: tags41973
+Ref: Mail Command Index: block43039
+Ref: Mail Command Index: unblock43076
+Ref: Mail Command Index: close43561
+Ref: Mail Command Index: package44211
+Ref: Mail Command Index: owner44823
+Ref: Mail Command Index: noowner45186
+Ref: Mail Command Index: archive45359
+Ref: Mail Command Index: unarchive45500
+Ref: Mail Command Index: #45793
+Ref: Mail Command Index: quit46053
+Ref: Mail Command Index: stop46060
+Ref: Mail Command Index: thank46067
+Ref: Mail Command Index: thanks46075
+Ref: Mail Command Index: thankyou46084
+Ref: Mail Command Index: thank you46095
+Ref: Mail Command Index: --46107
End Tag Table
diff --git a/debbugs.el b/debbugs.el
index 51b42c7..64fb366 100644
--- a/debbugs.el
+++ b/debbugs.el
@@ -33,7 +33,7 @@
;;; Code:
-;(setq soap-debug t message-log-max t)
+;(setq soap-debug t url-debug t message-log-max t)
(require 'soap-client)
(eval-when-compile (require 'cl-lib))
@@ -870,9 +870,7 @@ Examples:
(let ((x (pop elt)))
(unless (member x val)
(setq val (append val (list x))))))
- (setq vec
- (vconcat
- vec (list key (mapconcat #'identity val " "))))))
+ (setq vec (vconcat vec (list key (string-join val " "))))))
(:status
;; It shouldn't happen in a phrase condition.
@@ -889,8 +887,7 @@ Examples:
(unless (member x val)
(setq val (append val (list x))))))
(setq vec
- (vconcat
- vec (list key (mapconcat #'identity val " "))))))
+ (vconcat vec (list key (string-join val " "))))))
((:subject :package :tags :severity :@title)
;; It shouldn't happen in a phrase condition.
@@ -905,8 +902,7 @@ Examples:
(unless (member x val)
(setq val (append val (list x))))))
(setq vec
- (vconcat
- vec (list key (mapconcat #'identity val " "))))))
+ (vconcat vec (list key (string-join val " "))))))
((:date :@cdate)
;; It shouldn't happen in a phrase condition.
- [elpa] externals/debbugs 43b142a 305/311: Declare variables in debbugs-gnu.el, (continued)
- [elpa] externals/debbugs 43b142a 305/311: Declare variables in debbugs-gnu.el, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs f2be042 309/311: Fix typo in previous debbugs-gnu change, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 528825b 311/311: * .gitignore: New file, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 649b0c8 181/311: Get more info from patches in debbugs-gnu, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs ffe5b92 231/311: Fix previous patch, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 5179be4 222/311: Increase debbugs version to 0.14, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 4a24833 245/311: Fix previous change, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 743f65c 258/311: Allow applying patches selectively, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs ff6784a 273/311: Replace http:// by https:// in debbugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 36e5d9a 279/311: Add command to show mailboxes for all currently shown reports, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs c3ec95a 282/311: Implement debbugs-gnu-select-current-bugs-with-rmail,
Stefan Monnier <=
- [elpa] externals/debbugs 01c2322 283/311: Release debbugs 0.21, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 1563806 290/311: Release debbugs 0.23, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs dc88f7d 291/311: Autoload debbugs-browse-url., Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs cca9282 297/311: Make the debbugs display more compact so that you can read the titles, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 6bb1538 298/311: Add support for marking bugs as well, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 86a7788 220/311: Add "guix-patches" to debbugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 8aa30e4 227/311: Recognize bugs.gnu.org in debbugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 17af596 225/311: ; Update author email address in debbugs, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 7be84fa 248/311: ; Commit debbugs-ug.info, minor edits in debbugs-gnu.el, Stefan Monnier, 2020/11/29
- [elpa] externals/debbugs 5bb6e23 254/311: Release debbugs 0.19, Stefan Monnier, 2020/11/29