r56499 - in /trunk/libplack-perl: ./ debian/ eg/dot-psgi/ lib/ lib/Plack/ lib/Plack/Handler/ lib/Plack/Handler/Net/ lib/Plack/Loader/ lib/Plack/Middleware/ lib/Plack/Server/ lib/Plack/Test/ scripts/ share/ t/Plack-Handler/ t/Plack-Loader/ t/Plack-Middleware/ t/Plack-Request/

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Mon Apr 19 02:18:06 UTC 2010


Author: jawnsy-guest
Date: Mon Apr 19 02:18:00 2010
New Revision: 56499

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=56499
Log:
* New upstream release
* Test::TCP is required for Plack::Test, so install it for users

Added:
    trunk/libplack-perl/lib/Plack/Handler/Net/
      - copied from r56498, branches/upstream/libplack-perl/current/lib/Plack/Handler/Net/
    trunk/libplack-perl/lib/Plack/Loader/Delayed.pm
      - copied unchanged from r56498, branches/upstream/libplack-perl/current/lib/Plack/Loader/Delayed.pm
    trunk/libplack-perl/share/baybridge.jpg
      - copied unchanged from r56498, branches/upstream/libplack-perl/current/share/baybridge.jpg
    trunk/libplack-perl/t/Plack-Handler/net_fastcgi.t
      - copied unchanged from r56498, branches/upstream/libplack-perl/current/t/Plack-Handler/net_fastcgi.t
    trunk/libplack-perl/t/Plack-Loader/delayed.t
      - copied unchanged from r56498, branches/upstream/libplack-perl/current/t/Plack-Loader/delayed.t
Removed:
    trunk/libplack-perl/share/kyoto.jpg
Modified:
    trunk/libplack-perl/Changes
    trunk/libplack-perl/MANIFEST
    trunk/libplack-perl/META.yml
    trunk/libplack-perl/Makefile.PL
    trunk/libplack-perl/debian/changelog
    trunk/libplack-perl/debian/control
    trunk/libplack-perl/eg/dot-psgi/image.psgi
    trunk/libplack-perl/lib/Plack.pm
    trunk/libplack-perl/lib/Plack/Handler/Apache2.pm
    trunk/libplack-perl/lib/Plack/Handler/FCGI.pm
    trunk/libplack-perl/lib/Plack/Middleware/Lint.pm
    trunk/libplack-perl/lib/Plack/Middleware/Log4perl.pm
    trunk/libplack-perl/lib/Plack/Request.pm
    trunk/libplack-perl/lib/Plack/Response.pm
    trunk/libplack-perl/lib/Plack/Runner.pm
    trunk/libplack-perl/lib/Plack/Server/ServerSimple.pm
    trunk/libplack-perl/lib/Plack/Test/Suite.pm
    trunk/libplack-perl/scripts/plackup
    trunk/libplack-perl/t/Plack-Middleware/content_length.t
    trunk/libplack-perl/t/Plack-Request/upload-large.t

Modified: trunk/libplack-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/Changes?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/Changes (original)
+++ trunk/libplack-perl/Changes Mon Apr 19 02:18:00 2010
@@ -1,6 +1,16 @@
 Revision history for Perl extension Plack
 
 Take a look at http://github.com/miyagawa/Plack/issues for the planned changes before 1.0 release.
+
+0.9931  Fri Apr 16 23:52:27 PDT 2010
+        - replace kyoto.jpg test image file with smaller baybridge.jpg to strip down the tarball size
+          from 2.5MB to 212KB.
+
+0.9930  Tue Apr 13 20:18:06 PDT 2010
+        - Added Plack::Handler::Net::FastCGI (chansen)
+        - Made Test::TCP a hard dependency since Plack::Test needs it
+        - Added Delayed loader for Starlet and Starman (clkao)
+        - Hide logger middleware from log4perl's caller stack (haarg)
 
 0.9929  Wed Mar 31 00:33:10 PDT 2010
         - Middleware::JSONP: Simplified code and does not support IO response body type

Modified: trunk/libplack-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/MANIFEST?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/MANIFEST (original)
+++ trunk/libplack-perl/MANIFEST Mon Apr 19 02:18:00 2010
@@ -65,10 +65,12 @@
 lib/Plack/Handler/FCGI.pm
 lib/Plack/Handler/HTTP/Server/PSGI.pm
 lib/Plack/Handler/HTTP/Server/Simple.pm
