diff options
author | Eric Wong <e@80x24.org> | 2022-12-16 09:44:50 +0000 |
---|---|---|
committer | Eric Wong <mwrap-perl@80x24.org> | 2022-12-16 10:38:07 +0000 |
commit | 3e941dd301fc17905720060a5f6a0d2ea88d5810 (patch) | |
tree | 525c7a28848f75a8dcde19feebee6850519ef8ce | |
parent | 52d13d89eaedac53c32109b73af86d6d1f69eda3 (diff) | |
download | mwrap-3e941dd301fc17905720060a5f6a0d2ea88d5810.tar.gz |
Let's not increase requirements for running this project, since some users will be perfectly fine with curl and CSV output. Furthermore, Plack::Middleware::Deflater is not included in the main Plack distribution, so that requirement should be further separated since it's not required.
-rw-r--r-- | script/mwrap-rproxy | 7 | ||||
-rw-r--r-- | t/httpd.t | 4 |
2 files changed, 6 insertions, 5 deletions
diff --git a/script/mwrap-rproxy b/script/mwrap-rproxy index a5572c5..97cca8e 100644 --- a/script/mwrap-rproxy +++ b/script/mwrap-rproxy @@ -3,8 +3,8 @@ # License: GPL-2.0+ <https://www.gnu.org/licenses/gpl-2.0.txt> # thin wrapper for Devel::Mwrap::Rproxy use v5.12; # strict -use Devel::Mwrap::Rproxy; -use Plack::Runner; +eval { require Plack::Runner } or die "Plack not installed: $@\n"; +require Devel::Mwrap::Rproxy; use Getopt::Long qw(:config no_ignore_case no_auto_abbrev pass_through); my $usage = "$0 --socket-dir=/path/to/socket-dir [PLACKUP_OPTIONS]\n"; my $socket_dir; @@ -28,8 +28,7 @@ Inherited socket (fd=3) is non-blocking, making it blocking. $runner->set_options(listen_sock => $s); } } -if ($gz) { - require Plack::Middleware::Deflater; +if ($gz && eval { require Plack::Middleware::Deflater } and !$@) { $app = Plack::Middleware::Deflater->wrap($app); } $runner->run($app); @@ -87,7 +87,9 @@ SKIP: { } SKIP: { - eval { require HTTP::Tiny } or skip 'HTTP::Tiny missing', 1; + for my $m (qw(Plack::Util HTTP::Tiny)) { + eval "require $m" or skip "$m missing", 1; + } my $srv = IO::Socket::INET->new(LocalAddr => '127.0.0.1', ReuseAddr => 1, Proto => 'tcp', Type => SOCK_STREAM, |