* [PATCH 1/7] search: support multiple From/To/Cc/Subject headers
2019-10-24 0:12 6% [PATCH 0/7] redundant header madness Eric Wong
@ 2019-10-24 0:12 7% ` Eric Wong
0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2019-10-24 0:12 UTC (permalink / raw)
To: meta
We can easily support searching on messages with
multiple From/To/Cc/Subject headers just like we
do with multiple Message-ID headers.
This matches the normal mutt pager display behavior.
---
lib/PublicInbox/SearchMsg.pm | 4 ++--
t/v2reindex.t | 16 ++++++++++++----
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/lib/PublicInbox/SearchMsg.pm b/lib/PublicInbox/SearchMsg.pm
index adadf92e..7561e7f2 100644
--- a/lib/PublicInbox/SearchMsg.pm
+++ b/lib/PublicInbox/SearchMsg.pm
@@ -107,8 +107,8 @@ sub __hdr ($$) {
return $val if defined $val;
my $mime = $self->{mime} or return;
- $val = $mime->header($field);
- $val = '' unless defined $val;
+ my @raw = $mime->header($field);
+ $val = join(', ', @raw);
$val =~ tr/\t\n/ /;
$val =~ tr/\r//d;
$self->{$field} = $val;
diff --git a/t/v2reindex.t b/t/v2reindex.t
index 52711f8f..3e56ddfa 100644
--- a/t/v2reindex.t
+++ b/t/v2reindex.t
@@ -439,7 +439,7 @@ ok(!-d $xap, 'Xapian directories removed again');
my @warn;
local $SIG{__WARN__} = sub { push @warn, @_ };
my %config = %$ibx_config;
- $config{indexlevel} = 'basic';
+ $config{indexlevel} = 'medium';
my $ibx = PublicInbox::Inbox->new(\%config);
my $im = PublicInbox::V2Writable->new($ibx);
my $m3 = PublicInbox::MIME->new(<<'EOF');
@@ -447,7 +447,7 @@ Date: Tue, 24 May 2016 14:34:22 -0700 (PDT)
Message-Id: <20160524.143422.552507610109476444.d@example.com>
To: t@example.com
Cc: c@example.com
-Subject: Re: [PATCH v2 2/2]
+Subject: Re: [PATCH v2 2/2] uno
From: <f@example.com>
In-Reply-To: <1463825855-7363-2-git-send-email-y@example.com>
References: <1463825855-7363-1-git-send-email-y@example.com>
@@ -456,14 +456,14 @@ Date: Wed, 25 May 2016 10:01:51 +0900
From: h@example.com
To: g@example.com
Cc: m@example.com
-Subject: Re: [PATCH]
+Subject: Re: [PATCH] dos
Message-ID: <20160525010150.GD7292@example.com>
References: <1463498133-23918-1-git-send-email-g+r@example.com>
In-Reply-To: <1463498133-23918-1-git-send-email-g+r@example.com>
From: s@example.com
To: h@example.com
Cc: m@example.com
-Subject: [PATCH 12/13]
+Subject: [PATCH 12/13] tres
Date: Wed, 01 Jun 2016 01:32:35 +0300
Message-ID: <1923946.Jvi0TDUXFC@wasted.example.com>
In-Reply-To: <13205049.n7pM8utpHF@wasted.example.com>
@@ -495,6 +495,14 @@ EOF
eval { $im->index_sync({reindex=>1}) };
is($@, '', 'no error from reindexing after reused Message-ID (x3)');
is_deeply(\@warn, [], 'no warnings on reindex');
+
+ my %uniq;
+ for my $s (qw(uno dos tres)) {
+ my $msgs = $ibx->search->query("s:$s");
+ is(scalar(@$msgs), 1, "only one result for `$s'");
+ $uniq{$msgs->[0]->{num}}++;
+ }
+ is_deeply([values %uniq], [3], 'search on different subjects');
}
done_testing();
^ permalink raw reply related [relevance 7%]
* [PATCH 0/7] redundant header madness
@ 2019-10-24 0:12 6% Eric Wong
2019-10-24 0:12 7% ` [PATCH 1/7] search: support multiple From/To/Cc/Subject headers Eric Wong
0 siblings, 1 reply; 2+ results
From: Eric Wong @ 2019-10-24 0:12 UTC (permalink / raw)
To: meta
Garbage in, garbage out. Since we try to never drop messages in
v2, we now better support horrible messages with redundant and
confusing headers in the HTML view and search indices.
I'm a little iffy on adding more support to X-Alt-Message-IDs
because it's a gross hack; but so was injecting new Message-IDs
to support different messages with different content.
And I very much want NNTP clients to be able to build partial
mirrors without relying on expensive git clones. Those mirrors
should still be able to lookup messages by whatever Message-IDs
the message was known by.
Eric Wong (7):
search: support multiple From/To/Cc/Subject headers
view: display redundant headers in permalink
view: move '<' and '>' outside <a>
view: improve warning for multiple Message-IDs
linkify: support adding "(raw)" link for Message-IDs
# next two are RFCs but I'm leaning heavily on supporting them:
index: allow search/lookups on X-Alt-Message-ID
view: show X-Alt-Message-ID in permalink view, too
lib/PublicInbox/Linkify.pm | 31 ++++++++++
lib/PublicInbox/MID.pm | 27 +++++++--
lib/PublicInbox/OverIdx.pm | 4 +-
lib/PublicInbox/SearchIdx.pm | 4 +-
lib/PublicInbox/SearchMsg.pm | 4 +-
lib/PublicInbox/View.pm | 106 ++++++++++++++++++++---------------
t/mid.t | 7 ++-
t/psgi_v2.t | 2 +-
t/v2reindex.t | 16 ++++--
t/v2writable.t | 16 ++++++
10 files changed, 153 insertions(+), 64 deletions(-)
^ permalink raw reply [relevance 6%]
Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2019-10-24 0:12 6% [PATCH 0/7] redundant header madness Eric Wong
2019-10-24 0:12 7% ` [PATCH 1/7] search: support multiple From/To/Cc/Subject headers Eric Wong
Code repositories for project(s) associated with this public inbox
https://80x24.org/public-inbox.git
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).