+lib/Plack/Handler/Net/FastCGI.pm
 lib/Plack/Handler/Standalone.pm
 lib/Plack/HTTPParser.pm
 lib/Plack/HTTPParser/PP.pm
 lib/Plack/Loader.pm
+lib/Plack/Loader/Delayed.pm
 lib/Plack/Loader/Restarter.pm
 lib/Plack/Loader/Shotgun.pm
 lib/Plack/Middleware.pm
@@ -127,12 +129,12 @@
 lib/Plack/Util.pm
 lib/Plack/Util/Accessor.pm
 Makefile.PL
-MANIFEST
+MANIFEST			This list of files
 META.yml
 README
 scripts/plackup
+share/baybridge.jpg
 share/face.jpg
-share/kyoto.jpg
 t/00_compile.t
 t/FCGIUtils.pm
 t/HTTP-Message-PSGI/utf8_req.t
@@ -144,10 +146,12 @@
 t/Plack-Handler/fcgi.t
 t/Plack-Handler/fcgi_client.t
 t/Plack-Handler/http_server_simple.t
+t/Plack-Handler/net_fastcgi.t
 t/Plack-Handler/standalone.t
 t/Plack-HTTPParser-PP/simple.t
 t/Plack-Loader/auto.t
 t/Plack-Loader/auto_fallback.t
+t/Plack-Loader/delayed.t
 t/Plack-Loader/shotgun.t
 t/Plack-Middleware/access_log.t
 t/Plack-Middleware/access_log_timed.t

Modified: trunk/libplack-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/META.yml?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/META.yml (original)
+++ trunk/libplack-perl/META.yml Mon Apr 19 02:18:00 2010
@@ -6,7 +6,6 @@
   ExtUtils::MakeMaker: 6.42
   Test::More: 0.88
   Test::Requires: 0
-  Test::TCP: 0.11
 configure_requires:
   ExtUtils::MakeMaker: 6.42
 distribution_type: module
@@ -31,6 +30,7 @@
   Hash::MultiValue: 0.05
   LWP: 5.814
   Pod::Usage: 0
+  Test::TCP: 0.11
   Try::Tiny: 0
   URI: 1.36
   parent: 0
@@ -38,4 +38,4 @@
 resources:
   license: http://dev.perl.org/licenses/
   repository: git://github.com/miyagawa/Plack.git
-version: 0.9929
+version: 0.9931

Modified: trunk/libplack-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/Makefile.PL?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/Makefile.PL (original)
+++ trunk/libplack-perl/Makefile.PL Mon Apr 19 02:18:00 2010
@@ -23,9 +23,9 @@
 
 requires 'Hash::MultiValue', 0.05;          # Plack::Request
 requires 'HTTP::Body', 1.06;                # Plack::Request
+requires 'Test::TCP', 0.11;                 # Plack::Test needs to be installed
 
 build_requires 'Test::More', 0.88;
-build_requires 'Test::TCP', 0.11;
 test_requires 'Test::Requires';
 
 tests 't/*.t t/*/*.t';

