summaryrefslogtreecommitdiff
path: root/dev-perl/Plack
diff options
context:
space:
mode:
Diffstat (limited to 'dev-perl/Plack')
-rw-r--r--dev-perl/Plack/Manifest4
-rw-r--r--dev-perl/Plack/Plack-1.4.400.ebuild69
-rw-r--r--dev-perl/Plack/files/Plack-1.3.900-network-testing.patch196
-rw-r--r--dev-perl/Plack/metadata.xml85
4 files changed, 354 insertions, 0 deletions
diff --git a/dev-perl/Plack/Manifest b/dev-perl/Plack/Manifest
new file mode 100644
index 000000000000..cd59a322e6b6
--- /dev/null
+++ b/dev-perl/Plack/Manifest
@@ -0,0 +1,4 @@
+AUX Plack-1.3.900-network-testing.patch 6047 BLAKE2B 2293cc7cd0ae0b429b5923dd2e66e40c666f3336952463cbf574e636083139f9a66fc459d37e9f7ad19e8548efa19237e609c5a49e86f8fe4bb19d225ad937cf SHA512 214a2a2141f71875026ed25387d6076d62c0b4d0b912ebf475645b3a2948f41faa7d8826c46620682448a3b9916a53c3178858286551d542073c5b66112b4fce
+DIST Plack-1.0044.tar.gz 178730 BLAKE2B 60f6a900b1ebf05c48295ae679e7cda905441d4322929e9280aa87e6fda51a08e3fbaef37e2398fcfef3b39268f115603dcec2529dd135ddc86b79c9118da0c8 SHA512 a0dae77d507d4b4cf4192931470cf87f68f7027b2057ccdf757680f9e6584534ee0da79c508a44f9ea72426497e1dbbdb7acf6d7dfdf31698f4320f2c1f2ac61
+EBUILD Plack-1.4.400.ebuild 1773 BLAKE2B 53177c3eb9d01ac408a73cfcbcfe0bb200bf23901a6c7ddd3d329bbc959c864ae4693c794e4234d5bb7106522d630af26468cf87bf729dc55ed2359e40ffab95 SHA512 35ab555bd7073ce1c9d19af7e4786e839378785e5e9225950598e3acb612b9109cfef37c59e61f5c0178269392ed92fb47ace4d84a3dbf5a92a4b71669dddd2b
+MISC metadata.xml 5553 BLAKE2B 5b02f3ae63335b64b251a5310d3191beea142c599c6d19034096bd6ebbaa9a478ce8f533c3520550f7ee761859908bd327cf8b4d41deeaac73577bbfc2f160ec SHA512 13cbe0cf258311039d50b04983ea67eaa88beaffb9d4e8bb46ff1a985b8846b5e66fa9a284f38615c3aeb697ad9c62177b6bcbc0b9b47969a1e6d942580c4dfc
diff --git a/dev-perl/Plack/Plack-1.4.400.ebuild b/dev-perl/Plack/Plack-1.4.400.ebuild
new file mode 100644
index 000000000000..12d6fe10f28a
--- /dev/null
+++ b/dev-perl/Plack/Plack-1.4.400.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=MIYAGAWA
+DIST_VERSION=1.0044
+DIST_EXAMPLES=("eg/dot-psgi/*")
+inherit perl-module
+
+DESCRIPTION="Perl Superglue for Web frameworks and Web Servers (PSGI toolkit)"
+
+SLOT="0"
+KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86"
+IUSE="test minimal examples"
+PATCHES=(
+ "${FILESDIR}/${PN}-1.3.900-network-testing.patch"
+)
+RDEPEND="
+ !minimal? (
+ dev-perl/CGI-Compile
+ dev-perl/CGI-Emulate-PSGI
+ dev-perl/FCGI
+ dev-perl/FCGI-ProcManager
+ >=dev-perl/libwww-perl-5.814.0
+ >=dev-perl/Log-Dispatch-2.250.0
+ dev-perl/Log-Log4perl
+ dev-perl/Module-Refresh
+ )
+ >=dev-perl/Apache-LogFormat-Compiler-0.330.0
+ >=dev-perl/Cookie-Baker-0.70.0
+ >=dev-perl/Devel-StackTrace-1.230.0
+ >=dev-perl/Devel-StackTrace-AsHTML-0.110.0
+ >=dev-perl/File-ShareDir-1.0.0
+ dev-perl/Filesys-Notify-Simple
+ >=dev-perl/HTTP-Entity-Parser-0.170.0
+ >=dev-perl/HTTP-Headers-Fast-0.180.0
+ >=dev-perl/HTTP-Message-5.814.0
+ >=virtual/perl-HTTP-Tiny-0.34.0
+ >=dev-perl/Hash-MultiValue-0.50.0
+ >=virtual/perl-Pod-Parser-1.360.0
+ >=dev-perl/Stream-Buffered-0.20.0
+ >=dev-perl/Test-TCP-2.150.0
+ dev-perl/Try-Tiny
+ >=dev-perl/URI-1.590.0
+ >=dev-perl/WWW-Form-UrlEncoded-0.230.0
+ virtual/perl-parent
+"
+DEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+ >=dev-perl/File-ShareDir-Install-0.60.0
+ test? (
+ !minimal? (
+ dev-perl/Authen-Simple-Passwd
+ dev-perl/HTTP-Request-AsCGI
+ dev-perl/HTTP-Server-Simple-PSGI
+ dev-perl/Log-Dispatch-Array
+ dev-perl/LWP-Protocol-http10
+ dev-perl/MIME-Types
+ >=dev-perl/Test-MockTime-HiRes-0.60.0
+ )
+ dev-perl/Test-Requires
+ >=virtual/perl-Test-Simple-0.880.0
+ )
+"
+src_test() {
+ perl_rm_files "t/author-pod-syntax.t"
+ perl-module_src_test
+}
diff --git a/dev-perl/Plack/files/Plack-1.3.900-network-testing.patch b/dev-perl/Plack/files/Plack-1.3.900-network-testing.patch
new file mode 100644
index 000000000000..6d703a9e1fc6
--- /dev/null
+++ b/dev-perl/Plack/files/Plack-1.3.900-network-testing.patch
@@ -0,0 +1,196 @@
+From 5f5a0a34556d0ae739f79d7c148d24fcf3ff8557 Mon Sep 17 00:00:00 2001
+From: Kent Fredric <kentfredric@gmail.com>
+Date: Wed, 3 Aug 2016 01:26:17 +1200
+Subject: [PATCH] Fence of Network IO with NO_NETWORK_TESTING
+
+This is a workaround for #477 but doesn't actually fix the underlying
+issue, merely recognises that some vendors are smart enough to
+anticipate Network IO will fail and integrate this ENV var to quickly
+avoid it.
+
+This precedent was established by Test::RequiresInternet as a result of
+a CPANworkers discussion, and Gentoo is known to export this variable
+within its tooling by default as a result.
+
+This doesn't actually test that binding a socket/IP will work, but this
+fence should be tested anyway, because security measures could result in
+attempted socket/IP binds getting SIGKILLed ( Sandbox )
+
+This commit hence addresses/fences only the problem cases listed in bug
+in depth.
+
+However, this commit targets to simply solve the known parts of the
+problem in the simplest way possible without any extra dependencies.
+
+The application of a BEGIN { } block and `print` was a design decision
+instead of using `Test::More` and `skip`, because the overhead of
+loading Test::More is quite high when you have lots of .t files, and
+Test2 further increases the load time.
+
+This load time is generally acceptable if you're actually running a
+dozen tests, but spinning up a full suite of Test::More to only then
+immediately exit with a skip is a lot of CPU load for relatively little
+benefit.
+---
+ t/Plack-Handler/standalone.t | 6 ++++++
+ t/Plack-Loader/shotgun.t | 6 ++++++
+ t/Plack-Middleware/component-leak.t | 7 +++++++
+ t/Plack-Middleware/error_document_streaming_app.t | 7 +++++++
+ t/Plack-Middleware/stacktrace/sigdie.t | 7 +++++++
+ t/Plack-Middleware/stacktrace/utf8.t | 7 +++++++
+ t/Plack-Middleware/urlmap_ports.t | 6 ++++++
+ t/Plack-Test/2args.t | 7 +++++++
+ t/Plack-Test/hello_server.t | 7 +++++++
+ t/Plack-Util/response_cb.t | 7 +++++++
+ 10 files changed, 67 insertions(+)
+
+diff --git a/t/Plack-Handler/standalone.t b/t/Plack-Handler/standalone.t
+index f5fcf26..b42de16 100644
+--- a/t/Plack-Handler/standalone.t
++++ b/t/Plack-Handler/standalone.t
+@@ -1,3 +1,9 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
+ use strict;
+ use warnings;
+ use Test::More;
+diff --git a/t/Plack-Loader/shotgun.t b/t/Plack-Loader/shotgun.t
+index cb7b95a..d9fe148 100644
+--- a/t/Plack-Loader/shotgun.t
++++ b/t/Plack-Loader/shotgun.t
+@@ -1,3 +1,9 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
+ use strict;
+ use warnings;
+ use Test::More;
+diff --git a/t/Plack-Middleware/component-leak.t b/t/Plack-Middleware/component-leak.t
+index 7cdab99..2acedd0 100644
+--- a/t/Plack-Middleware/component-leak.t
++++ b/t/Plack-Middleware/component-leak.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ package MyComponent;
+ use strict;
+ use warnings;
+diff --git a/t/Plack-Middleware/error_document_streaming_app.t b/t/Plack-Middleware/error_document_streaming_app.t
+index b177c53..c893e7b 100644
+--- a/t/Plack-Middleware/error_document_streaming_app.t
++++ b/t/Plack-Middleware/error_document_streaming_app.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use strict;
+ use warnings;
+ use FindBin;
+diff --git a/t/Plack-Middleware/stacktrace/sigdie.t b/t/Plack-Middleware/stacktrace/sigdie.t
+index dc82b2c..28747cf 100644
+--- a/t/Plack-Middleware/stacktrace/sigdie.t
++++ b/t/Plack-Middleware/stacktrace/sigdie.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use strict;
+ use warnings;
+ use Test::More;
+diff --git a/t/Plack-Middleware/stacktrace/utf8.t b/t/Plack-Middleware/stacktrace/utf8.t
+index 6d2f51f..77849dc 100644
+--- a/t/Plack-Middleware/stacktrace/utf8.t
++++ b/t/Plack-Middleware/stacktrace/utf8.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use strict;
+ use warnings;
+ use Test::More;
+diff --git a/t/Plack-Middleware/urlmap_ports.t b/t/Plack-Middleware/urlmap_ports.t
+index 9a0a9c0..4ff4ba5 100644
+--- a/t/Plack-Middleware/urlmap_ports.t
++++ b/t/Plack-Middleware/urlmap_ports.t
+@@ -1,3 +1,9 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
+ use strict;
+ use Test::More;
+ use Plack::App::URLMap;
+diff --git a/t/Plack-Test/2args.t b/t/Plack-Test/2args.t
+index 2942f93..a68481d 100644
+--- a/t/Plack-Test/2args.t
++++ b/t/Plack-Test/2args.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use Plack::Test;
+ use Test::More;
+ use HTTP::Request::Common;
+diff --git a/t/Plack-Test/hello_server.t b/t/Plack-Test/hello_server.t
+index 47ffb75..dc9f4bd 100644
+--- a/t/Plack-Test/hello_server.t
++++ b/t/Plack-Test/hello_server.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use Test::More;
+ use Plack::Test;
+
+diff --git a/t/Plack-Util/response_cb.t b/t/Plack-Util/response_cb.t
+index 813dc87..5cb31ba 100644
+--- a/t/Plack-Util/response_cb.t
++++ b/t/Plack-Util/response_cb.t
+@@ -1,3 +1,10 @@
++BEGIN {
++ if ( $ENV{NO_NETWORK_TESTING} ) {
++ print '1..0 # SKIP Network connections required for this test';
++ exit;
++ }
++}
++
+ use strict;
+ use warnings;
+ use Plack::Util;
+--
+2.9.2
+
diff --git a/dev-perl/Plack/metadata.xml b/dev-perl/Plack/metadata.xml
new file mode 100644
index 000000000000..0207d1837759
--- /dev/null
+++ b/dev-perl/Plack/metadata.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>perl@gentoo.org</email>
+ <name>Gentoo Perl Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpan">Plack</remote-id>
+ <remote-id type="cpan-module">HTTP::Message::PSGI</remote-id>
+ <remote-id type="cpan-module">HTTP::Server::PSGI</remote-id>
+ <remote-id type="cpan-module">Plack</remote-id>
+ <remote-id type="cpan-module">Plack::App::CGIBin</remote-id>
+ <remote-id type="cpan-module">Plack::App::Cascade</remote-id>
+ <remote-id type="cpan-module">Plack::App::Directory</remote-id>
+ <remote-id type="cpan-module">Plack::App::File</remote-id>
+ <remote-id type="cpan-module">Plack::App::PSGIBin</remote-id>
+ <remote-id type="cpan-module">Plack::App::URLMap</remote-id>
+ <remote-id type="cpan-module">Plack::App::WrapCGI</remote-id>
+ <remote-id type="cpan-module">Plack::Builder</remote-id>
+ <remote-id type="cpan-module">Plack::Component</remote-id>
+ <remote-id type="cpan-module">Plack::HTTPParser</remote-id>
+ <remote-id type="cpan-module">Plack::HTTPParser::PP</remote-id>
+ <remote-id type="cpan-module">Plack::Handler</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::Apache1</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::Apache2</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::Apache2::Registry</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::CGI</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::CGI::Writer</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::FCGI</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::HTTP::Server::PSGI</remote-id>
+ <remote-id type="cpan-module">Plack::Handler::Standalone</remote-id>
+ <remote-id type="cpan-module">Plack::LWPish</remote-id>
+ <remote-id type="cpan-module">Plack::Loader</remote-id>
+ <remote-id type="cpan-module">Plack::Loader::Delayed</remote-id>
+ <remote-id type="cpan-module">Plack::Loader::Restarter</remote-id>
+ <remote-id type="cpan-module">Plack::Loader::Shotgun</remote-id>
+ <remote-id type="cpan-module">Plack::MIME</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::AccessLog</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::AccessLog::Timed</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Auth::Basic</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::BufferedStreaming</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Chunked</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Conditional</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::ConditionalGET</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::ContentLength</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::ContentMD5</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::ErrorDocument</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::HTTPExceptions</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Head</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::IIS6ScriptNameFix</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::IIS7KeepAliveFix</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::JSONP</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::LighttpdScriptNameFix</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Lint</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Log4perl</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::LogDispatch</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::NullLogger</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::RearrangeHeaders</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Recursive</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Refresh</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Runtime</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::SimpleContentFilter</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::SimpleLogger</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::StackTrace</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::Static</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::XFramework</remote-id>
+ <remote-id type="cpan-module">Plack::Middleware::XSendfile</remote-id>
+ <remote-id type="cpan-module">Plack::Recursive::ForwardRequest</remote-id>
+ <remote-id type="cpan-module">Plack::Request</remote-id>
+ <remote-id type="cpan-module">Plack::Request::Upload</remote-id>
+ <remote-id type="cpan-module">Plack::Response</remote-id>
+ <remote-id type="cpan-module">Plack::Runner</remote-id>
+ <remote-id type="cpan-module">Plack::TempBuffer</remote-id>
+ <remote-id type="cpan-module">Plack::Test</remote-id>
+ <remote-id type="cpan-module">Plack::Test::MockHTTP</remote-id>
+ <remote-id type="cpan-module">Plack::Test::Server</remote-id>
+ <remote-id type="cpan-module">Plack::Test::Suite</remote-id>
+ <remote-id type="cpan-module">Plack::Util</remote-id>
+ <remote-id type="cpan-module">Plack::Util::Accessor</remote-id>
+ <remote-id type="cpan-module">Plack::Util::IOWithPath</remote-id>
+ <remote-id type="cpan-module">Plack::Util::Prototype</remote-id>
+ </upstream>
+</pkgmetadata>