r63284 - in /trunk/libcatalyst-action-rest-perl: ./ debian/ inc/Module/ inc/Module/Install/ lib/Catalyst/Action/ lib/Catalyst/Action/Deserialize/ lib/Catalyst/Action/Deserialize/Data/ lib/Catalyst/Action/Deserialize/XML/ lib/Catalyst/Action/Serialize/ lib/Catalyst/Action/Serialize/Data/ lib/Catalyst/Action/Serialize/JSON/ lib/Catalyst/Action/Serialize/XML/ lib/Catalyst/Action/Serialize/YAML/ lib/Catalyst/Controller/ lib/Catalyst/Request/ lib/Catalyst/Request/REST/ lib/Catalyst/TraitFor/Request/ lib/Catalyst/TraitFor/Request/REST/ t/ t/lib/Test/Action/Class/ t/lib/Test/Catalyst/Action/REST/Controller/ t/lib/Test/Serialize/Controller/ xt/

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Mon Oct 4 00:31:35 UTC 2010


Author: jawnsy-guest
Date: Mon Oct  4 00:31:26 2010
New Revision: 63284

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=63284
Log:
* New upstream release
* Standards-Version 3.9.1 (no changes)

Added:
    trunk/libcatalyst-action-rest-perl/t/lib/Test/Action/Class/
      - copied from r63282, branches/upstream/libcatalyst-action-rest-perl/current/t/lib/Test/Action/Class/
    trunk/libcatalyst-action-rest-perl/t/lib/Test/Serialize/Controller/JSON.pm
      - copied unchanged from r63282, branches/upstream/libcatalyst-action-rest-perl/current/t/lib/Test/Serialize/Controller/JSON.pm
Modified:
    trunk/libcatalyst-action-rest-perl/Changes
    trunk/libcatalyst-action-rest-perl/MANIFEST
    trunk/libcatalyst-action-rest-perl/META.yml
    trunk/libcatalyst-action-rest-perl/debian/changelog
    trunk/libcatalyst-action-rest-perl/debian/control
    trunk/libcatalyst-action-rest-perl/debian/copyright
    trunk/libcatalyst-action-rest-perl/inc/Module/Install.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/AutoInstall.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Base.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Can.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Fetch.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Include.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Makefile.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Metadata.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/Win32.pm
    trunk/libcatalyst-action-rest-perl/inc/Module/Install/WriteAll.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/Data/Serializer.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/JSON.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/View.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/XML/Simple.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/YAML.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/REST.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/Data/Serializer.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON/XS.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSONP.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/View.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/XML/Simple.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML/HTML.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/SerializeBase.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Controller/REST.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST/ForBrowsers.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST.pm
    trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST/ForBrowsers.pm
    trunk/libcatalyst-action-rest-perl/t/catalyst-action-rest-action-dispatch.t
    trunk/libcatalyst-action-rest-perl/t/data-serializer.t
    trunk/libcatalyst-action-rest-perl/t/json.t
    trunk/libcatalyst-action-rest-perl/t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm
    trunk/libcatalyst-action-rest-perl/xt/version-numbers.t

Modified: trunk/libcatalyst-action-rest-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/Changes?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/Changes (original)
+++ trunk/libcatalyst-action-rest-perl/Changes Mon Oct  4 00:31:26 2010
@@ -1,3 +1,10 @@
+Wed  1 Sept 2010 23:14:00 BST - Release 0.86
+
+  Add rest_serializer_json_options config key useable to set options
+  like relaxed => 1 to be passed to the JSON serializer (Ton Voon)
+
+  Make Data::Dumper unserializer safer by using a Safe compartment (Ton Voon)
+
 Thu 13 May 2010 10:09:19 CEST - Release 0.85
 
   Make Catalyst::Action::Serialize::View return directly rather than serializing

Modified: trunk/libcatalyst-action-rest-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/MANIFEST?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/MANIFEST (original)
+++ trunk/libcatalyst-action-rest-perl/MANIFEST Mon Oct  4 00:31:26 2010
@@ -55,6 +55,7 @@
 t/json.t
 t/jsonp.t
 t/lib/Test/Action/Class.pm
