X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FPlugin%2FStatic%2FSimple.pm;h=f15864cb40610593e24c601eb87f5fc05ffd2c86;hb=9a4b0bc2417b66931e3eaee04450c707e584cac2;hp=856b47cf4baae82ff486bb3e2541030f07dee934;hpb=b6f6ec3fedacba5b7e65eb34541d745dffb057ee;p=catagits%2FCatalyst-Plugin-Static-Simple.git diff --git a/lib/Catalyst/Plugin/Static/Simple.pm b/lib/Catalyst/Plugin/Static/Simple.pm index 856b47c..f15864c 100755 --- a/lib/Catalyst/Plugin/Static/Simple.pm +++ b/lib/Catalyst/Plugin/Static/Simple.pm @@ -9,7 +9,7 @@ use MooseX::Types::Moose qw/ArrayRef Str/; use Catalyst::Utils; use namespace::autoclean; -our $VERSION = '0.32'; +our $VERSION = '0.35'; has _static_file => ( is => 'rw' ); has _static_debug_message => ( is => 'rw', isa => ArrayRef[Str] ); @@ -64,7 +64,7 @@ before prepare_action => sub { } # Does the path have an extension? - if ( $path =~ /.*\.(\S{1,})$/xms ) { + if ( $path =~ /\.([^\/\\]+)$/m ) { # and does it exist? $c->_locate_static_file( $path ); } @@ -101,6 +101,14 @@ before setup_finalize => sub { $c->log->warn("Deprecated 'static' config key used, please use the key 'Plugin::Static::Simple' instead") if exists $c->config->{static}; + + if (exists $c->config->{static}->{include_path}) { + $c->config->{'Plugin::Static::Simple'}->{include_path} = [ + @{$c->config->{'Plugin::Static::Simple'}->{include_path} || []}, + @{delete $c->config->{static}->{include_path} || []} + ]; + } + my $config = $c->config->{'Plugin::Static::Simple'} = $c->config->{'static'} @@ -314,7 +322,7 @@ properly. If the plugin can not find the file, the request is dispatched to your application instead. This means you are responsible for generating a -C<404> error if your applicaton can not process the request: +C<404> error if your application can not process the request: # handled by static::simple, not dispatched to your application /images/exists.png @@ -586,6 +594,18 @@ messages. C initializes all default values. +=head1 DEPRECATIONS + +The old style of configuration using the C<'static'> config key was deprecated +in version 0.30. A warning will be issued if this is used, and the contents of +the config at this key will be merged with the newer C<'Plugin::Static::Simple'> +key. + +Be aware that if the C<'include_path'> key under C<'static'> exists at all, it +will be merged with any content of the same key under +C<'Plugin::Static::Simple'>. Be careful not to set this to a non-arrayref, +therefore. + =head1 SEE ALSO L, L,