Re: [Ksummit-discuss] Topics for the Maintainer's Summit

Rob Herring
2019-09-19T20:52:49Z

On Wed, Sep 18, 2019 at 8:48 PM Bjorn Helgaas <bjorn.helgaas@gmail.com> wrote:
>
> On Fri, Sep 6, 2019 at 5:21 AM Rob Herring <robherring2@gmail.com> wrote:
> > You might like my set of bailing wire using patchwork and mutt. It
> > works offline if you download the patchwork state beforehand and
> > queues up state changes. The basic flow is:
> >
> > Load the "New" list from PW (my PW instance is pre-filtered on paths,
> > so I don't have to sort thru everything on the DT list)
> > Check for multiple versions of patches, auto email on failure to add
> > my review tag, check for already applied (to next).
> > Iterate thru the patch list:
> > - Run checkpatch.pl
> > - open mutt for each patch. Mutt has the full DT list, so I can look
> > at the rest of the series if I want.
> > - After exiting mutt, prompt for PW state change
> > - Possibly apply it
> > - Generate replies for applied, reviewed-by or acked-by
> >
> > Happy to demo it at LPC if you are interested. You can find it
> > here[1]. The main script is pw-review.
>
> Thanks for the demo at LPC! I'm trying to understand how all the
> pieces fit together.
>
> How do you download the patchwork state beforehand for working
> offline? For me, actually working offline is nice but rare; my
> complaint is that I have to wait for every little interaction
> (delegating, superseding, changing state, etc) to talk to the server.
> The waits aren't long, but they make the whole process feel sluggish.

I just run 'pwclient list' formatted so I can parse it and dump into a
file. After that, the server interaction is mainly just doing
'pwclient update' commands in the review loop. In the offline case,
instead of running the commands, I just save them to another file to
run later.

> You mentioned some CI bits (to run checkpatch, change patchwork state,
> etc). Is there a way to look at that? I'm guessing you also have
> some mutt keybindings or macros?

Basically, I run this script which can run either locally on your
system or as a CI job:
https://gitlab.com/robherring/pw-utils/blob/master/pw-checks

This is the CI job:
https://gitlab.com/robherring/linux-dt-review/-/jobs/299584584

Either way, checks get added to the patch state. For example:
https://patchwork.ozlabs.org/patch/1164550/

A somewhat design goal I had was to not tie this into mutt too much.
About all I have is a git am key binding, but now I usually apply
using 'pwclient git-am' so a I get the tags. That's one thing that
doesn't work offline. Not a big deal for me as most things go thru
other maintainers. I just leave anything I'm applying pending and go
thru them again when online. It wouldn't be too hard to just download
all the patches from patchwork up front and then use that to apply
patches.

> Is http://patchwork.ozlabs.org/project/devicetree-bindings/list/ the
> patchwork you're using? ISTR one that showed the CI results.

Yes.

> I guess you keep your mbox trimmed somehow? Starting mutt on my
> linux-pci folder takes 5-10 seconds. But for this purpose there
> wouldn't really be a need to have the *entire* history, I guess.

Yeah, gmail limits it for me.

BTW, I'm using maildir currently. I switched from mbox at some point
as I had some issues with searching the mbox.

Rob
_______________________________________________
Ksummit-discuss mailing list
Ksummit-discuss@lists.linuxfoundation.org