Linux maintainer tooling and workflows
 help / color / Atom feed
* Multi-patch series broken in b4 master
@ 2021-06-11 11:55 Geert Uytterhoeven
  2021-06-11 12:37 ` Konstantin Ryabitsev
  0 siblings, 1 reply; 4+ messages in thread
From: Geert Uytterhoeven @ 2021-06-11 11:55 UTC (permalink / raw)
  To: Konstantin Ryabitsev; +Cc: tools, users

Hi Konstantin,

Commit c2e1aa9cbbf3d89a ("Save exploded pull requests as maildirs
as well") broke patch series containing more than one patch, as the
resulting .mbx file no longer has the needed separators between emails.

I first noticed when using formail and checkpatch:

    $ cat *mbx | formail -s scripts/checkpatch.pl
    WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
    #28:
    new file mode 100644

    WARNING: DT binding docs and includes should be a separate patch.
See: Documentation/devicetree/bindings/submitting-patches.rst

    WARNING: email address 'linux-clk@vger.kernel.org,
devicetree@vger.kernel.org' might be better as
'linux-clk@vger.kernel.org devicetree@vger.kernel.org'
    #131:
    To: linux-clk@vger.kernel.org, devicetree@vger.kernel.org

    WARNING: Unexpected content after email:
'linux-clk@vger.kernel.org, devicetree@vger.kernel.org', should be:
'linux-clk@vger.kernel.org (devicetree@vger.kernel.org)'
    #131:
    To: linux-clk@vger.kernel.org, devicetree@vger.kernel.org

    WARNING: Duplicate signature
    #144:
    Signed-off-by: Daniel Mack <daniel@zonque.org>
    [...]

But apparently "git am" has issues with the .mbx file, too:

b4 master:

    $ b4 am 20210519201551.690654-1-daniel@zonque.org
    Looking up https://lore.kernel.org/r/20210519201551.690654-1-daniel%40zonque.org
    Analyzing 7 messages in the thread
    Checking attestation on all messages, may take a moment...
    ---
      [PATCH v2 1/3] dt-bindings: clock: convert cs2000-cp bindings to yaml
        + Reviewed-by: Rob Herring <robh@kernel.org>
      [PATCH v2 2/3] dt-bindings: clock: cs2000-cp: Document aux-output-source
        + Reviewed-by: Rob Herring <robh@kernel.org>
      [PATCH v2 3/3] clk: cs2000-cp: Make aux output function controllable
    ---
    Total patches: 3
    ---
    Cover: ./v2_20210519_daniel_clk_cs2000_cp_make_aux_output_pin_configurable.cover
     Link: https://lore.kernel.org/r/20210519201551.690654-1-daniel@zonque.org
     Base: not found (applies clean to current tree)
           git am
./v2_20210519_daniel_clk_cs2000_cp_make_aux_output_pin_configurable.mbx
    $ git am -s *mbx
    Applying: dt-bindings: clock: convert cs2000-cp bindings to yaml

And the single commit contains the changes of all 3 patches.

b4 v0.7.2:

    $ b4 am 20210519201551.690654-1-daniel@zonque.org
    Looking up https://lore.kernel.org/r/20210519201551.690654-1-daniel%40zonque.org
    Analyzing 7 messages in the thread
    Checking attestation on all messages, may take a moment...
    ---
      [PATCH v2 1/3] dt-bindings: clock: convert cs2000-cp bindings to yaml
        + Reviewed-by: Rob Herring <robh@kernel.org>
      [PATCH v2 2/3] dt-bindings: clock: cs2000-cp: Document aux-output-source
        + Reviewed-by: Rob Herring <robh@kernel.org>
      [PATCH v2 3/3] clk: cs2000-cp: Make aux output function controllable
    ---
    Total patches: 3
    ---
    Cover: ./v2_20210519_daniel_clk_cs2000_cp_make_aux_output_pin_configurable.cover
     Link: https://lore.kernel.org/r/20210519201551.690654-1-daniel@zonque.org
     Base: not found (applies clean to current tree)
           git am
./v2_20210519_daniel_clk_cs2000_cp_make_aux_output_pin_configurable.mbx
    $ git am -s *mbx
    Applying: dt-bindings: clock: convert cs2000-cp bindings to yaml
    Applying: dt-bindings: clock: cs2000-cp: Document aux-output-source
    Applying: clk: cs2000-cp: Make aux output function controllable

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multi-patch series broken in b4 master
  2021-06-11 11:55 Multi-patch series broken in b4 master Geert Uytterhoeven
@ 2021-06-11 12:37 ` Konstantin Ryabitsev
  2021-06-11 14:16   ` Konstantin Ryabitsev
  0 siblings, 1 reply; 4+ messages in thread
From: Konstantin Ryabitsev @ 2021-06-11 12:37 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: tools, users

On Fri, Jun 11, 2021 at 01:55:29PM +0200, Geert Uytterhoeven wrote:
> Hi Konstantin,
> 
> Commit c2e1aa9cbbf3d89a ("Save exploded pull requests as maildirs
> as well") broke patch series containing more than one patch, as the
> resulting .mbx file no longer has the needed separators between emails.

Oooh, I think we discovered a bug in Python that doesn't actually write the
proper "From " header when running as_string() as opposed to as_bytes().

    $ cat test.py
    #!/usr/bin/env python3
    import sys
    import email.message

    msg = email.message.EmailMessage()
    msg.set_payload('Hello World')
    msg['Subject'] = 'Hello'
    msg['From'] = 'Me <me@foo.bar>'
    print('as_string:')
    print(msg.as_string(unixfrom=True))
    print()
    print('as_bytes:')
    print(msg.as_bytes(unixfrom=True).decode())

    $ python3 test.py
    as_string:
    Subject: Hello
    From: Me <me@foo.bar>

    Hello World

    as_bytes:
    From nobody Fri Jun 11 08:34:11 2021
    Subject: Hello
    From: Me <me@foo.bar>

    Hello World

According to the docs, the output should be identical, but the "From " part is
only present in the second version, which is specifically not what the docs
say should happen:
https://docs.python.org/3/library/email.message.html#email.message.EmailMessage.as_string

I'll open a bug with Python and work around this in b4.

Thanks for the report -- I'll push out a 0.7.3 shortly.

-K

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multi-patch series broken in b4 master
  2021-06-11 12:37 ` Konstantin Ryabitsev
