Subject: [bug#56987] [PATCH] added *my-open-bugs functions

From: Joshua Branson <[email-masked]>
Date: Sat, 1 Oct 2022 11:39:33 -0400

* debbugs-gnu.el: debbugs-gnu-my-open-bugs: new procedure.
* debbugs-org.el: debbugs-org-my-open-bugs: new procedure.
* debbugs-guix.el: debbugs-gnu-guix-search: new procedure.
* debugs-ug.texi: added documentation for *my-open-bugs procedures.

I did not actually compile the debbugs-ug.text, so it is possible that my 
documentation makes the info program impossible to compile.  

Also sorry for the massive delay it has been in sending this in.

Thanks,

Joshua   
---
 debbugs-gnu.el  |  9 +++++++++
 debbugs-guix.el | 42 ++++++++++++++++++++++++++++++++++++++++++
 debbugs-org.el  |  8 ++++++++
 debbugs-ug.texi | 13 ++++++++++++-
 4 files changed, 71 insertions(+), 1 deletion(-)
 create mode 100644 debbugs-guix.el

diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index e6629156c1..29257cb779 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -827,6 +827,13 @@ Shall be bound in `debbugs-org-*' functions.")
     (when (called-interactively-p 'interactive)
       (message "Query finished"))))
 
+;;;###autoload
+(defun debbugs-gnu-my-open-bugs ()
+  "Retrieve the open bugs, that you submitted.  This function assumes the variable
+'user-mail-address' is defined."
+  (interactive)
+  (apply #'debbugs-gnu-bugs (debbugs-get-bugs :submitter "me" :status "open")))
+
 (defun debbugs-gnu-get-bugs (query)
   "Retrieve bug numbers from debbugs.gnu.org according search criteria."
   (let* ((debbugs-port "gnu.org")
@@ -2479,6 +2486,8 @@ or bug ranges, with default to `debbugs-gnu-default-bug-number-list'."
   (when (called-interactively-p 'interactive)
     (message "Retrieving bugs finished")))
 
+(defalias 'debbugs-gnu-get-bug-by-id 'debbugs-gnu-bugs)
+
 (defcustom debbugs-gnu-trunk-directory "~/src/emacs/trunk/"
   "The directory where the main source tree lives."
   :type 'directory
diff --git a/debbugs-guix.el b/debbugs-guix.el
new file mode 100644
index 0000000000..6f7cfe46e4
--- /dev/null
+++ b/debbugs-guix.el
@@ -0,0 +1,42 @@
+;;; debbugs-guix.el Guix Specific Debbugs Functions -*- lexical-binding: t; -*-
+;;
+;; Copyright (C) 2011-2022 Free Software Foundation, Inc.
+
+;; Author: Joshua Branson <[email-masked]>
+;; Keywords: comm, hypermedia, maint
+;; Package: debbugs
+
+;; This file is not part of GNU Emacs.
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;;
+;; By default, debbugs-gnu-search searches for open and closed bugs of
+;; all GNU packages, which can make searching a little slow.  To
+;; remedy this situation, this file provides the function
+;; 'debbugs-gnu-guix-search', which search for open bugs that relate
+;; to the GNU guix.
+;;
+;;; Code:
+
+;;;###autoload
+(defun debbugs-gnu-guix-search ()
+  "Search for open guix bugs and patches."
+  (interactive)
+  (debbugs-gnu-search (read-string "Search String: ") '((pending . "pending"))
+                      nil '("guix" "guix-patches") nil))
+
+(provide 'debbugs-guix)
+;;; debbugs-guix.el ends here
diff --git a/debbugs-org.el b/debbugs-org.el
index c4343ecd8e..33b3662219 100644
--- a/debbugs-org.el
+++ b/debbugs-org.el
@@ -352,6 +352,14 @@ or bug ranges, with default to `debbugs-gnu-default-bug-number-list'."
   (let ((debbugs-gnu-show-reports-function #'debbugs-org-show-reports))
     (call-interactively #'debbugs-gnu-bugs)))
 
+;;;###autoload
+(defun debbugs-org-my-open-bugs ()
+  "Retrieve the open bugs, that you submitted.  This function assumes the variable
+'user-mail-address' is defined."
+  (interactive)
+  (let ((debbugs-gnu-show-reports-function #'debbugs-org-show-reports))
+    (apply #'debbugs-gnu-bugs (debbugs-get-bugs :submitter "me" :status "open"))))
+
 ;; TODO
 
 ;; - Make headline customizable.
diff --git a/debbugs-ug.texi b/debbugs-ug.texi
index f1af2a5e6f..bc96c759aa 100644
--- a/debbugs-ug.texi
+++ b/debbugs-ug.texi
@@ -206,6 +206,18 @@ of bugs you are currently working on.
 @ref{Presenting Bugs} for the presentation of the results.
 @end deffn
 
+@deffn  {Command} debbugs-gnu-my-open-bugs
+@deffnx {Command} debbugs-org-my-open-bugs
+
+It is a good idea to maintain and eventually close your open bug
+reports.  The functions @code{debbugs-gnu-my-open-bugs} and
+@code{debbugs-org-my-open-bugs} help you do this, by retrieving open
+bug reports, in which you are the submitter.  These functions assume
+that you have defined the variable @code{user-mail-address}
+(@pxref{Mail Header Fields, Mail Header Fields, Mail Header Fields,
+The Emacs Editor}).
+@end deffn
+
 
 @deffn  {Command} debbugs-gnu-emacs-release-blocking-reports &optional release
 @deffnx {Command} debbugs-org-emacs-release-blocking-reports &optional release
@@ -226,7 +238,6 @@ If this user option is non-@code{nil}, a progress report is shown when
 retrieving bugs, defaults to t.
 @end defopt
 
-
 @node Searching Bugs
 @chapter Searching in the Debbugs Database
 
-- 
2.37.3