Re: Commit Access: Sharlatan Hellseher
Hi! Kyle Meyer writes: > Hi Maxim, > > Maxim Cournoyer writes: > >> Another easy option is to retrieve the Message-ID of any message in the >> series (via the source HTML of the mail archives, or directly from the >> mail headers if you have the mail locally), and then use B4, Linux >> style [0]. Example: suppose I wanted to apply and review this Perl >> series [1], then I could apply locally to my Guix git checkout with: > > I was going to add that a key part of using b4 with public-inbox > instances outside of the default lore.kernel.org is setting b4.midmask. > But then I noticed that Guix's etc/git/gitconfig now has > > [b4] > attestation-check-dkim = off > attestation-policy = off > linkmask = https://yhetil.org/guix/%s > linktrailermask = https://yhetil.org/guix/%s > midmask = https://yhetil.org/guix/%s > > Neat. Thanks for adding that! This auto-config thing is powerful :-). Perhaps we should add a word or two about b4 and other workflows to our cookbook. I also use patman for managing submissions with ease (info "(u-boot) Patman patch manager"). -- Thanks, Maxim
Re: Commit Access: Sharlatan Hellseher
Hi Maxim, Maxim Cournoyer writes: > Another easy option is to retrieve the Message-ID of any message in the > series (via the source HTML of the mail archives, or directly from the > mail headers if you have the mail locally), and then use B4, Linux > style [0]. Example: suppose I wanted to apply and review this Perl > series [1], then I could apply locally to my Guix git checkout with: I was going to add that a key part of using b4 with public-inbox instances outside of the default lore.kernel.org is setting b4.midmask. But then I noticed that Guix's etc/git/gitconfig now has [b4] attestation-check-dkim = off attestation-policy = off linkmask = https://yhetil.org/guix/%s linktrailermask = https://yhetil.org/guix/%s midmask = https://yhetil.org/guix/%s Neat. Thanks for adding that!
Re: Commit Access: Sharlatan Hellseher
Hi Oleg, On Thu, 11 Jan 2024 at 19:56, Sharlatan Hellseher wrote: > I am happy to have been granted commit access Cool! Welcome. > If anyone has a good patch review workflow using Emacs, Gnus, and Magit, > I would appreciate it ;-) Well, nothing more than what had been already suggested. Well, somehow pipe the messages with “git am -3s” and apply the patches to a Git worktree (named cooking), then rebase this cooking on the top of master. Cheers, simon
Re: Commit Access: Sharlatan Hellseher
Hi, Efraim Flashner writes: > On Fri, Jan 12, 2024 at 05:21:51PM +0100, Clément Lassieur wrote: >> On Thu, Jan 11 2024, Sharlatan Hellseher wrote: >> >> > Hi Guix! >> > >> > I am happy to have been granted commit access and I am ready to help >> > review pending issues and prepare queued packages for GNU packages in >> > astronomy. I would like to concentrate on the packages covered by the >> > Go, Lisp, Python, and Science teams. >> > >> > I would like to thank the Guix team for allowing me to become a >> > committer member. I am looking forward to continuing our collaboration. >> > >> > If anyone has a good patch review workflow using Emacs, Gnus, and Magit, >> > I would appreciate it ;-) Another easy option is to retrieve the Message-ID of any message in the series (via the source HTML of the mail archives, or directly from the mail headers if you have the mail locally), and then use B4, Linux style [0]. Example: suppose I wanted to apply and review this Perl series [1], then I could apply locally to my Guix git checkout with: --8<---cut here---start->8--- b4 shazam 'a6492643b9e32409b8420e7d54ba290d0937b838.1705443194.git.felix.lechner@leaseup.com' --8<---cut here---end--->8--- It should get the latest revisions if there are, and apply the full series in one go. [0] https://b4.docs.kernel.org/en/latest/maintainer/am-shazam.html [1] https://lists.gnu.org/archive/html/guix-patches/2024-01/msg01180.html -- Thanks, Maxim
Re: Commit Access: Sharlatan Hellseher
> Just my 2 cents, I imagine every person here has their own workflow. I personally don't have any yet (and I assume I'm not the only one) so I'm really thankful for your snippet. Cheers Bost
Re: Commit Access: Sharlatan Hellseher
On Thu, Jan 11, 2024 at 07:56 PM, Sharlatan Hellseher wrote: > > Hi Guix! > > I am happy to have been granted commit access and I am ready to help > review pending issues and prepare queued packages for GNU packages in > astronomy. I would like to concentrate on the packages covered by the > Go, Lisp, Python, and Science teams. > > I would like to thank the Guix team for allowing me to become a > committer member. I am looking forward to continuing our collaboration. > > If anyone has a good patch review workflow using Emacs, Gnus, and Magit, > I would appreciate it ;-) > > Regards, > Sharlatan Hellseher (Oleg) > Welcome and looking forward to your further Guix contributions! John
Re: Commit Access: Sharlatan Hellseher
On Fri, Jan 12, 2024 at 05:21:51PM +0100, Clément Lassieur wrote: > On Thu, Jan 11 2024, Sharlatan Hellseher wrote: > > > Hi Guix! > > > > I am happy to have been granted commit access and I am ready to help > > review pending issues and prepare queued packages for GNU packages in > > astronomy. I would like to concentrate on the packages covered by the > > Go, Lisp, Python, and Science teams. > > > > I would like to thank the Guix team for allowing me to become a > > committer member. I am looking forward to continuing our collaboration. > > > > If anyone has a good patch review workflow using Emacs, Gnus, and Magit, > > I would appreciate it ;-) > > Hey, welcome. > > I use this Emacs code to apply patches, with emacs-debbugs and Gnus. > > --8<---cut here---start->8--- > (defun my-apply-patch-or-abort () > (interactive) > (my-apply-patch-internal "git am || git am --abort")) > > (defun my-apply-patch () > (interactive) > (my-apply-patch-internal "git am --reject")) > > (defun my-apply-patch-or-abort-attachment (n) > (interactive "P") > (my-apply-patch-attachment-internal "git am || git am --abort" n)) > > (defun my-apply-patch-attachment (n) > (interactive "P") > (my-apply-patch-attachment-internal "git am --reject" n)) > > (defun my-apply-patch-attachment-internal (cmd n) > "C-u M-x my-apply-..." > (let ((git-dir "~/src/guix")) > (save-window-excursion > (gnus-article-part-wrapper >n >(lambda (handle) > (let ((default-directory git-dir)) >(mm-pipe-part handle cmd))) > > (defun my-apply-patch-internal (cmd) > "Works with a selection of articles." > (let ((git-dir "~/src/guix") > (articles (gnus-summary-work-articles nil))) > (save-window-excursion > (while articles > (gnus-summary-goto-subject (pop articles)) > (with-current-buffer gnus-summary-buffer > (let ((default-directory git-dir)) > (gnus-summary-save-in-pipe cmd)) > (gnus-article-hide-headers)) > --8<---cut here---end--->8--- > > Just my 2 cents, I imagine every person here has their own workflow. I'm going to suggest 'git am -3' that someone else here suggested to me. When a patch fails to apply cleanly git will try harder and leave the failed-to-apply bits inside the code, making it easier to clean-up the patch than to manually apply it. -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted signature.asc Description: PGP signature
Re: Commit Access: Sharlatan Hellseher
On Thu, Jan 11 2024, Sharlatan Hellseher wrote: > Hi Guix! > > I am happy to have been granted commit access and I am ready to help > review pending issues and prepare queued packages for GNU packages in > astronomy. I would like to concentrate on the packages covered by the > Go, Lisp, Python, and Science teams. > > I would like to thank the Guix team for allowing me to become a > committer member. I am looking forward to continuing our collaboration. > > If anyone has a good patch review workflow using Emacs, Gnus, and Magit, > I would appreciate it ;-) Hey, welcome. I use this Emacs code to apply patches, with emacs-debbugs and Gnus. --8<---cut here---start->8--- (defun my-apply-patch-or-abort () (interactive) (my-apply-patch-internal "git am || git am --abort")) (defun my-apply-patch () (interactive) (my-apply-patch-internal "git am --reject")) (defun my-apply-patch-or-abort-attachment (n) (interactive "P") (my-apply-patch-attachment-internal "git am || git am --abort" n)) (defun my-apply-patch-attachment (n) (interactive "P") (my-apply-patch-attachment-internal "git am --reject" n)) (defun my-apply-patch-attachment-internal (cmd n) "C-u M-x my-apply-..." (let ((git-dir "~/src/guix")) (save-window-excursion (gnus-article-part-wrapper n (lambda (handle) (let ((default-directory git-dir)) (mm-pipe-part handle cmd))) (defun my-apply-patch-internal (cmd) "Works with a selection of articles." (let ((git-dir "~/src/guix") (articles (gnus-summary-work-articles nil))) (save-window-excursion (while articles (gnus-summary-goto-subject (pop articles)) (with-current-buffer gnus-summary-buffer (let ((default-directory git-dir)) (gnus-summary-save-in-pipe cmd)) (gnus-article-hide-headers)) --8<---cut here---end--->8--- Just my 2 cents, I imagine every person here has their own workflow. Clément