[PATCH] etc: guix-debbugs.el: new file.

DoneSubmitted by Joshua Branson.
Details
3 participants
  • Joshua Branson
  • Maxime Devos
  • Michael Albinus
Owner
unassigned
Severity
normal
J
J
Joshua Branson wrote on 5 Aug 03:23 +0200
(address . guix-patches@gnu.org)(name . Joshua Branson)(address . jbranso@dismail.de)
20220805012310.5999-1-jbranso@dismail.de
New users may find the default debbugs commands a little awkward to use.
This patch provides three new functions and documentation that may ease
them into using debbugs and encourages them to close their open bug
reports.

* etc/guix-debbugs.el (debbugs-guix-search, debbugs-my-open-bugs,
debbugs-get-bug-by-id): new procedures.
* doc/contributing.texi (Debbugs User Interfaces): documented the new
emacs procedures and explained how to modify .emacs.d to use them.
---
doc/contributing.texi | 57 +++++++++++++++++++++++++++++++++++--
etc/guix-debbugs.el | 65 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 120 insertions(+), 2 deletions(-)
create mode 100644 etc/guix-debbugs.el

Toggle diff (149 lines)
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 02c7c5ae59..683b9bd9d2 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -1453,14 +1453,67 @@ issues using @file{debbugs.el}, which you can install with:
 guix install emacs-debbugs
 @end example
 
-For example, to list all open issues on @code{guix-patches}, hit:
+Newcomers may find the default debbugs functions awkward to use.  We
+provide three helper functions that will help you start contributing to
+guix sooner:
+
+@table @asis
+@item @code{M-x debbugs-guix-search}
+to search for guix bugs.
+
+@item @code{M-x debbugs-my-open-bugs}
+to search for your open bug reports.  These are reports that you
+submitted.  Once every six months, run this command, and try to close
+your open bugs.  Or just update the bug report with something like,
+'This is still a bug.  Please do not close this bug.'
+
+@item @code{M-x debbugs-get-bug-by-id}
+to search for bugs by the 5 digit bug number.
+@end table
+
+To start using these guix specific functions, define the variable
+@code{user-mail-address}, and put the following into your
+@code{.emacs.d} (assuming the guix source is located in ~/src/guix/):
+
+@lisp
+(setq user-mail-address "awesomecoder@@gnu.org")
+
+(load-file "~/src/guix/etc/guix-debbugs.el")
+
+(setq smtpmail-smtp-user user-mail-address
+      message-send-mail-function 'smtpmail-send-it
+      send-mail-function 'smtpmail-send-it
+      ;; customize this variable to suit your smtp email server.
+      smtpmail-smtp-server "smtp.gnu.org"
+      ;; customize this variable to suit your email server's port.
+      smtpmail-smtp-service 587)
+@end lisp
+
+Emacs' debbugs interface is awesome, but in order to use it to its
+fullest potential, you need to set up emacs to send email.  Luckily, the
+previous lines of code set up Emacs to use email for you! Now, go ahead
+and test Emacs' email sending ablities via @code{C-x m}.  For testing
+purposes, send a test email to a friend or to yourself.  To send the
+message, type in @code{C-c C-c}.  Emacs will ask you for your email
+password and optionally offer to save it in the unencrypted file
+@code{~/.authinfo}.  If you would rather save the password to an
+encrypted file (@code{~/.authinfo.gpg}), then please see
+@xref{Overview,,, auth, Emacs auth-source} and optionally set up GPG
+@comment I cannot get the below link to work.  Why?
+agent (@xref{gnupg, gnupg, gnupg, Invoking GPG-AGENT}). If you can send
+the email, then you should be all set to use Emacs's debbugs interface!
+
+Finally, we encourage all potential contributers to occassionally review
+some pending patches. There's quite a few!  You can test to see if the
+patch works for you, and reply to the open bug report.  Here is how you
+might get started finding the pending patches:
 
 @example
 @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
 @end example
 
 @xref{Top,,, debbugs-ug, Debbugs User Guide}, for more information on
-this nifty tool!
+this nifty tool, like how to close, tag, and merge bug reports!
 
 @node Debbugs Usertags
 @subsection Debbugs Usertags
