]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/ExtSearch.pm
gcf2 + extsearch: check for unlinked files on Linux
[public-inbox.git] / lib / PublicInbox / ExtSearch.pm
index 2bcdece61e3a4e95090fcbb1aca81f69dedbd975..cd7cba2e88ce217bbc036a1655f479b291304efe 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2020 all contributors <meta@public-inbox.org>
+# Copyright (C) 2020-2021 all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 
 # Read-only external (detached) index for cross inbox search.
@@ -19,6 +19,7 @@ sub new {
        my ($class, $topdir) = @_;
        bless {
                topdir => $topdir,
+               -primary_address => 'unknown@example.com',
                # xpfx => 'ei15'
                xpfx => "$topdir/ei".PublicInbox::Search::SCHEMA_VERSION
        }, $class;
@@ -32,12 +33,18 @@ sub misc {
 # same as per-inbox ->over, for now...
 sub over {
        my ($self) = @_;
-       $self->{over} //= PublicInbox::Over->new("$self->{xpfx}/over.sqlite3");
+       $self->{over} //= do {
+               PublicInbox::Inbox::_cleanup_later($self);
+               PublicInbox::Over->new("$self->{xpfx}/over.sqlite3");
+       };
 }
 
 sub git {
        my ($self) = @_;
-       $self->{git} //= PublicInbox::Git->new("$self->{topdir}/ALL.git");
+       $self->{git} //= do {
+               PublicInbox::Inbox::_cleanup_later($self);
+               PublicInbox::Git->new("$self->{topdir}/ALL.git");
+       };
 }
 
 # returns a hashref of { $NEWSGROUP_NAME => $ART_NO } using the `xref3' table
@@ -105,12 +112,8 @@ sub description {
                '$EXTINDEX_DIR/description missing';
 }
 
-sub cloneurl { [] } # TODO
-
-sub base_url { 'https://example.com/TODO/' }
-sub nntp_url { [] }
-
 no warnings 'once';
+*base_url = \&PublicInbox::Inbox::base_url;
 *smsg_eml = \&PublicInbox::Inbox::smsg_eml;
 *smsg_by_mid = \&PublicInbox::Inbox::smsg_by_mid;
 *msg_by_mid = \&PublicInbox::Inbox::msg_by_mid;