+t/lib/Test/Action/Class/Sub.pm
 t/lib/Test/Catalyst/Action/REST.pm
 t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm
 t/lib/Test/Catalyst/Action/REST/Controller/Deserialize.pm
@@ -65,6 +66,7 @@
 t/lib/Test/Catalyst/Log.pm
 t/lib/Test/Rest.pm
 t/lib/Test/Serialize.pm
+t/lib/Test/Serialize/Controller/JSON.pm
 t/lib/Test/Serialize/Controller/REST.pm
 t/lib/Test/Serialize/View/Awful.pm
 t/lib/Test/Serialize/View/Simple.pm

Modified: trunk/libcatalyst-action-rest-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/META.yml?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/META.yml (original)
+++ trunk/libcatalyst-action-rest-perl/META.yml Mon Oct  4 00:31:26 2010
@@ -7,7 +7,7 @@
 configure_requires:
   ExtUtils::MakeMaker: 6.42
 distribution_type: module
-generated_by: 'Module::Install version 0.97'
+generated_by: 'Module::Install version 0.99'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -40,4 +40,4 @@
 resources:
   license: http://dev.perl.org/licenses/
   repository: git://git.shadowcat.co.uk/catagits/Catalyst-Action-REST.git
-version: 0.85
+version: 0.86

Modified: trunk/libcatalyst-action-rest-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/debian/changelog?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/debian/changelog (original)
+++ trunk/libcatalyst-action-rest-perl/debian/changelog Mon Oct  4 00:31:26 2010
@@ -1,3 +1,10 @@
+libcatalyst-action-rest-perl (0.86-1) UNRELEASED; urgency=low
+
+  * New upstream release
+  * Standards-Version 3.9.1 (no changes)
+
+ -- Jonathan Yu <jawnsy at cpan.org>  Sun, 03 Oct 2010 20:42:18 -0400
+
 libcatalyst-action-rest-perl (0.85-1) unstable; urgency=low
 
   [ Jonathan Yu ]

Modified: trunk/libcatalyst-action-rest-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/debian/control?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/debian/control (original)
+++ trunk/libcatalyst-action-rest-perl/debian/control Mon Oct  4 00:31:26 2010
@@ -10,7 +10,7 @@
 Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
 Uploaders: Jonathan Yu <jawnsy at cpan.org>, Franck Joncourt <franck at debian.org>,
  gregor herrmann <gregoa at debian.org>
-Standards-Version: 3.8.4
+Standards-Version: 3.9.1
 Homepage: http://search.cpan.org/dist/Catalyst-Action-REST/
 Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libcatalyst-action-rest-perl
 Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libcatalyst-action-rest-perl

Modified: trunk/libcatalyst-action-rest-perl/debian/copyright
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/debian/copyright?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/debian/copyright (original)
+++ trunk/libcatalyst-action-rest-perl/debian/copyright Mon Oct  4 00:31:26 2010
@@ -37,8 +37,8 @@
  This program is free software; you can redistribute it and/or modify
  it under the terms of the Artistic License, which comes with Perl.
  .
- On Debian GNU/Linux systems, the complete text of the Artistic License
- can be found in `/usr/share/common-licenses/Artistic'
+ On Debian systems, the complete text of the Artistic License can be
+ found in `/usr/share/common-licenses/Artistic'
 
 License: GPL-1+
  This program is free software; you can redistribute it and/or modify
@@ -46,5 +46,5 @@
  the Free Software Foundation; either version 1, or (at your option)
  any later version.
  .
- On Debian GNU/Linux systems, the complete text of the GNU General
- Public License can be found in `/usr/share/common-licenses/GPL'
+ On Debian systems, the complete text of the GNU General Public
+ License can be found in `/usr/share/common-licenses/GPL'

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install.pm Mon Oct  4 00:31:26 2010
@@ -22,7 +22,6 @@
 use Cwd        ();
 use File::Find ();
 use File::Path ();
