about summary refs log tree commit
path: root/ci
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-06-13 02:26:30 +0000
committerEric Wong <e@80x24.org>2019-06-13 02:27:21 +0000
commitf4dbd80157bd785cf5d863d517b7334bd2795bab (patch)
tree1211480d695e54b177709c5963d95a84b801033d /ci
parentac8fb90b7a20e790fc5e927ffd8134b6a5c2661c (diff)
downloadpublic-inbox-f4dbd80157bd785cf5d863d517b7334bd2795bab.tar.gz
Digest::SHA is the most notable missing package at runtime
for a minimal system.

Tests don't run at all without Test::Simple (or Test::More).
Plack::Test is also a separate package, too...

Also, the package for IO::Compress::Gzip should be IO::Compress;
as perl-PerlIO-gzip is a different thing entirely which is not
relevant to our needs.

Test::HTTP::Server::Simple doesn't seem required at all for Plack
tests.

ExtUtils::MakeMaker needs to be documented as a install dependency
for people installing this, too; since AFAIK public-inbox is not
yet in any distros.
Diffstat (limited to 'ci')
-rwxr-xr-xci/deps.perl32
1 files changed, 27 insertions, 5 deletions
diff --git a/ci/deps.perl b/ci/deps.perl
index faca4590..62870c1f 100755
--- a/ci/deps.perl
+++ b/ci/deps.perl
@@ -9,9 +9,11 @@ my $usage = "$0 PKG_FMT PROFILE [PROFILE_MOD]";
 my $pkg_fmt = shift;
 @ARGV or die $usage, "\n";
 
+my @test_essential = qw(Test::Simple Plack::Test);
+
 # package profiles
 my $profiles = {
-        # the smallest possible profile
+        # the smallest possible profile for testing
         # TODO: trim this, Plack pulls in Filesys::Notify::Simple,
         # and we don't need that for mda-only installs
         essential => [ qw(
@@ -19,14 +21,16 @@ my $profiles = {
                 perl
                 Date::Parse
                 Devel::Peek
+                Digest::SHA
                 Email::Simple
                 Email::MIME
                 Email::MIME::ContentType
                 Encode
+                ExtUtils::MakeMaker
                 Filesys::Notify::Simple
                 Plack
                 URI::Escape
-                ) ],
+                ), @test_essential ],
 
         # everything optional for normal use
         optional => [ qw(
@@ -44,10 +48,9 @@ my $profiles = {
                 xapian-compact
                 ) ],
 
-        # developer stuff
+        # optional developer stuff
         devtest => [ qw(
                 IPC::Run
-                Test::HTTP::Server::Simple
                 XML::Feed
                 curl
                 w3m
@@ -86,22 +89,41 @@ my $non_auto = {
                 deb => 'perl', # libperl5.XX, but the XX varies
                 pkg => 'perl5',
         },
+        'Digest::SHA' => {
+                deb => 'perl', # libperl5.XX, but the XX varies
+                pkg => 'perl5',
+        },
         'Encode' => {
                 deb => 'perl', # libperl5.XX, but the XX varies
                 pkg => 'perl5',
                 rpm => 'perl-Encode',
         },
+        'ExtUtils::MakeMaker' => {
+                deb => 'perl', # perl-modules-5.xx
+                pkg => 'perl5',
+                rpm => 'perl-ExtUtils-MakeMaker',
+        },
         'IO::Compress::Gzip' => {
                 deb => 'perl', # perl-modules-5.xx
                 pkg => 'perl5',
-                rpm => 'perl-PerlIO-gzip',
+                rpm => 'perl-IO-Compress',
         },
         'DBD::SQLite' => { deb => 'libdbd-sqlite3-perl' },
+        'Plack::Test' => {
+                deb => 'libplack-perl',
+                pkg => 'p5-Plack',
+                rpm => 'perl-Plack-Test',
+        },
         'URI::Escape' => {
                 deb => 'liburi-perl',
                 pkg => 'p5-URI',
                 rpm => 'perl-URI',
         },
+        'Test::Simple' => {
+                deb => 'perl', # perl-modules-5.XX, but the XX varies
+                pkg => 'perl5',
+                rpm => 'perl-Test-Simple',
+        },
         'highlight.pm' => {
                 deb => 'libhighlight-perl',
                 pkg => [],