From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-3.2 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00, BODY_8BITS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id BA5D81F953; Thu, 30 Dec 2021 19:17:42 +0000 (UTC) Date: Thu, 30 Dec 2021 19:17:42 +0000 From: Eric Wong To: Uwe =?utf-8?Q?Kleine-K=C3=B6nig?= Cc: Lucas Nussbaum , 1002219@bugs.debian.org, meta@public-inbox.org, Debian Perl Group Subject: [PATCH] t/eml.t: ignore newer Email::MIME behavior Message-ID: <20211230191742.M703794@dcvr> References: <8509eb16-40e8-6aa4-a032-668f2c636228@kleine-koenig.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <8509eb16-40e8-6aa4-a032-668f2c636228@kleine-koenig.org> List-Id: Uwe Kleine-König wrote: > Hello, > > adding the Debian Perl Group to Cc, maybe they can help here. > (for context look at https://bugs.debian.org/1002219) > > On 12/30/21 10:12, Uwe Kleine-König wrote: > > I got a bug report against the public-inbox 1.6.1 package about a > > failing test, see below for the whole output. I didn't have time yet to > > look into it, so this is just a heads up to make you aware. If someone > > has a hint what to do, this would be greatly appreciated. Maybe just > > updating to 1.7 will help? > > > > Best regards > > Uwe > > > > On 12/21/21 17:34, Lucas Nussbaum wrote: > > > > #   Failed test 'filename decoded' > > > > #   at t/eml.t line 407. > > > > #          got: '=?utf-8?q?vtpm-makefile.patch?=' > > > > #     expected: 'vtpm-makefile.patch' > > > > # Looks like you failed 1 test of 146. > > > > t/eml.t ...................... > > I can reproduce this problem with 1.6.1 checked out. I played a bit around > (suffering from my weak perl foo) and found that when I downgrade > libemail-mime-perl from 1.952-1 (i.e. Debian unstable's version) to 1.949-1 > (i.e. Debian stable's version), this works. > > The reproducer is: > > $ perl -e 'use Email::MIME; print Email::MIME->new("Content-Type: > text/x-patch; name=\"=?utf-8?q?vtpm-fakefile.patch?=\"\nContent-Disposition: > attachment; filename=\"=?utf-8?q?vtpm-makefile.patch?=\"\n\n")->filename;' > > which emits "vtpm-makefile.patch" with 1.949-1 (as public-inbox expects), > but =?utf-8?q?vtpm-makefile.patch?= with 1.952-1. > > So the key question is: Is the test correct and his is a regression in > libemail-mime-perl, or is the test wrong and we need to fix the test (and > PublicInbox::Eml)? I thought I sent a fix to this; but I nuked the root FS on one of my workstations on accident :< Still recovering... --------------8<------------- Subject: [PATCH] t/eml.t: ignore newer Email::MIME behavior Once again, our message parser class matches the more tolerant behavior of older Email::MIME releases in order to handle ancient messages. This fixes , but dropping Email::MIME entirely from the test suite may be prudent in the future. --- t/eml.t | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/t/eml.t b/t/eml.t index 2d8993a5..2e6a441f 100644 --- a/t/eml.t +++ b/t/eml.t @@ -417,13 +417,14 @@ Content-Type: text/x-patch; name="=?utf-8?q?vtpm-fakefile.patch?=" Content-Disposition: attachment; filename="=?utf-8?q?vtpm-makefile.patch?=" EOF - is($cls->new($s)->filename, 'vtpm-makefile.patch', 'filename decoded'); + is($cls->new($s)->filename, 'vtpm-makefile.patch', + "filename decoded ($cls)") if $cls ne 'PublicInbox::MIME'; $s =~ s/^Content-Disposition:.*$//sm; is($cls->new($s)->filename, 'vtpm-fakefile.patch', "filename fallback ($cls)") if $cls ne 'PublicInbox::MIME'; is($cls->new($s)->content_type, 'text/x-patch; name="vtpm-fakefile.patch"', - 'matches Email::MIME output, "correct" or not'); + qq[matches Email::MIME output, "correct" or not ($cls)]); $s = <<'EOF'; Content-Type: multipart/foo; boundary=b