diff --git a/etc/guix-debbugs.el b/etc/guix-debbugs.el
new file mode 100644
index 0000000000..794489b671
--- /dev/null
+++ b/etc/guix-debbugs.el
@@ -0,0 +1,65 @@
+;;; package --- Summary -*- lexical-binding: t; -*-
+;;; guix-debbugs.el Helpful Debbugs Functions for guix
+;;
+;; Copyright (C) 2022 Joshua Branson
+;;
+;; Author: Joshua Branson <jbranso@dismail.de>
+;; Maintainer: Joshua Branson <jbranso@dismail.de>
+;; Created: August 04, 2022
+;; Modified: August 04, 2022
+;; Version: 0.0.1
+;; Keywords: guix debbugs
+;; Homepage: https://git.savannah.gnu.org/git/guix.git
+;; Package-Requires: ((emacs "24.3"))
+;;
+;; This file is not part of GNU Emacs.
+;;
+;;; Commentary:
+;;
+;; The debbugs functions are a little awkward to use.  This file provides
+;; better and easier to use functions for the guix project.  Specifically it
+;; provides two new functions:
+;;
+;; M-x debbugs-guix-search to search for guix bugs
+;; M-x debbugs-my-open-bugs to search for my open bug reports.
+;; M-x debbugs-get-buy-by-id to open a specific bug by its ID.
+;;
+;;; Code:
+
+;; setting up debbugs
+(require 'debbugs-autoloads)
+
+;; Users need to set up send-mail-function.  Otherwise "C" in debbugs-gnu-mode WILL NOT work.
+;; eg:
+;;
+;;     (setq user-mail-address "awesomecoder@gnu.org")
+;;     (load-file "~/src/guix/etc/guix-debbugs.el")
+;;     (setq message-send-mail-function 'smtpmail-send-it
+;;           smtpmail-smtp-user user-mail-address
+;;           ;; customize this variable to suit your smtp email server.
+;;           smtpmail-smtp-server "smtp.gnu.org"
+;;           ;; customize this variable to suit your email server's port.
+;;           smtpmail-smtp-service 587)
+
+;; TODO make this by default only search open bugs AND NOT closed bugs.
+(defun debbugs-guix-search ()
+  (interactive)
+  (debbugs-gnu-search (read-string "Search String: ") nil nil '("guix" "guix-patches") nil))
+
+;; the bugs that I submitted and that are still open
+;; The debbugs database runs once a day.  So after I send a bug report
+;; and run this command, my latest bug report might not be here.  No worries,
+;; just wait one day, and it will be there.  :)
+;;
+;; I have noticed that this function works 80% of the time.  But after I close bug reports,
+;; it seems to stop working for about 1/2 hour.  I'm guessing the server's database
+;; resets itself after every time that I close a bug report...
+(defun debbugs-my-open-bugs ()
+  (require 'debbugs)
+  (interactive)
+  (apply #'debbugs-gnu-bugs (debbugs-get-bugs :submitter "me" :status "open")))
+
+(defalias 'debbugs-get-bug-by-id 'debbugs-gnu-bugs)
+
+(provide 'guix-debbugs)
+;;; guix-debbugs.el ends here

base-commit: d6be56cd09bb6286b51d1efc8981993be2525d87
-- 
2.37.1
J
J
Joshua Branson wrote on 5 Aug 03:32 +0200
(address . 56987@debbugs.gnu.org)
87h72rv5k6.fsf@dismail.de
Joshua Branson <jbranso@dismail.de> writes:

Toggle quote (6 lines)
> New users may find the default debbugs commands a little awkward to use.
> This patch provides three new functions and documentation that may ease
> them into using debbugs and encourages them to close their open bug
> reports.
>

This patch now has an acompany video!


The video is 13 minutes long, and it explains my motivations for
submitting this patch. Namely that debbugs can be a little confusing
and hard for new comers to set up.

I also spotted some errors with my debbugs-guix-search function as I was
making the video. I am not certain what the problem was. Basically
debbugs-gnu-search found my open wterm related bug, bug
debbugs-guix-search did not. Weird.

The documentation also helps newbies set up sending email in Emacs,
which is essential to use the emacs' debbugs interface as it was
intended.

I hope others find it helpful!

Toggle quote (158 lines)
>
> * etc/guix-debbugs.el (debbugs-guix-search, debbugs-my-open-bugs,
> debbugs-get-bug-by-id): new procedures.
> * doc/contributing.texi (Debbugs User Interfaces): documented the new
> emacs procedures and explained how to modify .emacs.d to use them.
> ---
> doc/contributing.texi | 57 +++++++++++++++++++++++++++++++++++--
> etc/guix-debbugs.el | 65 +++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 120 insertions(+), 2 deletions(-)
> create mode 100644 etc/guix-debbugs.el
>
> diff --git a/doc/contributing.texi b/doc/contributing.texi
> index 02c7c5ae59..683b9bd9d2 100644
> --- a/doc/contributing.texi
> +++ b/doc/contributing.texi
> @@ -1453,14 +1453,67 @@ issues using @file{debbugs.el}, which you can install with:
> guix install emacs-debbugs
> @end example
>
> -For example, to list all open issues on @code{guix-patches}, hit:
> +Newcomers may find the default debbugs functions awkward to use. We
> +provide three helper functions that will help you start contributing to
> +guix sooner:
> +
> +@table @asis
> +@item @code{M-x debbugs-guix-search}
> +to search for guix bugs.
> +
> +@item @code{M-x debbugs-my-open-bugs}
> +to search for your open bug reports. These are reports that you
> +submitted. Once every six months, run this command, and try to close
> +your open bugs. Or just update the bug report with something like,
> +'This is still a bug. Please do not close this bug.'
> +
> +@item @code{M-x debbugs-get-bug-by-id}
> +to search for bugs by the 5 digit bug number.
> +@end table
> +
> +To start using these guix specific functions, define the variable
> +@code{user-mail-address}, and put the following into your
> +@code{.emacs.d} (assuming the guix source is located in ~/src/guix/):
> +
> +@lisp
> +(setq user-mail-address "awesomecoder@@gnu.org")
> +
> +(load-file "~/src/guix/etc/guix-debbugs.el")
> +
> +(setq smtpmail-smtp-user user-mail-address
> + message-send-mail-function 'smtpmail-send-it
> + send-mail-function 'smtpmail-send-it
> + ;; customize this variable to suit your smtp email server.
> + smtpmail-smtp-server "smtp.gnu.org"
> + ;; customize this variable to suit your email server's port.
> + smtpmail-smtp-service 587)
> +@end lisp
> +
> +Emacs' debbugs interface is awesome, but in order to use it to its
> +fullest potential, you need to set up emacs to send email. Luckily, the
> +previous lines of code set up Emacs to use email for you! Now, go ahead
> +and test Emacs' email sending ablities via @code{C-x m}. For testing
> +purposes, send a test email to a friend or to yourself. To send the
> +message, type in @code{C-c C-c}. Emacs will ask you for your email
> +password and optionally offer to save it in the unencrypted file
> +@code{~/.authinfo}. If you would rather save the password to an
> +encrypted file (@code{~/.authinfo.gpg}), then please see
> +@xref{Overview,,, auth, Emacs auth-source} and optionally set up GPG
> +@comment I cannot get the below link to work. Why?
> +agent (@xref{gnupg, gnupg, gnupg, Invoking GPG-AGENT}). If you can send
> +the email, then you should be all set to use Emacs's debbugs interface!
> +
> +Finally, we encourage all potential contributers to occassionally review
> +some pending patches. There's quite a few! You can test to see if the
> +patch works for you, and reply to the open bug report. Here is how you
> +might get started finding the pending patches:
>
> @example
> @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
> @end example
>
> @xref{Top,,, debbugs-ug, Debbugs User Guide}, for more information on
> -this nifty tool!
> +this nifty tool, like how to close, tag, and merge bug reports!
>
> @node Debbugs Usertags
> @subsection Debbugs Usertags
> diff --git a/etc/guix-debbugs.el b/etc/guix-debbugs.el
> new file mode 100644
> index 0000000000..794489b671
> --- /dev/null
> +++ b/etc/guix-debbugs.el
> @@ -0,0 +1,65 @@
> +;;; package --- Summary -*- lexical-binding: t; -*-
> +;;; guix-debbugs.el Helpful Debbugs Functions for guix
> +;;
> +;; Copyright (C) 2022 Joshua Branson
> +;;
> +;; Author: Joshua Branson <jbranso@dismail.de>
> +;; Maintainer: Joshua Branson <jbranso@dismail.de>
> +;; Created: August 04, 2022
> +;; Modified: August 04, 2022
> +;; Version: 0.0.1
> +;; Keywords: guix debbugs
> +;; Homepage: https://git.savannah.gnu.org/git/guix.git
> +;; Package-Requires: ((emacs "24.3"))
> +;;
> +;; This file is not part of GNU Emacs.
> +;;
> +;;; Commentary:
> +;;
> +;; The debbugs functions are a little awkward to use. This file provides
> +;; better and easier to use functions for the guix project. Specifically it
> +;; provides two new functions:
> +;;
> +;; M-x debbugs-guix-search to search for guix bugs
> +;; M-x debbugs-my-open-bugs to search for my open bug reports.
> +;; M-x debbugs-get-buy-by-id to open a specific bug by its ID.
> +;;
> +;;; Code:
> +
> +;; setting up debbugs
> +(require 'debbugs-autoloads)
> +
> +;; Users need to set up send-mail-function. Otherwise "C" in debbugs-gnu-mode WILL NOT work.
> +;; eg:
> +;;
> +;; (setq user-mail-address "awesomecoder@gnu.org")
> +;; (load-file "~/src/guix/etc/guix-debbugs.el")
> +;; (setq message-send-mail-function 'smtpmail-send-it
> +;; smtpmail-smtp-user user-mail-address
> +;; ;; customize this variable to suit your smtp email server.
> +;; smtpmail-smtp-server "smtp.gnu.org"
> +;; ;; customize this variable to suit your email server's port.
> +;; smtpmail-smtp-service 587)
> +
> +;; TODO make this by default only search open bugs AND NOT closed bugs.
> +(defun debbugs-guix-search ()
> + (interactive)
> + (debbugs-gnu-search (read-string "Search String: ") nil nil '("guix" "guix-patches") nil))
> +
> +;; the bugs that I submitted and that are still open
> +;; The debbugs database runs once a day. So after I send a bug report
> +;; and run this command, my latest bug report might not be here. No worries,
> +;; just wait one day, and it will be there. :)
> +;;
> +;; I have noticed that this function works 80% of the time. But after I close bug reports,
> +;; it seems to stop working for about 1/2 hour. I'm guessing the server's database
> +;; resets itself after every time that I close a bug report...
> +(defun debbugs-my-open-bugs ()
> + (require 'debbugs)
> + (interactive)
> + (apply #'debbugs-gnu-bugs (debbugs-get-bugs :submitter "me" :status "open")))
> +
> +(defalias 'debbugs-get-bug-by-id 'debbugs-gnu-bugs)
> +
> +(provide 'guix-debbugs)
> +;;; guix-debbugs.el ends here
>
> base-commit: d6be56cd09bb6286b51d1efc8981993be2525d87
J
J
Joshua Branson wrote on 10 Aug 17:16 +0200
(address . 56987@debbugs.gnu.org)
87tu6kp1s7.fsf_-_@dismail.de
Joshua Branson <jbranso@dismail.de> writes:

I emailed the help-gnu-emacs list, to try ask how I would write a
function to only get open guix bugs and got back a pretty good reply. I
am just reposting those messages here:

Toggle quote (25 lines)
>> But you can play with the QUERY argument of
>> debbugs-gnu-search, like (this will get you only open bugs)
>>
>> (debbugs-gnu-search (read-string "Search String: ") '((pending . "open")) nil '("guix" "guix-patches"))

> Are you sure that works?
>
> (debbugs-gnu-search "wterm" '((status . "open")) nil '("guix" "guix-patches"))
>
> returns nothing
>
> (debbugs-gnu-search "wterm" '((pending . "open")) nil '("guix" "guix-patches"))
>
> returns nothing
>
> (debbugs-gnu-search "wterm" nil nil '("guix" "guix-patches"))
>
> returns only closed bugs. odd.
>
> M-x debbugs-gnu-search RET "wterm" RET RET x
>
> correctly returns bug 56965, which is an open bug.
>
> What am I doing wrong?

Michael Albinus <michael.albinus@gmx.de> writes:

Hi Joshua,

Well, I found the time now to check what's up.

Toggle quote (4 lines)
> Hmm, looks like there's an error in debbugs-gnu-search. I'll check, but
> perhaps you might write a bug report about. I don't know whether I can
> handle it just now, due to time constraints.

There's indeed an error. The "status" attribute, when there is non-empty
query string, must be "pending" instead of "open". And it is mapped
internally to the attribute "pending".

All this shouldn't worry you. I've just pushed debbugs 0.33, which will appear
in a couple of hours on GNU ELPA. For the time being, you can apply

(debbugs-gnu-search "wterm" '((pending . "pending")) nil '("guix" "guix-patches"))

If you want to see only closed bugs, then call

(debbugs-gnu-search "wterm" '((pending . "done")) nil '("guix" "guix-patches"))

And if you want to see all bugs with this search string, there is

(debbugs-gnu-search "wterm" nil nil '("guix" "guix-patches"))

Best regards, Michael.


So I will be resubmitting this patch set, with a debbugs-guix-search
function that by default only returns open bug reports.

Thanks,

Joshua
M
M
Michael Albinus wrote on 10 Aug 18:44 +0200
(name . Joshua Branson)(address . jbranso@dismail.de)(address . 56987@debbugs.gnu.org)
87sfm4dp4r.fsf@gmx.de
Joshua Branson <jbranso@dismail.de> writes:

Hi Joshua,

just some comments after short reading of the patch.

Toggle quote (4 lines)
> @example
> @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
> @end example

Alternatively, a user could set debbugs-gnu-default-packages to '("guix" "guix-patches")
Then it won't be necessary to enter the package name(s) again and again.

Toggle quote (2 lines)
> +;; Copyright (C) 2022 Joshua Branson

This would change to FSF, if bundled with the debbugs package.

Toggle quote (2 lines)
> +;; Package-Requires: ((emacs "24.3"))

debbugs.el says

;; Package-Requires: ((emacs "26.1") (soap-client "3.1.5"))

So I guess you might lift up the required Emacs version.

Toggle quote (5 lines)
> +;; TODO make this by default only search open bugs AND NOT closed bugs.
> +(defun debbugs-guix-search ()
> + (interactive)
> + (debbugs-gnu-search (read-string "Search String: ") nil nil '("guix" "guix-patches") nil))

As said the other message, it should be

(debbugs-gnu-search (read-string "Search String: ") '((pending . "pending")) nil '("guix" "guix-patches"))

Toggle quote (4 lines)
> +;; The debbugs database runs once a day. So after I send a bug report
> +;; and run this command, my latest bug report might not be here. No worries,
> +;; just wait one day, and it will be there. :)

To be more precise, the Hyperestraier search engine on debbugs.gnu.org
makes new indices after that period. New submitted bugs are in the
debbugs database shortly after sending the message. It is just
debbugs-gnu-search, which needs these indices.

Toggle quote (4 lines)
> +;; I have noticed that this function works 80% of the time. But after I close bug reports,
> +;; it seems to stop working for about 1/2 hour. I'm guessing the server's database
> +;; resets itself after every time that I close a bug report...

debbugs.el uses a cache, which flushes the value after an hour. See the
variable debbugs-cache-expiry.

There is the command debbugs-gnu-rescan, bound to key "g", which rescans
an existing tabulated list. With a prefix argument ("C-u g"), the cache
is ignored, and the data are retrieved directly from debbugs.gnu.el.

However, please be cautious with invalidating the cache. Every action on
the debbugs.gnu.org server causes a workload there, and we don't want to
overuse it.

Best regards, Michael.
J
J
jbranso wrote on 10 Aug 22:10 +0200
(name . Michael Albinus)(address . michael.albinus@gmx.de)(address . 56987@debbugs.gnu.org)
5e171ff2c6243ed0808cf15d0bbfa1e0@dismail.de
Sorry for top posting...

The emacs debbugs developers are considering to merge this patch to debbugs directly.

I am willing to submit copyright assignment to GNU/FSF. It looks like the FSF
has a webpage that may make this process easier:


Should I use that web page to submit my potential copyright assignment?

Now that we are all on the same page:

August 10, 2022 12:45 PM, "Michael Albinus" <michael.albinus@gmx.de> wrote:

Toggle quote (13 lines)
> Joshua Branson <jbranso@dismail.de> writes:
>
> Hi Joshua,
>
> just some comments after short reading of the patch.
>
>> @example
>> @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
>> @end example
>
> Alternatively, a user could set debbugs-gnu-default-packages to '("guix" "guix-patches")
> Then it won't be necessary to enter the package name(s) again and again.

I think that I have tried that in my config, and I could not get it to work.

I will try again and get back to you, and update the guix documentation accordingly.

Toggle quote (5 lines)
>
>> +;; Copyright (C) 2022 Joshua Branson
>
> This would change to FSF, if bundled with the debbugs package.

Will change

Toggle quote (9 lines)
>
>> +;; Package-Requires: ((emacs "24.3"))
>
> debbugs.el says
>
> ;; Package-Requires: ((emacs "26.1") (soap-client "3.1.5"))
>
> So I guess you might lift up the required Emacs version.

Will do.

Toggle quote (11 lines)
>
>> +;; TODO make this by default only search open bugs AND NOT closed bugs.
>> +(defun debbugs-guix-search ()
>> + (interactive)
>> + (debbugs-gnu-search (read-string "Search String: ") nil nil '("guix" "guix-patches") nil))
>
> As said the other message, it should be
>
> (debbugs-gnu-search (read-string "Search String: ") '((pending . "pending")) nil '("guix"
> "guix-patches"))

Will change

Toggle quote (10 lines)
>
>> +;; The debbugs database runs once a day. So after I send a bug report
>> +;; and run this command, my latest bug report might not be here. No worries,
>> +;; just wait one day, and it will be there. :)
>
> To be more precise, the Hyperestraier search engine on debbugs.gnu.org
> makes new indices after that period. New submitted bugs are in the
> debbugs database shortly after sending the message. It is just
> debbugs-gnu-search, which needs these indices.

Will change

Toggle quote (8 lines)
>
>> +;; I have noticed that this function works 80% of the time. But after I close bug reports,
>> +;; it seems to stop working for about 1/2 hour. I'm guessing the server's database
>> +;; resets itself after every time that I close a bug report...
>
> debbugs.el uses a cache, which flushes the value after an hour. See the
> variable debbugs-cache-expiry.

Maybe, we could mark a bug as done in the cache when one closes the bug via
debbugs. That may be a little above my paygrade though.

Toggle quote (12 lines)
>
> There is the command debbugs-gnu-rescan, bound to key "g", which rescans
> an existing tabulated list. With a prefix argument ("C-u g"), the cache
> is ignored, and the data are retrieved directly from debbugs.gnu.el.
>
> However, please be cautious with invalidating the cache. Every action on
> the debbugs.gnu.org server causes a workload there, and we don't want to
> overuse it.
>
> Best regards, Michael.


I will resubmit this with the goal of merging directly into debbugs.el.

And I am off tomorrow, so I should have some time to do so!
M
M
Maxime Devos wrote on 10 Aug 22:24 +0200
Re: [bug#56987] [PATCH] etc: guix-debbugs.el: new file.
(address . 56987@debbugs.gnu.org)
2ac2c932-9211-b5eb-b001-9e23dc5d0a1c@telenet.be
On 10-08-2022 22:10, jbranso--- via Guix-patches via wrote:
Toggle quote (4 lines)
> I am willing to submit copyright assignment to GNU/FSF. It looks like the FSF
> has a webpage that may make this process easier:
>
> https://sfconservancy.org/assignment/
GNU and FSF are separate (but related!) entities, they aren't synonyms.
For example, I do some things in GNU (in mu case: GNUnet, Guix and Guix)
but I'm not involved with FSF at all, except for asking a question once
or twice of FSF people.
Also, the Software Freedom Conservancy is a different organisation than
the FSF. You will need a different assignment form, contact the
emacs-debbugs people for details.
I haven't been following 56987 100%, but a remark:
Guix does not require copyright assignment. Copyright assignment is only
required if you sent changes to Emacs or emacs-debbugs upstream instead
of a local Guix patch or file. That would something to discuss with
Emacs or emacs-debbugs people though, not Guix.
Greetings,
Maxime.
Attachment: OpenPGP_signature
J
J
jbranso wrote on 10 Aug 22:39 +0200
(address . 56987@debbugs.gnu.org)
28782676202eeca5e381203720389276@dismail.de
August 10, 2022 4:24 PM, "Maxime Devos" <maximedevos@telenet.be> wrote:

Toggle quote (12 lines)
> On 10-08-2022 22:10, jbranso--- via Guix-patches via wrote:
>
>> I am willing to submit copyright assignment to GNU/FSF. It looks like the FSF
>> has a webpage that may make this process easier:
>>
>> https://sfconservancy.org/assignment
>
> GNU and FSF are separate (but related!) entities, they aren't synonyms.
> For example, I do some things in GNU (in mu case: GNUnet, Guix and Guix)
> but I'm not involved with FSF at all, except for asking a question once
> or twice of FSF people.

Thanks for the clarification!

Toggle quote (4 lines)
> Also, the Software Freedom Conservancy is a different organization than
> the FSF. You will need a different assignment form, contact the
> emacs-debbugs people for details.

Ah, you're right! from

"The self-service system enables developers to entrust their copyrights
to Software Freedom Conservancy, ..." NOT the FSF. Bummer.

Toggle quote (7 lines)
> I haven't been following 56987 100%, but a remark:
>
> Guix does not require copyright assignment. Copyright assignment is only
> required if you sent changes to Emacs or emacs-debbugs upstream instead
> of a local Guix patch or file. That would something to discuss with
> Emacs or emacs-debbugs people though, not Guix.

That's what I mentioned in the above previous email.

Some emacs-debbugs contributors have expressed an interest in adding in my
patch to debbugs.el directly. They would require an assignment to the FSF.
:)

Which thanks to Maxime, I now know that I have to email the FSF!

Also thanks for the reminder Maxime. I am adding Lars to the email chain.
He's a co-author of debbugs I believe.

Toggle quote (2 lines)
> Greetings,
> Maxime.
J
J
jbranso wrote on 10 Aug 23:22 +0200
Requesting help in assigning copright to Emacs's debbugs
342b3c4bebd589368ae93b011b5b0cf0@dismail.de
Hey Craig,

With Michael's help (Michael did most of the work really), I wrote
some code that may be useful to emacs's debbugs mode:


The pending patch is available for your viewing pleasure at:


I have never submitted copyright assignment to GNU before.
Is it possible I can just submit copyright to all GNU programs
in one fell swoop?

I currently work for a global corporation that is NOT in the
software industry, thought they do own some proprietary software.

Do I need to get them to sign off on this too?

Thanks,

Joshua
M
M
Michael Albinus wrote on 11 Aug 08:24 +0200
Re: bug#56987: [PATCH] etc: guix-debbugs.el: new file.
(address . jbranso@dismail.de)
87wnbfpaa9.fsf@gmx.de
jbranso@dismail.de writes:

Hi Joshua,

Toggle quote (7 lines)
> I am willing to submit copyright assignment to GNU/FSF. It looks like the FSF
> has a webpage that may make this process easier:
>
> https://sfconservancy.org/assignment/
>
> Should I use that web page to submit my potential copyright assignment?

No, you need the FSF template. Sent offlist.

Toggle quote (11 lines)
>>> @example
>>> @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
>>> @end example
>>
>> Alternatively, a user could set debbugs-gnu-default-packages to '("guix" "guix-patches")
>> Then it won't be necessary to enter the package name(s) again and again.
>
> I think that I have tried that in my config, and I could not get it to work.
>
> I will try again and get back to you, and update the guix documentation accordingly.

Well, debbugs-gnu-default-packages isn't used for
debbugs-gnu-search. But since you are writing about the debbugs package
in general, the hint might still be useful.

Toggle quote (6 lines)
>> debbugs.el uses a cache, which flushes the value after an hour. See the
>> variable debbugs-cache-expiry.
>
> Maybe, we could mark a bug as done in the cache when one closes the bug via
> debbugs. That may be a little above my paygrade though.

That's a hazardous way. Bugs are not only closed, but changed in many
ways. And you don't know, whether a user sends the control message she
has started to compose.

In debbugs-gnu-make-control-message, a bug is already removed from the
cache when the control message is sent. This is good enough I believe.

Next time the bug data are needed, the data for this bug are fetched
from the server. However, you must be a little bit patient, when you
retrieve the data immediately after sending the control message, the
server might not be ready with the action, and it might send the
unchanged data.

Best regards, Michael.
J
J
Joshua Branson wrote on 11 Aug 17:25 +0200
(name . Michael Albinus)(address . michael.albinus@gmx.de)
87zggaol8m.fsf@dismail.de
Michael Albinus <michael.albinus@gmx.de> writes:

Toggle quote (28 lines)
> jbranso@dismail.de writes:
>
> Hi Joshua,
>
>> I am willing to submit copyright assignment to GNU/FSF. It looks like the FSF
>> has a webpage that may make this process easier:
>>
>> https://sfconservancy.org/assignment/
>>
>> Should I use that web page to submit my potential copyright assignment?
>
> No, you need the FSF template. Sent offlist.
>
>>>> @example
>>>> @kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y
>>>> @end example
>>>
>>> Alternatively, a user could set debbugs-gnu-default-packages to '("guix" "guix-patches")
>>> Then it won't be necessary to enter the package name(s) again and again.
>>
>> I think that I have tried that in my config, and I could not get it to work.
>>
>> I will try again and get back to you, and update the guix documentation accordingly.
>
> Well, debbugs-gnu-default-packages isn't used for
> debbugs-gnu-search. But since you are writing about the debbugs package
> in general, the hint might still be useful.

May I ask why debbugs-gnu-search chooses not to use
debbugs-gnu-default-packages? I don't understand. What functions do
use debbugs-gnu-default-packages? Also note, that my experience with
debbugs is REALLY minimal. I haven't even properly read the
manual...I've only skimmed. So maybe I should read it before developing
an opinion. :)

Toggle quote (10 lines)
>>> debbugs.el uses a cache, which flushes the value after an hour. See the
>>> variable debbugs-cache-expiry.
>>
>> Maybe, we could mark a bug as done in the cache when one closes the bug via
>> debbugs. That may be a little above my paygrade though.
>
> That's a hazardous way. Bugs are not only closed, but changed in many
> ways. And you don't know, whether a user sends the control message she
> has started to compose.

That's true.

Toggle quote (3 lines)
> In debbugs-gnu-make-control-message, a bug is already removed from the
> cache when the control message is sent. This is good enough I believe.

Now that is helpful! so debbugs-gnu-make-control-message assumes that
you are closing the bug. ok. Thanks for the help again Michael! I
couldn't have written this patch this quickly without your help. Heck
you helped me write quite a bit of it!

Toggle quote (7 lines)
> Next time the bug data are needed, the data for this bug are fetched
> from the server. However, you must be a little bit patient, when you
> retrieve the data immediately after sending the control message, the
> server might not be ready with the action, and it might send the
> unchanged data.
>
> Best regards, Michael.
M
M
Michael Albinus wrote on 11 Aug 18:06 +0200
(name . Joshua Branson)(address . jbranso@dismail.de)
874jyihiio.fsf@gmx.de
Joshua Branson <jbranso@dismail.de> writes:

Hi Joshua,

Toggle quote (3 lines)
> May I ask why debbugs-gnu-search chooses not to use
> debbugs-gnu-default-packages? I don't understand.

debbugs-gnu-search is not designed to be used with packages. It is
possible to do so, but by default it just looks for a search string, w/o
any further restriction.

Toggle quote (2 lines)
> What functions do use debbugs-gnu-default-packages?

debbugs-gnu, and the commands which use it internally, like
debbugs-gnu-patches, debbugs-gnu-package.

Toggle quote (6 lines)
>> In debbugs-gnu-make-control-message, a bug is already removed from the
>> cache when the control message is sent. This is good enough I believe.
>
> Now that is helpful! so debbugs-gnu-make-control-message assumes that
> you are closing the bug.

No, it doesn't. A bug can be changed in many ways, not only being closed.
debbugs-gnu-make-control-message assumes only that you change something
with the bug.

Best regards, Michael.
J
J
Joshua Branson wrote on 11 Aug 21:51 +0200
(address . craigt@fsf.org)(address . 56987@debbugs.gnu.org)
87leruo8xt.fsf_-_@dismail.de
jbranso@dismail.de writes:

Just an FYI, Craig already got back to me! It took him 1 day to respond
to my email! Way to go copyright licensing guy!

Thanks,

Joshua
J
J
jbranso wrote on 12 Aug 21:17 +0200
(name . Michael Albinus)(address . michael.albinus@gmx.de)
abf3fef86b44b3392820e8ca4846d7d1@dismail.de
FYI, Craig the licensing guy got back to me,
and I submitted my copyright form for GNU Emacs.

Craig is wicked fast! He helped me submit my copyright before
the patched were even ready!

That guys deserves a raise, a paid 6 month vacation, and a new puppy!
I'm pretty sure he's the kind of man to run into a burning building
to save all of the kittens.

Thanks Craig!

Joshua
J
J
Joshua Branson wrote on 14 Aug 00:49 +0200
(name . Michael Albinus)(address . michael.albinus@gmx.de)(address . 56987@debbugs.gnu.org)
87bksnoj27.fsf_-_@dismail.de
For all interested parties, I am working on the patch to debbugs, and I
am recording myself coding doing it. I've got sooo much to learn about
git!

Woo hoo!


Thanks,

Joshua
J
J
jbranso wrote on 17 Aug 22:14 +0200
Fwd: [gnu.org #1863422] Joshua Allen Branson GNU EMACS
(name . Michael Albinus)(address . michael.albinus@gmx.de)(address . 56987@debbugs.gnu.org)
8c3846718c82641ecb25c6237ff617ae@dismail.de
My copyright is now on file with the FSF for GNU Emacs!

Now I just need to make V2 of my patches.

Sorry it's taking me so long.

Thanks,

Joshua

-------- Forwarded message -------
From: "Craig Topham via RT" <copyright-clerk@fsf.org>
To: jbranso@dismail.de
Sent: August 17, 2022 4:25 PM
Subject: [gnu.org #1863422] Joshua Allen Branson GNU EMACS
Please find the attached PDF. Thank you for contributing.
M
M
Michael Albinus wrote on 18 Aug 11:52 +0200
(address . jbranso@dismail.de)(address . 56987@debbugs.gnu.org)
87pmgx281q.fsf@gmx.de
jbranso@dismail.de writes:

Hi Joshua,

Toggle quote (2 lines)
> My copyright is now on file with the FSF for GNU Emacs!

Indeed, I've seen this on file there. Congratulations!

The assignment is just for Emacs (I remember you wanted it for any GNU
package). No problem for me, working on debbugs is covered by this.

Toggle quote (4 lines)
> Now I just need to make V2 of my patches.
>
> Sorry it's taking me so long.

Take your time, there's no rush.

Toggle quote (4 lines)
> Thanks,
>
> Joshua

Best regards, Michael.
J
J
Joshua Branson wrote on 22 Aug 19:21 +0200
Re: bug#56987: [PATCH] etc: guix-debbugs.el: new file.
(name . Michael Albinus)(address . michael.albinus@gmx.de)(address . 56987@debbugs.gnu.org)
87tu64urcv.fsf_-_@dismail.de
Michael Albinus <michael.albinus@gmx.de> writes:

Toggle quote (4 lines)
>
> Take your time, there's no rush.
>

Video update:


Just letting people know that I am making progress slowly.

Toggle quote (6 lines)
>
>> Thanks,
>>
>> Joshua
>
> Best regards, Michael.
J
J
Joshua Branson wrote on 1 Oct 17:39 +0200
[PATCH] added *my-open-bugs functions
(address . 56987@debbugs.gnu.org)
20221001153933.6325-1-jbranso@dismail.de
* 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

Toggle diff (127 lines)
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 <jbranso@dismail.de>
+;; 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
M
M
Michael Albinus wrote on 2 Oct 14:52 +0200
(name . Joshua Branson)(address . jbranso@dismail.de)(address . 56987@debbugs.gnu.org)
877d1icrrc.fsf@gmx.de
Joshua Branson <jbranso@dismail.de> writes:

Hi Joshua,

Toggle quote (5 lines)
> * 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.

Thanks for this. In order to push the changes, I'd like to get ChangeLog
like commit messages.

debbugs-gnu-my-open-bugs and debbugs-org-my-open-bugs are explained in
the UG. But since not everybody reads manuals, we explain the
interactive commands also in the Commentary section of the respective
file. Could you please do?

Toggle quote (3 lines)
> I did not actually compile the debbugs-ug.text, so it is possible that my
> documentation makes the info program impossible to compile.

It compiles, but the reference to the Emacs manual is wrong. Better
would be

Toggle snippet (3 lines)
(@pxref{Mail Headers, , , emacs}).

It also wouldn't hurt if you add a small section about
debbugs-gnu-guix-search. Everything, what is undocumenbted, doesn't
exist :-)

Toggle quote (4 lines)
> Thanks,
>
> Joshua

Best regards, Michael.
J
J
jbranso wrote on 3 Oct 22:02 +0200
(name . Michael Albinus)(address . michael.albinus@gmx.de)(address . 56987@debbugs.gnu.org)
60925dca97526a602e2ca2c140beca45@dismail.de
October 2, 2022 8:52 AM, "Michael Albinus" <michael.albinus@gmx.de> wrote:

Toggle quote (12 lines)
> Joshua Branson <jbranso@dismail.de> writes:
>
> Hi Joshua,
>
>> * 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.
>
> Thanks for this. In order to push the changes, I'd like to get ChangeLog
> like commit messages.

I thought that's what I had. I'll try to fix it. I'll just look at
the git history.

Toggle quote (7 lines)
>
> debbugs-gnu-my-open-bugs and debbugs-org-my-open-bugs are explained in
> the UG. But since not everybody reads manuals, we explain the
> interactive commands also in the Commentary section of the respective
> file. Could you please do?
>

Yes will do.

Toggle quote (14 lines)
>> I did not actually compile the debbugs-ug.text, so it is possible that my
>> documentation makes the info program impossible to compile.
>
> It compiles, but the reference to the Emacs manual is wrong. Better
> would be
>
> --8<---------------cut here---------------start------------->8---
> (@pxref{Mail Headers, , , emacs}).
> --8<---------------cut here---------------end--------------->8---
>
> It also wouldn't hurt if you add a small section about
> debbugs-gnu-guix-search. Everything, what is undocumenbted, doesn't
> exist :-)

I will do both points. Should every interactive function in any *.el file
have an autoload ?

Toggle quote (6 lines)
>
>> Thanks,
>>
>> Joshua
>
> Best regards, Michael.
M
M
Michael Albinus wrote on 4 Oct 16:15 +0200
(address . jbranso@dismail.de)(address . 56987@debbugs.gnu.org)
87czb7oesk.fsf@gmx.de
jbranso@dismail.de writes:

Hi Joshua,
Toggle quote (12 lines)
>>
>>> * 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.
>>
>> Thanks for this. In order to push the changes, I'd like to get ChangeLog
>> like commit messages.
>
> I thought that's what I had. I'll try to fix it. I'll just look at
> the git history.

Yes, the point is ChangeLog-style.

Toggle quote (7 lines)
>> It also wouldn't hurt if you add a small section about
>> debbugs-gnu-guix-search. Everything, what is undocumenbted, doesn't
>> exist :-)
>
> I will do both points. Should every interactive function in any *.el file
> have an autoload ?

Not necessarily. Only, we want to have it accessible directly, w/o
loading the respective .el file.

Toggle quote (4 lines)
>>> Thanks,
>>>
>>> Joshua

Best regards, Michael.
J
J
Joshua Branson wrote on 5 Oct 18:41 +0200
[PATCH] new functions 'debbugs-gnu-my-open-bugs' and 'debbugs-gnu-guix-search'.
(address . 56987@debbugs.gnu.org)
20221005164132.14867-1-jbranso@dismail.de
* debbugs-gnu.el (debbugs-gnu-my-open-bugs): new function.
* debbugs-org.el (debbugs-org-my-open-bugs): new function.
* debbugs-guix.el (debbugs-gnu-guix-search): new function.
* debugs-ug.texi (debbugs-gnu-my-open-bugs,
debbugs-gnu-guix-search, debbugs-org-my-open-bugs): added
documentation for the new functions.
---
debbugs-gnu.el | 17 +++++++++++++++++
debbugs-guix.el | 51 +++++++++++++++++++++++++++++++++++++++++++++++++
debbugs-org.el | 16 ++++++++++++++++
debbugs-ug.texi | 22 ++++++++++++++++++++-
4 files changed, 105 insertions(+), 1 deletion(-)
create mode 100644 debbugs-guix.el

Toggle diff (182 lines)
diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index e6629156c1..bc6417c5f5 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -164,6 +164,14 @@
 ;; presented, and in the latter case the last 10 bugs are shown,
 ;; counting from the highest bug number in the repository.
 
+;; M-x debbugs-gnu-my-open-bugs
+;;
+;; It is a good idea to maintain and eventually close your open bug
+;; reports.  The function 'debbugs-gnu-my-open-bugs' helps you do
+;; this, by retrieving open bug reports, in which you are the
+;; submitter.  This function assumes that you have defined the
+;; variable 'user-mail-address'.
+
 ;; For posting commit to bugs, or constructing a bug closing message
 ;; based on a pushed commit, use the command
 ;;
@@ -827,6 +835,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 +2494,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..c8d6b281f9
--- /dev/null
+++ b/debbugs-guix.el
@@ -0,0 +1,51 @@
+;;; debbugs-guix.el Guix Specific Debbugs Functions -*- lexical-binding: t; -*-
+;;
+;; Copyright (C) 2011-2022 Free Software Foundation, Inc.
+
+;; Author: Joshua Branson <jbranso@dismail.de>
+;; 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))
+
+;;;###autoload
+(defun debbugs-org-guix-search ()
+  "Search for open guix bugs and patches and display the results in an org
+ buffer."
+  (interactive)
+  (let ((debbugs-gnu-show-reports-function #'debbugs-org-show-reports))
+    (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..c62ffc0396 100644
--- a/debbugs-org.el
+++ b/debbugs-org.el
@@ -114,6 +114,14 @@
 ;; presented, and in the latter case the last 10 bugs are shown,
 ;; counting from the highest bug number in the repository.
 
+;; M-x debbugs-org-my-open-bugs
+;;
+;; It is a good idea to maintain and eventually close your open bug
+;; reports.  The function 'debbugs-org-my-open-bugs' helps you do
+;; this, by retrieving open bug reports, in which you are the
+;; submitter.  This function assumes that you have defined the
+;; variable 'user-mail-address'.
+
 ;;; Code:
 
 (require 'debbugs-gnu)
@@ -352,6 +360,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..0f0823f722 100644
--- a/debbugs-ug.texi
+++ b/debbugs-ug.texi
@@ -206,6 +206,17 @@ 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 Headers, , , emacs}).
+@end deffn
+
 
 @deffn  {Command} debbugs-gnu-emacs-release-blocking-reports &optional release
 @deffnx {Command} debbugs-org-emacs-release-blocking-reports &optional release
@@ -226,7 +237,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
 
@@ -367,6 +377,16 @@ These commands show also a progress report when
 @end deffn
 
 
+@deffn  {Command} debbugs-gnu-guix-search
+@deffnx {Command} debbugs-org-guix-search
+
+By default, @code{debbugs-gnu-search} and @code{debbugs-org-search},
+search for all open bugs in the debbugs database.  While this is
+extensive search is laudable, it is perhaps not efficient.  These two
+functions will let you search for only open guix bugs and patches.
+@end deffn
+
+
 @node Presenting Bugs
 @chapter Presenting Bugs
 
-- 
2.37.3
M
M
Michael Albinus wrote on 5 Oct 22:10 +0200
(name . Joshua Branson)(address . jbranso@dismail.de)(address . 56987-done@debbugs.gnu.org)
87bkqqkp4f.fsf@gmx.de
Joshua Branson <jbranso@dismail.de> writes:

Hi Joshua,

Toggle quote (7 lines)
> * debbugs-gnu.el (debbugs-gnu-my-open-bugs): new function.
> * debbugs-org.el (debbugs-org-my-open-bugs): new function.
> * debbugs-guix.el (debbugs-gnu-guix-search): new function.
> * debugs-ug.texi (debbugs-gnu-my-open-bugs,
> debbugs-gnu-guix-search, debbugs-org-my-open-bugs): added
> documentation for the new functions.

Thanks. I've pushed it to the GNU ELPA repository, and I've increased
the version to 0.34 after applying some cosmetic changes. Shall be
visible in a couple of hours.

Closing the bug.

Best regards, Michael.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 56987@debbugs.gnu.org