Modified: trunk/libplack-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/debian/changelog?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/debian/changelog (original)
+++ trunk/libplack-perl/debian/changelog Mon Apr 19 02:18:00 2010
@@ -1,3 +1,10 @@
+libplack-perl (0.9931-1) UNRELEASED; urgency=low
+
+  * New upstream release
+  * Test::TCP is required for Plack::Test, so install it for users
+
+ -- Jonathan Yu <jawnsy at cpan.org>  Sun, 18 Apr 2010 22:48:43 -0400
+
 libplack-perl (0.9929-1) unstable; urgency=low
 
   * Initial Release (Closes: #576907)

Modified: trunk/libplack-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/debian/control?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/debian/control (original)
+++ trunk/libplack-perl/debian/control Mon Apr 19 02:18:00 2010
@@ -24,7 +24,8 @@
  libdevel-stacktrace-ashtml-perl (>= 0.09), libdevel-stacktrace-perl,
  libfile-sharedir-perl (>= 1.00), libfilesys-notify-simple-perl,
  libhash-multivalue-perl, libhttp-body-perl (>= 1.06), libparent-perl,
- libtry-tiny-perl, liburi-perl (>= 1.36), libwww-perl (>= 5.814)
+ libtry-tiny-perl, liburi-perl (>= 1.36), libwww-perl (>= 5.814),
+ libtest-tcp-perl
 Description: interface between web servers and Perl web applications
  Plack is a set of tools similar to Ruby's Rack or Python's Paste for WSGI. It
  implements the Perl Server Gateway Interface (PSGI) standard interface, which

Modified: trunk/libplack-perl/eg/dot-psgi/image.psgi
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/eg/dot-psgi/image.psgi?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/eg/dot-psgi/image.psgi (original)
+++ trunk/libplack-perl/eg/dot-psgi/image.psgi Mon Apr 19 02:18:00 2010
@@ -1,5 +1,5 @@
 use File::Basename;
-my $path = $ENV{PSGI_IMAGE_FILE} || dirname(__FILE__) . "/../../share/kyoto.jpg";
+my $path = $ENV{PSGI_IMAGE_FILE} || dirname(__FILE__) . "/../../share/baybridge.jpg";
 my $handler = sub {
     open my $fh, "<:raw", $path or die $!;
     return [ 200, [ "Content-Type" => "image/jpeg", "X-Sendfile" => $path, "Content-Length" => -s $fh ], $fh ];

Modified: trunk/libplack-perl/lib/Plack.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack.pm (original)
+++ trunk/libplack-perl/lib/Plack.pm Mon Apr 19 02:18:00 2010
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 use 5.008_001;
-our $VERSION = '0.9929';
+our $VERSION = '0.9931';
 $VERSION = eval $VERSION;
 
 1;

Modified: trunk/libplack-perl/lib/Plack/Handler/Apache2.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Handler/Apache2.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Handler/Apache2.pm (original)
+++ trunk/libplack-perl/lib/Plack/Handler/Apache2.pm Mon Apr 19 02:18:00 2010
@@ -136,12 +136,23 @@
   PerlSetVar psgi_app /path/to/app.psgi
   </Location>
 
+  # Optional, preload the application in the parent like startup.pl
   <Perl>
   use Plack::Handler::Apache2;
   Plack::Handler::Apache2->preload("/path/to/app.psgi");
   </Perl>
 
-  # Or create your own handler:
+=head1 DESCRIPTION
+
+This is a handler module to run any PSGI application with mod_perl on Apache 2.x.
+
+=head1 CREATING CUSTOM HANDLER
+
+If you want to create a custom handler that loads or creates PSGI
+applications using other means than loading from C<.psgi> files, you
+can create your own handler class and use C<call_app> class method to
+run your application.
+
   package My::ModPerl::Handler;
   use Plack::Handler::Apache2;
 
@@ -154,19 +165,6 @@
     my $app = get_app();
     Plack::Handler::Apache2->call_app($r, $app);
   }
-
-=head1 DESCRIPTION
-
-This is a handler module to run any PSGI application with mod_perl on Apache 2.x.
-
-=head1 METHODS
-
-=head2 call_app($r, $app)
-
-The mod_perl handler in this package loads the app and calls this method.  If
-you'd like to do something different, you can still make use of this module by
-preparing $r and $app in some other fashion and calling this as a class
-method.
 
 =head1 AUTHOR
 

Modified: trunk/libplack-perl/lib/Plack/Handler/FCGI.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Handler/FCGI.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Handler/FCGI.pm (original)
+++ trunk/libplack-perl/lib/Plack/Handler/FCGI.pm Mon Apr 19 02:18:00 2010
@@ -52,7 +52,7 @@
     my $proc_manager;
 
     if ($self->{listen}) {
-        $self->daemon_fork if $self->{detach};
+        $self->daemon_fork if $self->{daemonize};
 
         if ($self->{manager}) {
             Plack::Util::load_class($self->{manager});

Modified: trunk/libplack-perl/lib/Plack/Middleware/Lint.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Middleware/Lint.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Middleware/Lint.pm (original)
+++ trunk/libplack-perl/lib/Plack/Middleware/Lint.pm Mon Apr 19 02:18:00 2010
@@ -127,12 +127,15 @@
   my $app = sub { ... }; # your app or middleware
   $app = Plack::Middleware::Lint->wrap($app);
 
+  # Or from plackup
+  plackup -e 'enable "Lint"' myapp.psgi
+
 =head1 DESCRIPTION
 
 Plack::Middleware::Lint is a middleware component to validate request
-and response environment. You are strongly suggested to use enable
-this middleware when you develop a framework adapter or a new server
-that implements PSGI interface.
+and response environment formats. You are strongly suggested to use
+this middleware when you develop a new framework adapter or a new PSGI
+web server that implements the PSGI interface.
 
 =head1 AUTHOR
 
@@ -140,5 +143,9 @@
 
 Tokuhiro Matsuno
 
+=head1 SEE ALSO
+
+L<Plack>
+
 =cut
 

Modified: trunk/libplack-perl/lib/Plack/Middleware/Log4perl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Middleware/Log4perl.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Middleware/Log4perl.pm (original)
+++ trunk/libplack-perl/lib/Plack/Middleware/Log4perl.pm Mon Apr 19 02:18:00 2010
@@ -21,6 +21,8 @@
     $env->{'psgix.logger'} = sub {
         my $args = shift;
         my $level = $args->{level};
+        local $Log::Log4perl::caller_depth
+            = $Log::Log4perl::caller_depth + 1;
         $self->logger->$level($args->{message});
     };
 

Modified: trunk/libplack-perl/lib/Plack/Request.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Request.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Request.pm (original)
+++ trunk/libplack-perl/lib/Plack/Request.pm Mon Apr 19 02:18:00 2010
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 use 5.008_001;
-our $VERSION = '0.9929';
+our $VERSION = '0.9931';
 $VERSION = eval $VERSION;
 
 use HTTP::Headers;

Modified: trunk/libplack-perl/lib/Plack/Response.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Response.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Response.pm (original)
+++ trunk/libplack-perl/lib/Plack/Response.pm Mon Apr 19 02:18:00 2010
@@ -1,7 +1,7 @@
 package Plack::Response;
 use strict;
 use warnings;
-our $VERSION = '0.9929';
+our $VERSION = '0.9931';
 $VERSION = eval $VERSION;
 
 use Plack::Util::Accessor qw(body status);

Modified: trunk/libplack-perl/lib/Plack/Runner.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Runner.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Runner.pm (original)
+++ trunk/libplack-perl/lib/Plack/Runner.pm Mon Apr 19 02:18:00 2010
@@ -188,9 +188,10 @@
 
     push @{$self->{options}}, server_ready => sub {
         my($args) = @_;
-        my $name = $args->{server_software} || ref($args); # $args is $server
-        my $host = $args->{host} || 0;
-        print STDERR "$name: Accepting connections at http://$host:$args->{port}/\n";
+        my $name  = $args->{server_software} || ref($args); # $args is $server
+        my $host  = $args->{host} || 0;
+        my $proto = $args->{proto} || 'http';
+        print STDERR "$name: Accepting connections at $proto://$host:$args->{port}/\n";
     };
 
     $app;

Modified: trunk/libplack-perl/lib/Plack/Server/ServerSimple.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Server/ServerSimple.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Server/ServerSimple.pm (original)
+++ trunk/libplack-perl/lib/Plack/Server/ServerSimple.pm Mon Apr 19 02:18:00 2010
@@ -1,6 +1,6 @@
 package Plack::Server::ServerSimple;
 use strict;
-our $VERSION = '0.9929';
+our $VERSION = '0.9931';
 $VERSION = eval $VERSION;
 
 use parent qw(Plack::Handler::HTTP::Server::Simple);

Modified: trunk/libplack-perl/lib/Plack/Test/Suite.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/lib/Plack/Test/Suite.pm?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/lib/Plack/Test/Suite.pm (original)
+++ trunk/libplack-perl/lib/Plack/Test/Suite.pm Mon Apr 19 02:18:00 2010
@@ -161,15 +161,15 @@
         'bigger file',
         sub {
             my $cb  = shift;
-            my $res = $cb->(GET "http://127.0.0.1/kyoto.jpg");
+            my $res = $cb->(GET "http://127.0.0.1/baybridge.jpg");
             is $res->code, 200;
             is $res->header('content_type'), 'image/jpeg';
-            is length $res->content, 2397701;
-            is Digest::MD5::md5_hex($res->content), '9c6d7249a77204a88be72e9b2fe279e8';
-        },
-        sub {
-            my $env = shift;
-            open my $fh, '<', "$share_dir/kyoto.jpg";
+            is length $res->content, 79838;
+            is Digest::MD5::md5_hex($res->content), '983726ae0e4ce5081bef5fb2b7216950';
+        },
+        sub {
+            my $env = shift;
+            open my $fh, '<', "$share_dir/baybridge.jpg";
             binmode $fh;
             return [
                 200,
@@ -673,13 +673,29 @@
 1;
 __END__
 
+=head1 NAME
+
+Plack::Test::Suite - Test suite for Plack handlers
+
 =head1 SYNOPSIS
 
-  # TBD See t/Plack-Servet/*.t for now
+  use Test::More;
+  use Plack::Test::Suite;
+  Plack::Test::Suite->run_server_tests('Your::Handler');
+  done_testing;
 
 =head1 DESCRIPTION
 
-Plack::Test::Suite is a test suite to test a new PSGI server implementation.
+Plack::Test::Suite is a test suite to test a new PSGI server
+implementation. It automatically loads a new handler environment and
+uses LWP to send HTTP requests to the local server to make sure your
+handler implements the PSGI specification correctly.
+
+Note that the handler name doesn't include the C<Plack::Handler::>
+prefix, i.e. if you have a new Plack handler Plack::Handler::Foo, your
+test script would look like:
+
+  Plack::Test::Suite->run_server_tests('Foo');
 
 =head1 AUTHOR
 

Modified: trunk/libplack-perl/scripts/plackup
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/scripts/plackup?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/scripts/plackup (original)
+++ trunk/libplack-perl/scripts/plackup Mon Apr 19 02:18:00 2010
@@ -1,4 +1,4 @@
-#!/usr/bin/perl
+#!perl
 use strict;
 use lib "lib";
 use Plack::Runner;
@@ -96,7 +96,7 @@
 
 Select a specific implementation to run on using the C<PLACK_SERVER>
 environment variable or use the C<-s> or C<--server> flag which will
-be prefered over the environment variable if present.
+be preferred over the environment variable if present.
 
 =item -S, --socket
 

Modified: trunk/libplack-perl/t/Plack-Middleware/content_length.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/t/Plack-Middleware/content_length.t?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/t/Plack-Middleware/content_length.t (original)
+++ trunk/libplack-perl/t/Plack-Middleware/content_length.t Mon Apr 19 02:18:00 2010
@@ -10,11 +10,11 @@
     },
     {
         app => sub {
-            open my $fh, "<", "share/kyoto.jpg";
+            open my $fh, "<", "share/baybridge.jpg";
             [ 200, [ 'Content-Type' => 'image/jpeg' ], $fh ];
         },
         env => { REQUEST_METHOD => 'GET' },
-        headers => [ 'Content-Type' => 'image/jpeg', 'Content-Length' => 2397701 ],
+        headers => [ 'Content-Type' => 'image/jpeg', 'Content-Length' => 79838 ],
     },
     {
         app => sub {

Modified: trunk/libplack-perl/t/Plack-Request/upload-large.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libplack-perl/t/Plack-Request/upload-large.t?rev=56499&op=diff
==============================================================================
--- trunk/libplack-perl/t/Plack-Request/upload-large.t (original)
+++ trunk/libplack-perl/t/Plack-Request/upload-large.t Mon Apr 19 02:18:00 2010
@@ -5,7 +5,7 @@
 use Plack::Test;
 use HTTP::Request::Common;
 
-my $file = "share/kyoto.jpg";
+my $file = "share/baybridge.jpg";
 
 my @backends = qw( Server MockHTTP );
 sub flip_backend { $Plack::Test::Impl = shift @backends }
@@ -14,7 +14,7 @@
     my $req = Plack::Request->new(shift);
     is $req->uploads->{image}->size, -s $file;
     is $req->uploads->{image}->content_type, 'image/jpeg';
-    is $req->uploads->{image}->basename, 'kyoto.jpg';
+    is $req->uploads->{image}->basename, 'baybridge.jpg';
     $req->new_response(200)->finalize;
 };
 




More information about the Pkg-perl-cvs-commits mailing list