about summary refs log tree commit homepage
path: root/lib/PublicInbox
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-09-09 01:48:37 +0000
committerEric Wong <e@80x24.org>2023-09-09 11:54:30 +0000
commit43690b473b0c068e1587f93d1869aec95dbbc127 (patch)
treed662718b649cf1581396a795268b8acba31ac7c5 /lib/PublicInbox
parente1b57bd687c6a36f6b585db7c0b77dad1662c17f (diff)
downloadpublic-inbox-43690b473b0c068e1587f93d1869aec95dbbc127.tar.gz
This enables the t/pop3d.t test to pass when Parse::RecDescent
is not available.
Diffstat (limited to 'lib/PublicInbox')
-rw-r--r--lib/PublicInbox/IMAP.pm2
-rw-r--r--lib/PublicInbox/IMAPD.pm1
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/PublicInbox/IMAP.pm b/lib/PublicInbox/IMAP.pm
index 00f99ef7..3c64cefa 100644
--- a/lib/PublicInbox/IMAP.pm
+++ b/lib/PublicInbox/IMAP.pm
@@ -39,7 +39,6 @@ use PublicInbox::DS qw(now);
 use PublicInbox::GitAsyncCat;
 use Text::ParseWords qw(parse_line);
 use Errno qw(EAGAIN);
-use PublicInbox::IMAPsearchqp;
 
 my $Address;
 for my $mod (qw(Email::Address::XS Mail::Address)) {
@@ -1088,6 +1087,7 @@ sub search_uid_range { # long_response
 
 sub parse_imap_query ($$) {
         my ($self, $query) = @_;
+        # IMAPsearchqp gets loaded in IMAPD->refresh_groups
         my $q = PublicInbox::IMAPsearchqp::parse($self, $query);
         if (ref($q)) {
                 my $max = $self->{ibx}->over(1)->max;
diff --git a/lib/PublicInbox/IMAPD.pm b/lib/PublicInbox/IMAPD.pm
index 78323e57..bdadb7a3 100644
--- a/lib/PublicInbox/IMAPD.pm
+++ b/lib/PublicInbox/IMAPD.pm
@@ -55,6 +55,7 @@ sub _refresh_ibx { # pi_cfg->each_inbox cb
 sub refresh_groups {
         my ($self, $sig) = @_;
         my $pi_cfg = PublicInbox::Config->new;
+        require PublicInbox::IMAPsearchqp;
         $self->{mailboxes} = $pi_cfg->{-imap_mailboxes} // do {
                 my $mailboxes = $self->{mailboxes} = {};
                 my $cache = eval { $pi_cfg->ALL->misc->nntpd_cache_load } // {};