From: Eric Wong Date: Mon, 27 Sep 2021 04:59:30 +0000 (+0000) Subject: lei rediff: quiet warnings from Import and Eml X-Git-Tag: v1.7.0~259 X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=commitdiff_plain;h=c5b8b0cbc72b8133c70d68668047219342e886d1 lei rediff: quiet warnings from Import and Eml lei rediff is expected to see partial patch fragments and such, so silence warnings when something isn't exactly a valid email message. --- diff --git a/lib/PublicInbox/LeiRediff.pm b/lib/PublicInbox/LeiRediff.pm index ea9b2a64..f6960560 100644 --- a/lib/PublicInbox/LeiRediff.pm +++ b/lib/PublicInbox/LeiRediff.pm @@ -193,8 +193,15 @@ sub extract_oids { # Eml each_part callback sub input_eml_cb { # callback for all emails my ($self, $eml) = @_; - $self->{tmp_sto}->add_eml($eml); - $self->{tmp_sto}->done; + { + local $SIG{__WARN__} = sub { + return if "@_" =~ /^no email in From: .*? or Sender:/; + return if PublicInbox::Eml::warn_ignore(@_); + warn @_; + }; + $self->{tmp_sto}->add_eml($eml); + $self->{tmp_sto}->done; + } $eml->each_part(\&extract_oids, $self, 1); } diff --git a/t/solver_git.t b/t/solver_git.t index d5f4c4a0..3c0b7f65 100644 --- a/t/solver_git.t +++ b/t/solver_git.t @@ -93,6 +93,7 @@ index 15ac20eb..771486c4 EOM like($lei_out, qr/\Q$exp\E/, 'preserve mode, regen header + context from -U0 patch'); + is($lei_err, '', 'no warnings from bare patch'); my $e = { GIT_DIR => "$ENV{HOME}/.local/share/lei/store/ALL.git" }; my @x = xqx([qw(git cat-file --batch-all-objects --batch-check)], $e); is_deeply(\@x, [], 'no objects stored') or diag explain(\@x);