r45883 - in /branches/upstream/libmoosex-method-signatures-perl/current: Changes MANIFEST META.yml lib/MooseX/Method/Signatures.pm lib/MooseX/Method/Signatures/Meta/Method.pm t/too_many_args.t

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Fri Oct 16 14:53:25 UTC 2009


Author: jawnsy-guest
Date: Fri Oct 16 14:52:51 2009
New Revision: 45883

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=45883
Log:
[svn-upgrade] Integrating new upstream version, libmoosex-method-signatures-perl (0.29)

Added:
    branches/upstream/libmoosex-method-signatures-perl/current/t/too_many_args.t
Modified:
    branches/upstream/libmoosex-method-signatures-perl/current/Changes
    branches/upstream/libmoosex-method-signatures-perl/current/MANIFEST
    branches/upstream/libmoosex-method-signatures-perl/current/META.yml
    branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures.pm
    branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures/Meta/Method.pm

Modified: branches/upstream/libmoosex-method-signatures-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/Changes?rev=45883&op=diff
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/Changes (original)
+++ branches/upstream/libmoosex-method-signatures-perl/current/Changes Fri Oct 16 14:52:51 2009
@@ -1,4 +1,10 @@
 Version history for MooseX::Method::Signatures
+
+0.29  Thu, 15 Oct 2009 23:27:08 +0200
+  * Fix regression introduced in 0.29.
+    Validation for methods without named arguments wasn't strict enough
+    anymore. Passing too many arguments hasn't been rejected. Thanks
+    Justin Hunter for finding this.
 
 0.28  Fri, 09 Oct 2009 01:28:02 +0200
   * Fix default values for named arguments.

Modified: branches/upstream/libmoosex-method-signatures-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/MANIFEST?rev=45883&op=diff
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/MANIFEST (original)
+++ branches/upstream/libmoosex-method-signatures-perl/current/MANIFEST Fri Oct 16 14:52:51 2009
@@ -43,6 +43,7 @@
 t/signatures.t
 t/sigs-optional.t
 t/structured.t
+t/too_many_args.t
 t/traits.t
 t/type_alias.t
 t/types.t

Modified: branches/upstream/libmoosex-method-signatures-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/META.yml?rev=45883&op=diff
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/META.yml (original)
+++ branches/upstream/libmoosex-method-signatures-perl/current/META.yml Fri Oct 16 14:52:51 2009
@@ -41,4 +41,4 @@
   bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Method-Signatures
   license: http://dev.perl.org/licenses/
   repository: git://github.com/rafl/moosex-method-signatures.git
-version: 0.28
+version: 0.29

Modified: branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures.pm?rev=45883&op=diff
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures.pm (original)
+++ branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures.pm Fri Oct 16 14:52:51 2009
@@ -19,7 +19,7 @@
 
 use namespace::autoclean;
 
-our $VERSION = '0.28';
+our $VERSION = '0.29';
 
 has package => (
     is            => 'ro',

Modified: branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures/Meta/Method.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures/Meta/Method.pm?rev=45883&op=diff
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures/Meta/Method.pm (original)
+++ branches/upstream/libmoosex-method-signatures-perl/current/lib/MooseX/Method/Signatures/Meta/Method.pm Fri Oct 16 14:52:51 2009
@@ -407,10 +407,7 @@
                 $i++;
             }
 
-            if ($self->_has_slurpy_positional) {
-                push @positional_args, @{ $_ }[$i .. $#{ $_ }];
-            }
-            elsif (%named) {
+            if (%named) {
                 my %rest = @{ $_ }[$i .. $#{ $_ }];
                 while (my ($key, $spec) = each %named) {
                     if (exists $rest{$key}) {
@@ -425,6 +422,9 @@
 
                 @named_args{keys %rest} = values %rest;
             }
+            elsif ($#{ $_ } >= $i) {
+                push @positional_args, @{ $_ }[$i .. $#{ $_ }];
+            }
 
             return [\@positional_args, \%named_args];
         };

Added: branches/upstream/libmoosex-method-signatures-perl/current/t/too_many_args.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libmoosex-method-signatures-perl/current/t/too_many_args.t?rev=45883&op=file
==============================================================================
--- branches/upstream/libmoosex-method-signatures-perl/current/t/too_many_args.t (added)
+++ branches/upstream/libmoosex-method-signatures-perl/current/t/too_many_args.t Fri Oct 16 14:52:51 2009
@@ -1,0 +1,18 @@
+use strict;
+use warnings;
+use Test::More;
+use Test::Exception;
+
+{
+    package Foo;
+    use Moose;
+    use MooseX::Method::Signatures;
+
+    method foo ($bar) { $bar }
+}
+
+my $o = Foo->new;
+lives_ok(sub { $o->foo(42) });
+throws_ok(sub { $o->foo(42, 23) }, qr/Validation failed/);
+
+done_testing;




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