@@ -2,6 +2,10 @@ 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.9946 Sat Aug 28 22:32:16 PDT 2010
+ - Fixes UUV warnings in Apache2 handler RT:60472
+ - Fixed various test failures due to dependencies
+
0.9945 Thu Aug 19 16:24:30 PDT 2010
- Support executing (non-perl) CGI scripts in CGIBin and WrapCGI
- Fixed tests for win32
@@ -38,4 +38,4 @@ requires:
resources:
license: http://dev.perl.org/licenses/
repository: git://github.com/miyagawa/Plack.git
-version: 0.9945
+version: 0.9946
@@ -107,13 +107,13 @@ You can customize this behavior by passing C<exec_cb> callback, which
takes a file path to its first argument.
For example, if your perl-based CGI script uses lots of global
-variables and such and are not ready to run on a persisten
+variables and such and are not ready to run on a persistent
environment, you can do:
my $app = Plack::App::CGIBin->new(
root => "/path/to/cgi-bin",
exec_cb => sub { 1 },
- );
+ )->to_app;
to always force the execute option for any files.
@@ -58,7 +58,9 @@ sub serve_path {
for my $basename (sort { $a cmp $b } @children) {
my $file = "$dir/$basename";
- my $url = $env->{SCRIPT_NAME} . $env->{PATH_INFO} . $basename;
+ my $url = $env->{SCRIPT_NAME} . $env->{PATH_INFO};
+ $url .= '/' unless $url =~ m{/$};
+ $url .= $basename;
my $is_dir = -d $file;
my @stat = stat _;
@@ -25,7 +25,7 @@ sub handler {
}
# Overriding
-sub _recalc_paths {}
+sub fixup_path {}
1;
@@ -48,7 +48,7 @@ sub call_app {
'psgi.nonblocking' => Plack::Util::FALSE,
};
- $class->_recalc_paths($r, $env);
+ $class->fixup_path($r, $env);
my $res = $app->($env);
@@ -75,9 +75,9 @@ sub handler {
}
# The method for PH::Apache2::Regitsry to override.
-sub _recalc_paths {
+sub fixup_path {
my ($class, $r, $env) = @_;
- my $vpath = $env->{SCRIPT_NAME} . $env->{PATH_INFO};
+ my $vpath = $env->{SCRIPT_NAME} . ($env->{PATH_INFO} || '');
my $location = $r->location || "/";
$location =~ s{/$}{};
(my $path_info = $vpath) =~ s/^\Q$location\E//;
@@ -2,7 +2,7 @@ package Plack::Request;
use strict;
use warnings;
use 5.008_001;
-our $VERSION = '0.9945';
+our $VERSION = '0.9946';
$VERSION = eval $VERSION;
use HTTP::Headers;
@@ -1,7 +1,7 @@
package Plack::Response;
use strict;
use warnings;
-our $VERSION = '0.9945';
+our $VERSION = '0.9946';
$VERSION = eval $VERSION;
use Plack::Util::Accessor qw(body status);
@@ -1,6 +1,6 @@
package Plack::Server::ServerSimple;
use strict;
-our $VERSION = '0.9945';
+our $VERSION = '0.9946';
$VERSION = eval $VERSION;
use parent qw(Plack::Handler::HTTP::Server::Simple);
@@ -3,7 +3,7 @@ package Plack;
use strict;
use warnings;
use 5.008_001;
-our $VERSION = '0.9945';
+our $VERSION = '0.9946';
$VERSION = eval $VERSION;
1;
@@ -1,7 +1,7 @@
use strict;
use warnings;
use Test::More;
-use Test::Requires { 'Net::FastCGI' => 0.11, 'FCGI::Client' => 0.04 };
+use Test::Requires { 'Net::FastCGI' => 0.12, 'FCGI::Client' => 0.04 };
use Plack::Handler::Net::FastCGI;
use Test::TCP;
use Plack::Test::Suite;
@@ -1,6 +1,6 @@
use strict;
use Test::More;
-use Test::Requires { 'CGI::Emulate::PSGI' => 0, 'CGI::Compile' => 0.03 };
+use Test::Requires { 'CGI::Emulate::PSGI' => 0.06, 'CGI::Compile' => 0.03 };
use Plack::Test;
use HTTP::Request::Common;
use Plack::App::WrapCGI;