X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst.pm;h=71ce8cce0070baa35e90db9a4b62015571c4170b;hp=aaa8624c061f10c20c53e46158092dd43498d493;hb=c4770d9b88bb84708a170f0d21484b6ad5123f3f;hpb=01033d73aaa1a7a22030298036f092f7354b50a9 diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index aaa8624..71ce8cc 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -38,14 +38,12 @@ our $DETACH = "catalyst_detach\n"; require Module::Pluggable::Fast; # Helper script generation -our $CATALYST_SCRIPT_GEN = 8; +our $CATALYST_SCRIPT_GEN = 10; __PACKAGE__->mk_classdata($_) for qw/components arguments dispatcher engine log/; -our $VERSION = '5.49_01'; - -sub version { return $Catalyst::VERSION } +our $VERSION = '5.49_02'; sub import { my ( $class, @arguments ) = @_; @@ -428,6 +426,7 @@ sub uri_for { # massage match, empty if absolute path $match =~ s/^\///; $match .= '/' if $match; + $path ||= ''; $match = '' if $path =~ /^\//; $path =~ s/^\///; @@ -696,7 +695,7 @@ perldoc isa('Catalyst::Engine::Apache') + && !Catalyst::Engine::Apache->VERSION ) + { + $old_engine = 1; + } + + elsif ( $engine->isa('Catalyst::Engine::Server::Base') + && Catalyst::Engine::Server->VERSION le '0.02' ) + { + $old_engine = 1; + } + + elsif ($engine->isa('Catalyst::Engine::HTTP::POE') + && $engine->VERSION eq '0.01' ) + { + $old_engine = 1; + } + + elsif ($engine->isa('Catalyst::Engine::Zeus') + && $engine->VERSION eq '0.01' ) + { + $old_engine = 1; + } + + if ($old_engine) { + Catalyst::Exception->throw( message => + qq/Engine "$engine" is not supported by this version of Catalyst/ + ); + } + # engine instance $class->engine( $engine->new ); } @@ -1553,8 +1608,27 @@ sub write { return $c->engine->write( $c, @_ ); } +=item version + +Returns the Catalyst version number. mostly useful for powered by messages +in template systems. + +=cut + +sub version { return $Catalyst::VERSION } + =back +=head1 INTERNAL ACTIONS + +Catalyst uses internal actions like C<_DISPATCH>, C<_BEGIN>, C<_AUTO> +C<_ACTION> and C<_END>, these are by default not shown in the private +action table. + +But you can deactivate this with a config parameter. + + MyApp->config->{show_internal_actions} = 1; + =head1 CASE SENSITIVITY By default Catalyst is not case sensitive, so C becomes @@ -1698,6 +1772,8 @@ Matt S Trout Robert Sedlacek +Sam Vilain + Tatsuhiko Miyagawa Ulf Edvinsson