@ 2021-06-11 14:16   ` Konstantin Ryabitsev
  2021-06-11 18:29     ` Geert Uytterhoeven
  0 siblings, 1 reply; 4+ messages in thread
From: Konstantin Ryabitsev @ 2021-06-11 14:16 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: tools, users

On Fri, Jun 11, 2021 at 08:37:56AM -0400, Konstantin Ryabitsev wrote:
> I'll open a bug with Python and work around this in b4.

Fixed in master, bug filed as https://bugs.python.org/issue44395

> Thanks for the report -- I'll push out a 0.7.3 shortly.

Looks like 0.7.x is unaffected, so no new 0.7 release necessary.

Thanks again,
-K

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multi-patch series broken in b4 master
  2021-06-11 14:16   ` Konstantin Ryabitsev
@ 2021-06-11 18:29     ` Geert Uytterhoeven
  0 siblings, 0 replies; 4+ messages in thread
From: Geert Uytterhoeven @ 2021-06-11 18:29 UTC (permalink / raw)
  To: Konstantin Ryabitsev; +Cc: tools, users

Hi Konstantin,

On Fri, Jun 11, 2021 at 4:17 PM Konstantin Ryabitsev
<konstantin@linuxfoundation.org> wrote:
> On Fri, Jun 11, 2021 at 08:37:56AM -0400, Konstantin Ryabitsev wrote:
> > I'll open a bug with Python and work around this in b4.
>
> Fixed in master, bug filed as https://bugs.python.org/issue44395

Thanks, fix confirmed!

> > Thanks for the report -- I'll push out a 0.7.3 shortly.
>
> Looks like 0.7.x is unaffected, so no new 0.7 release necessary.

Yes, v0.7.2 is fine.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, back to index

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-11 11:55 Multi-patch series broken in b4 master Geert Uytterhoeven
2021-06-11 12:37 ` Konstantin Ryabitsev
2021-06-11 14:16   ` Konstantin Ryabitsev
2021-06-11 18:29     ` Geert Uytterhoeven

Linux maintainer tooling and workflows

Archives are clonable:
	git clone --mirror https://lore.kernel.org/tools/0 tools/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 tools tools/ https://lore.kernel.org/tools \
		tools@linux.kernel.org
	public-inbox-index tools

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.linux.tools


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git