tools.linux.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kyle Meyer <kyle@kyleam.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Konstantin Ryabitsev <konstantin@linuxfoundation.org>,
	tools@linux.kernel.org, users@linux.kernel.org
Subject: [PATCH b4 0/2] Avoid decoding errors when extracting message ID from stdin
Date: Sun, 18 Jul 2021 00:34:04 -0400	[thread overview]
Message-ID: <20210718043406.26727-1-kyle@kyleam.com> (raw)
In-Reply-To: <20210717212631-mutt-send-email-mst@kernel.org>

Michael S. Tsirkin writes:

> On Sat, Jul 17, 2021 at 05:21:30PM -0400, Kyle Meyer wrote:
>> Michael S. Tsirkin writes:
>> 
>> > Passing message id
>> > bbe52a89-c7ea-c155-6226-0397f223cd80@linux.alibaba.com to b4
>> > gives this backtrace:
>> >
>> > Traceback (most recent call last):
>> > [....]
>> >   File "/scm/b4/b4/__init__.py", line 2072, in get_msgid_from_stdin
>> >     message = email.message_from_string(sys.stdin.read())
>> >   File "/usr/lib64/python3.9/codecs.py", line 322, in decode
>> >     (result, consumed) = self._buffer_decode(data, self.errors, final)
>> > UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd4 in position 5886: invalid continuation byte
>> >
>> > mutt does not seem to have trouble decoding this ... weird.
>> 
>> I'm confused by that backtrace.  I think get_msgid_from_stdin() should
>> be called only when a message is fed on stdin.  You say you're passing a
>> message ID.  That's as a positional argument, right?
>
> Sorry. I passed the message on the stdin. I supplied the
> message ID so you can get the original from the list archives.
>
> To reproduce:
>
> wget -O - https://lore.kernel.org/lkml/bbe52a89-c7ea-c155-6226-0397f223cd80@linux.alibaba.com/raw | b4 mbox

Thanks.  I can trigger that on my end too.  Here's a possible fix.
The first patch is the actual fix.  The second patch makes this code
path do a little less work but isn't necessary.

  [1/2] Avoid decoding errors when extracting message ID from stdin
  [2/2] Parse just headers when extracting message ID from stdin mbox

 b4/__init__.py | 4 +++-
 b4/pr.py       | 5 ++++-
 2 files changed, 7 insertions(+), 2 deletions(-)


base-commit: 06cc7c8820aea85d1329911b785d7bf4ecaacb1f
-- 
2.32.0


  reply	other threads:[~2021-07-18  4:34 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-17 20:50 utf-8 issues on b4 master Michael S. Tsirkin
2021-07-17 21:21 ` Kyle Meyer
2021-07-18  1:39   ` Michael S. Tsirkin
2021-07-18  4:34     ` Kyle Meyer [this message]
2021-07-18  4:34       ` [PATCH b4 1/2] Avoid decoding errors when extracting message ID from stdin Kyle Meyer
2021-07-18  4:34       ` [PATCH b4 2/2] Parse just headers when extracting message ID from stdin mbox Kyle Meyer
2021-07-18  4:45         ` Kyle Meyer
2021-08-03 16:03       ` [PATCH b4 0/2] Avoid decoding errors when extracting message ID from stdin Konstantin Ryabitsev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210718043406.26727-1-kyle@kyleam.com \
    --to=kyle@kyleam.com \
    --cc=konstantin@linuxfoundation.org \
    --cc=mst@redhat.com \
    --cc=tools@linux.kernel.org \
    --cc=users@linux.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).