-use FindBin;
 
 use vars qw{$VERSION $MAIN};
 BEGIN {
@@ -32,7 +31,7 @@
 	# This is not enforced yet, but will be some time in the next few
 	# releases once we can make sure it won't clash with custom
 	# Module::Install extensions.
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 
 	# Storage for the pseudo-singleton
 	$MAIN    = undef;
@@ -231,7 +230,8 @@
 sub new {
 	my ($class, %args) = @_;
 
-	FindBin->again;
+    delete $INC{'FindBin.pm'};
+    require FindBin;
 
 	# ignore the prefix on extension modules built from top level.
 	my $base_path = Cwd::abs_path($FindBin::Bin);

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/AutoInstall.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/AutoInstall.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/AutoInstall.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/AutoInstall.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Base.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Base.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Base.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Base.pm Mon Oct  4 00:31:26 2010
@@ -4,7 +4,7 @@
 use strict 'vars';
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 }
 
 # Suspend handler for "redefined" warnings

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Can.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Can.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Can.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Can.pm Mon Oct  4 00:31:26 2010
@@ -9,7 +9,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Fetch.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Fetch.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Fetch.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Fetch.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Include.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Include.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Include.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Include.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Makefile.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Makefile.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Makefile.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Makefile.pm Mon Oct  4 00:31:26 2010
@@ -4,10 +4,11 @@
 use strict 'vars';
 use ExtUtils::MakeMaker   ();
 use Module::Install::Base ();
+use Fcntl qw/:flock :seek/;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }
@@ -364,9 +365,9 @@
 		. ($self->postamble || '');
 
 	local *MAKEFILE;
-	open MAKEFILE, "< $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!";
+	open MAKEFILE, "+< $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!";
+	eval { flock MAKEFILE, LOCK_EX };
 	my $makefile = do { local $/; <MAKEFILE> };
-	close MAKEFILE or die $!;
 
 	$makefile =~ s/\b(test_harness\(\$\(TEST_VERBOSE\), )/$1'inc', /;
 	$makefile =~ s/( -I\$\(INST_ARCHLIB\))/ -Iinc$1/g;
@@ -386,7 +387,8 @@
 	# XXX - This is currently unused; not sure if it breaks other MM-users
 	# $makefile =~ s/^pm_to_blib\s+:\s+/pm_to_blib :: /mg;
 
-	open  MAKEFILE, "> $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!";
+	seek MAKEFILE, 0, SEEK_SET;
+	truncate MAKEFILE, 0;
 	print MAKEFILE  "$preamble$makefile$postamble" or die $!;
 	close MAKEFILE  or die $!;
 
@@ -410,4 +412,4 @@
 
 __END__
 
-#line 539
+#line 541

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Metadata.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Metadata.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Metadata.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Metadata.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }
@@ -616,8 +616,15 @@
 	return $v;
 }
 
-
-
+sub add_metadata {
+    my $self = shift;
+    my %hash = @_;
+    for my $key (keys %hash) {
+        warn "add_metadata: $key is not prefixed with 'x_'.\n" .
+             "Use appopriate function to add non-private metadata.\n" unless $key =~ /^x_/;
+        $self->{values}->{$key} = $hash{$key};
+    }
+}
 
 
 ######################################################################

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/Win32.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/Win32.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/Win32.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/Win32.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/inc/Module/Install/WriteAll.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/inc/Module/Install/WriteAll.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/inc/Module/Install/WriteAll.pm (original)
+++ trunk/libcatalyst-action-rest-perl/inc/Module/Install/WriteAll.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.97';;
+	$VERSION = '0.99';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize.pm Mon Oct  4 00:31:26 2010
@@ -7,7 +7,7 @@
 use Module::Pluggable::Object;
 use MRO::Compat;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 has plugins => ( is => 'rw' );

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/Data/Serializer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/Data/Serializer.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/Data/Serializer.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/Data/Serializer.pm Mon Oct  4 00:31:26 2010
@@ -5,8 +5,11 @@
 
 extends 'Catalyst::Action';
 use Data::Serializer;
+use Safe;
+my $compartment = Safe->new;
+$compartment->permit_only( qw(padany null lineseq const pushmark list anonhash anonlist refgen leaveeval undef) );
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {
@@ -34,11 +37,18 @@
             }
             close(BODY);
         }
-        my $dso = Data::Serializer->new( serializer => $serializer );
         my $rdata;
