From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-3.7 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id C229F2018B for ; Fri, 24 Jun 2016 20:47:18 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 3/6] document Filesys::Notify::Simple dependency Date: Fri, 24 Jun 2016 20:47:15 +0000 Message-Id: <20160624204718.27540-3-e@80x24.org> In-Reply-To: <20160624204718.27540-1-e@80x24.org> References: <20160624204718.27540-1-e@80x24.org> List-Id: And improve documentation for existing dependencies, too. --- INSTALL | 24 ++++++++++++++---------- lib/PublicInbox/WatchMaildir.pm | 2 ++ t/watch_maildir.t | 5 +++++ 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/INSTALL b/INSTALL index e7d4b75..7f12fbe 100644 --- a/INSTALL +++ b/INSTALL @@ -19,8 +19,8 @@ standard MakeMaker installation (Perl) make test make install # root permissions may be needed -Requirements (server MDA) -------------------------- +Requirements +------------ * git * SpamAssassin (spamc/spamd) @@ -36,19 +36,23 @@ Optional modules: - Plack[1] libplack-perl - Mail::Thread (2.5+)[1] libmail-thread-perl - URI::Escape[1] liburi-perl - - Search::Xapian[3] libsearch-xapian-perl - - IO::Compress::Gzip[3] libio-compress-perl + - Search::Xapian[2][3] libsearch-xapian-perl + - IO::Compress::Gzip[3] perl-modules (or libio-compress-perl) - DBI[3] libdbi-perl - - DBD::SQLite[3] libdbd-sqlite3-perl + - DBD::SQLite[2][3] libdbd-sqlite3-perl - Danga::Socket[4] libdanga-socket-perl - - Net::Server[4] libnet-server-perl + - Net::Server[5] libnet-server-perl + - Filesys::Notify::Simple[6] libfilesys-notify-simple-perl -[1] - Only required for serving/generating Atom and HTML pages. -[3] - Optional for HTML web interface and HTTP/NNTP servers -[4] - Optional for HTTP and NNTP servers +[1] - Optional, needed for serving/generating Atom and HTML pages +[2] - Optional, only required for NNTP server +[3] - Optional, needed for gzipped mbox support over HTTP +[4] - Optional, needed for bundled HTTP and NNTP servers +[5] - Optional, needed for standalone daemonization of HTTP+NNTP servers +[6] - Optional, needed for public-inbox-watch Maildir watcher When installing Search::Xapian, make sure the underlying Xapian -is patched against the index corruption bug documented in: +installation is not affected by an index corruption bug: https://bugs.debian.org/808610 diff --git a/lib/PublicInbox/WatchMaildir.pm b/lib/PublicInbox/WatchMaildir.pm index 4468a44..abf1df7 100644 --- a/lib/PublicInbox/WatchMaildir.pm +++ b/lib/PublicInbox/WatchMaildir.pm @@ -144,6 +144,8 @@ sub watch { my $cb = sub { _try_fsn_paths($self, \@_) }; my $mdir = $self->{mdir}; + # lazy load here, we may support watching via IMAP IDLE + # in the future... require Filesys::Notify::Simple; my $watcher = Filesys::Notify::Simple->new($mdir); $watcher->wait($cb) while (1); diff --git a/t/watch_maildir.t b/t/watch_maildir.t index e8c9740..be1a312 100644 --- a/t/watch_maildir.t +++ b/t/watch_maildir.t @@ -4,6 +4,11 @@ use Test::More; use File::Temp qw/tempdir/; use Email::MIME; use PublicInbox::Config; +my @mods = qw(Filesys::Notify::Simple); +foreach my $mod (@mods) { + eval "require $mod"; + plan skip_all => "$mod missing for watch_maildir.t" if $@; +} my $tmpdir = tempdir('watch_maildir-XXXXXX', TMPDIR => 1, CLEANUP => 1); my $git_dir = "$tmpdir/test.git";