From: Eric Wong <e@yhbt.net>
To: Leah Neukirchen <leah@vuxu.org>
Cc: meta@public-inbox.org
Subject: weird From: lines [was: Two small issues when importing old archives]
Date: Tue, 25 Feb 2020 09:28:06 +0000 [thread overview]
Message-ID: <20200225092806.GB382@dcvr> (raw)
In-Reply-To: <87h7zfemur.fsf@vuxu.org>
Leah Neukirchen <leah@vuxu.org> wrote:
> 2) Weird From: lines crash the whole import
>
> From: "=?iso-8859-1?Q?Jochen_K=FCpper?= <usenet"@jochen-kuepper.de
>
> This funny line broke import_maildir:
>
> fatal: Missing > in ident string: =?iso-8859-1?Q?Jochen_K=FCpper?= usenet <"=?iso-8859-1?Q?Jochen_K=FCpper?= <usenet"@jochen-kuepper.de> 1101853296 +0100
> fast-import: dumping crash report to /var/lib/public-inbox/repositories/ding.git/fast_import_crash_31402
> EOF from fast-import: at /usr/share/perl5/vendor_perl/PublicInbox/Import.pm line 96, <$r> line 54681.
>
> I fixed it manually. (But I think it's actually a valid mail address,
> even in this botched state.) I'm not sure what added the ">", it's
> not in the original mail.
>
> (I use public-inbox-1.3.0/git-2.25.0 on Void Linux.)
Gah, this looks like it's because Email::Address::XS leaves a
"<" in the name... Perhaps Import should delete all [<>]
characters unconditionally? (or swap in appropriate Unicode
homographs and assume users have the necessary glyphs...)
---------8<----------
Subject: [RFC] t/address.t: dump failing case
"PublicInbox::Address" (w/o "PP") is Email::Address::XS 1.04
from Debian 10:
PublicInbox::Address names: $VAR1 = [
'=?iso-8859-1?Q?Jochen_K=FCpper?= <usenet'
];
PublicInbox::Address emails: $VAR1 = [
'"=?iso-8859-1?Q?Jochen_K=FCpper?= <usenet"@example.de'
];
PublicInbox::AddressPP names: $VAR1 = [
'=?iso-8859-1?Q?Jochen_K=FCpper?='
];
PublicInbox::AddressPP emails: $VAR1 = [
'usenet"@example.de'
];
---
t/address.t | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/t/address.t b/t/address.t
index 6f4bff6c..8c39f04b 100644
--- a/t/address.t
+++ b/t/address.t
@@ -14,6 +14,11 @@ sub test_pkg {
[$emails->('User <e@example.com>, e@example.org')],
'address extraction works as expected');
+ my $odd = '"=?iso-8859-1?Q?Jochen_K=FCpper?= <usenet"@example.de';
+ use Data::Dumper;
+ diag "$pkg names: " . Dumper([$names->($odd)]);
+ diag "$pkg emails: " . Dumper([$emails->($odd)]);
+
is_deeply(['user@example.com'],
[$emails->('<user@example.com (Comment)>')],
'comment after domain accepted before >');
next prev parent reply other threads:[~2020-02-25 9:28 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-24 20:45 Two small issues when importing old archives Leah Neukirchen
2020-02-25 9:23 ` [RFC] msgtime: do not require tz offset with Date::Parse fallback Eric Wong
2020-03-01 23:31 ` [pushed] msgtime: assume +0000 if TZ missing when using Date::Parse Eric Wong
2020-02-25 9:28 ` Eric Wong [this message]
2020-02-26 10:21 ` [PATCH] import: drop '<' and '>' characters in addresses Eric Wong
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
List information: https://public-inbox.org/README
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200225092806.GB382@dcvr \
--to=e@yhbt.net \
--cc=leah@vuxu.org \
--cc=meta@public-inbox.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 read-only IMAP folder(s) and NNTP newsgroup(s).