-        eval {
-            $rdata = $dso->raw_deserialize($rbody);
-        };
+        if ( $serializer eq "Data::Dumper" ) {
+            # Taken from Data::Serialize::Data::Dumper::deserialize, but run within a Safe compartment
+            my $code = $rbody =~ /^\{/ ? "+".$rbody : $rbody;
+            $rdata = $compartment->reval( $code );
+        }
+        else {
+            my $dso = Data::Serializer->new( serializer => $serializer );
+            eval {
+                $rdata = $dso->raw_deserialize($rbody);
+            };
+        }
         if ($@) {
             return $@;
         }

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/JSON.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/JSON.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/JSON.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/JSON.pm Mon Oct  4 00:31:26 2010
@@ -4,9 +4,9 @@
 use namespace::autoclean;
 
 extends 'Catalyst::Action';
-use JSON qw( decode_json );
+use JSON;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {
@@ -23,7 +23,13 @@
     }
 
     if ( $rbody ) {
-        my $rdata = eval { decode_json( $rbody ) };
+        my $json = JSON->new->utf8;
+        if (my $options = $controller->{json_options}) {
+            foreach my $opt (keys %$options) {
+                $json->$opt( $options->{$opt} );
+            }
+        }
+        my $rdata = eval { $json->decode( $rbody ) };
         if ($@) {
             return $@;
         }

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/View.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/View.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/View.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/View.pm Mon Oct  4 00:31:26 2010
@@ -5,7 +5,7 @@
 
 extends 'Catalyst::Action';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/XML/Simple.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/XML/Simple.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/XML/Simple.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/XML/Simple.pm Mon Oct  4 00:31:26 2010
@@ -5,7 +5,7 @@
 
 extends 'Catalyst::Action';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/YAML.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/YAML.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/YAML.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Deserialize/YAML.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 extends 'Catalyst::Action';
 use YAML::Syck;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/REST.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/REST.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/REST.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/REST.pm Mon Oct  4 00:31:26 2010
@@ -10,7 +10,7 @@
 
 BEGIN { require 5.008001; }
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub new {
@@ -92,12 +92,13 @@
 
     # Common case, for foo_GET etc
     if ( $code = $controller->action_for($rest_method) ) {
-        $c->execute( $self->class, $self, @{ $c->req->args } );
-        return $c->forward( $code,  $c->req->args );
-     } elsif ($code = $controller->can($rest_method)) {
+        $c->execute( $self->class, $self, @{ $c->req->args } ); # Execute normal 'foo' action.
+        return $c->forward( $code,  $c->req->args ); # Forward to foo_GET if it's an action
+     }
+     elsif ($code = $controller->can($rest_method)) {
         # Exceute normal action
         $c->execute( $self->class, $self, @{ $c->req->args } );
-        $name = $rest_method;
+        $name = $rest_method; # Stash name and code to run 'foo_GET' like an action below.
     }
 
     # Generic handling for foo_OPTIONS

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize.pm Mon Oct  4 00:31:26 2010
@@ -7,7 +7,7 @@
 use Module::Pluggable::Object;
 use MRO::Compat;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 has _encoders => (

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/Data/Serializer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/Data/Serializer.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/Data/Serializer.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/Data/Serializer.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 extends 'Catalyst::Action';
 use Data::Serializer;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 extends 'Catalyst::Action';
 use JSON ();
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 has encoder => (

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON/XS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON/XS.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON/XS.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSON/XS.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 extends 'Catalyst::Action::Serialize::JSON';
 use JSON::XS ();
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub _build_encoder {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSONP.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSONP.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSONP.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/JSONP.pm Mon Oct  4 00:31:26 2010
@@ -4,7 +4,7 @@
 
 extends 'Catalyst::Action::Serialize::JSON';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 after 'execute' => sub {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/View.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/View.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/View.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/View.pm Mon Oct  4 00:31:26 2010
@@ -4,7 +4,7 @@
 
 extends 'Catalyst::Action';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/XML/Simple.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/XML/Simple.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/XML/Simple.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/XML/Simple.pm Mon Oct  4 00:31:26 2010
@@ -5,7 +5,7 @@
 
 extends 'Catalyst::Action';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML.pm Mon Oct  4 00:31:26 2010
@@ -6,7 +6,7 @@
 extends 'Catalyst::Action';
 use YAML::Syck;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML/HTML.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML/HTML.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML/HTML.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/Serialize/YAML/HTML.pm Mon Oct  4 00:31:26 2010
@@ -7,7 +7,7 @@
 use YAML::Syck;
 use URI::Find;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 sub execute {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/SerializeBase.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/SerializeBase.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/SerializeBase.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Action/SerializeBase.pm Mon Oct  4 00:31:26 2010
@@ -8,7 +8,7 @@
 use Catalyst::Request::REST;
 use Catalyst::Utils ();
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 after BUILDARGS => sub {

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Controller/REST.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Controller/REST.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Controller/REST.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Controller/REST.pm Mon Oct  4 00:31:26 2010
@@ -2,7 +2,7 @@
 use Moose;
 use namespace::autoclean;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 =head1 NAME
@@ -145,6 +145,12 @@
 Uses L<JSON> to generate JSON output.  It is strongly advised to also have
 L<JSON::XS> installed.  The C<text/x-json> content type is supported but is
 deprecated and you will receive warnings in your log.
+
+You can also add a hash in your controller config to pass options to the json object.
+For instance, to relax permissions when deserializing input, add:
+  __PACKAGE__->config(
+    json_options => { relaxed => 1 }
+  )
 
 =item * C<text/javascript> => C<JSONP>
 

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST.pm Mon Oct  4 00:31:26 2010
@@ -7,7 +7,7 @@
 extends 'Catalyst::Request';
 with 'Catalyst::TraitFor::Request::REST';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 # Please don't take this as a recommended way to do things.

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST/ForBrowsers.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST/ForBrowsers.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST/ForBrowsers.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/Request/REST/ForBrowsers.pm Mon Oct  4 00:31:26 2010
@@ -3,7 +3,7 @@
 
 use namespace::autoclean;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 extends 'Catalyst::Request::REST';

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST.pm Mon Oct  4 00:31:26 2010
@@ -3,7 +3,7 @@
 use HTTP::Headers::Util qw(split_header_words);
 use namespace::autoclean;
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 has [qw/ data accept_only /] => ( is => 'rw' );

Modified: trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST/ForBrowsers.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST/ForBrowsers.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST/ForBrowsers.pm (original)
+++ trunk/libcatalyst-action-rest-perl/lib/Catalyst/TraitFor/Request/REST/ForBrowsers.pm Mon Oct  4 00:31:26 2010
@@ -4,7 +4,7 @@
 
 with 'Catalyst::TraitFor::Request::REST';
 
-our $VERSION = '0.85';
+our $VERSION = '0.86';
 $VERSION = eval $VERSION;
 
 has _determined_real_method => (

Modified: trunk/libcatalyst-action-rest-perl/t/catalyst-action-rest-action-dispatch.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/t/catalyst-action-rest-action-dispatch.t?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/t/catalyst-action-rest-action-dispatch.t (original)
+++ trunk/libcatalyst-action-rest-perl/t/catalyst-action-rest-action-dispatch.t Mon Oct  4 00:31:26 2010
@@ -1,6 +1,6 @@
 use strict;
 use warnings;
-use Test::More tests => 21;
+use Test::More 0.88;
 use FindBin;
 
 use lib ( "$FindBin::Bin/lib", "$FindBin::Bin/../lib" );
@@ -42,3 +42,21 @@
     );
 }
 
+my $res = request(
+    $t->put(
+        url  => '/actions/test',
+        data => '',
+    )
+);
+is(
+    $res->header('Using-Action'),
+    'STATION',
+    "went through action for dispatching to PUT"
+);
+is(
+    $res->header('Using-Sub-Action'),
+    'MOO',
+    "went through sub action for dispatching to PUT"
+);
+
+done_testing;

Modified: trunk/libcatalyst-action-rest-perl/t/data-serializer.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/t/data-serializer.t?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/t/data-serializer.t (original)
+++ trunk/libcatalyst-action-rest-perl/t/data-serializer.t Mon Oct  4 00:31:26 2010
@@ -1,6 +1,6 @@
 use strict;
 use warnings;
-use Test::More tests => 29;
+use Test::More tests => 31;
 use FindBin;
 
 use lib ( "$FindBin::Bin/lib", "$FindBin::Bin/../lib" );
@@ -59,4 +59,22 @@
     }
 }
 
+{
+        my $t = Test::Rest->new( 'content_type' => 'text/x-data-dumper' );
+
+        my $post_data = "{ 'sushi' => die('hack attempt') }";
+        my $mres_post = request(
+            $t->post(
+                url  => '/monkey_put',
+                data => $post_data,
+            )
+        );
+        ok( ! $mres_post->is_success, "POST Data::Dumper fails due to invalid input" );
+        like(
+            $mres_post->content,
+            qr%Content-Type text/x-data-dumper had a problem with your request.*'die' trapped by operation mask%s,
+            "POST Data::Dumper data error matches"
+        );
+}
+
 1;

Modified: trunk/libcatalyst-action-rest-perl/t/json.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/t/json.t?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/t/json.t (original)
+++ trunk/libcatalyst-action-rest-perl/t/json.t Mon Oct  4 00:31:26 2010
@@ -10,7 +10,7 @@
 eval 'use JSON 2.12';
 plan skip_all => 'Install JSON 2.12 or later to run this test' if ($@);
 
-plan tests => 9;
+plan tests => 11;
 
 use_ok 'Catalyst::Test', 'Test::Serialize';
 
@@ -36,4 +36,14 @@
     is_deeply($mres_post->content, $exp, "POST data matches");
 }
 
+{
+    my $t = Test::Rest->new('content_type' => 'application/json');
+    my $json_data = '{ "sushi":"is good for monkey", }';
+    my $mres_post = request($t->post(url => '/monkey_put', data => $json_data));
+    ok( ! $mres_post->is_success, "Got expected failed status due to invalid JSON" );
+
+    my $relaxed_post = request( $t->post(url => "/monkey_json_put", data => $json_data));
+    ok( $relaxed_post->is_success, "Got success due to setting relaxed JSON input" );
+}
+
 1;

Modified: trunk/libcatalyst-action-rest-perl/t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm (original)
+++ trunk/libcatalyst-action-rest-perl/t/lib/Test/Catalyst/Action/REST/Controller/Actions.pm Mon Oct  4 00:31:26 2010
@@ -23,7 +23,7 @@
     $c->res->body('POST');
 }
 
-sub test_PUT :ActionClass('+Test::Action::Class') {
+sub test_PUT :ActionClass('+Test::Action::Class::Sub') {
     my ( $self, $c ) = @_;
     $c->res->body('PUT');
 }

Modified: trunk/libcatalyst-action-rest-perl/xt/version-numbers.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libcatalyst-action-rest-perl/xt/version-numbers.t?rev=63284&op=diff
==============================================================================
--- trunk/libcatalyst-action-rest-perl/xt/version-numbers.t (original)
+++ trunk/libcatalyst-action-rest-perl/xt/version-numbers.t Mon Oct  4 00:31:26 2010
@@ -1,23 +1,30 @@
 use strict;
 use warnings;
 
+use FindBin qw/$Bin/;
+use File::Spec;
 use File::Find::Rule;
 use Module::Info;
 
-use Test::More qw( no_plan );
+use Test::More;
 
 my %versions;
-for my $pm_file ( File::Find::Rule->file->name( qr/\.pm$/ )->in('lib' ) ) {
+for my $pm_file ( File::Find::Rule->file->name( qr/\.pm$/ )->in(File::Spec->catdir($Bin, '..', 'lib') ) ) {
     my $mod = Module::Info->new_from_file($pm_file);
 
-    ( my $stripped_file = $pm_file ) =~ s{^lib/}{};
+    ( my $stripped_file = $pm_file ) =~ s{.*/lib/}{};
 
     $versions{$stripped_file} = $mod->version;
 }
 
-my $moose_ver = $versions{'Catalyst/Action/REST.pm'};
+my $ver = delete $versions{'Catalyst/Action/REST.pm'};
+ok $ver;
+ok scalar(keys %versions);
 
-for my $module ( grep { $_ ne 'Catalyst/Action/REST.pm' } sort keys %versions ) {
-    is( $versions{$module}, $moose_ver,
+for my $module ( sort keys %versions ) {
+    is( $versions{$module}, $ver,
         "version for $module is the same as in Catalyst/Action/REST.pm" );
 }
+
+done_testing;
+




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