r60629 - in /trunk/libmouse-perl: ./ debian/ lib/ lib/Mouse/ lib/Mouse/Meta/ lib/Mouse/Meta/Method/ lib/Mouse/Meta/Role/ lib/Mouse/Util/ t/001_mouse/ t/020_attributes/ t/990_deprecated/ xs-src/

ansgar-guest at users.alioth.debian.org ansgar-guest at users.alioth.debian.org
Mon Jul 26 17:18:38 UTC 2010


Author: ansgar-guest
Date: Mon Jul 26 17:18:22 2010
New Revision: 60629

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=60629
Log:
* New upstream release.
* debian/copyright: Refer to /usr/share/common-licenses/GPL-1.
* Bump Standards-Version to 3.9.1.

Added:
    trunk/libmouse-perl/t/020_attributes/001_attribute_reader_generation.t
      - copied unchanged from r60626, branches/upstream/libmouse-perl/current/t/020_attributes/001_attribute_reader_generation.t
    trunk/libmouse-perl/t/020_attributes/004_attribute_triggers.t
      - copied unchanged from r60626, branches/upstream/libmouse-perl/current/t/020_attributes/004_attribute_triggers.t
    trunk/libmouse-perl/t/020_attributes/009_attribute_inherited_slot_specs.t
      - copied unchanged from r60626, branches/upstream/libmouse-perl/current/t/020_attributes/009_attribute_inherited_slot_specs.t
    trunk/libmouse-perl/t/020_attributes/022_illegal_options_for_inheritance.t
      - copied unchanged from r60626, branches/upstream/libmouse-perl/current/t/020_attributes/022_illegal_options_for_inheritance.t
Removed:
    trunk/libmouse-perl/t/990_deprecated/044-attribute-metaclass.t
    trunk/libmouse-perl/t/990_deprecated/047-attribute-metaclass-role.t
Modified:
    trunk/libmouse-perl/Changes
    trunk/libmouse-perl/MANIFEST
    trunk/libmouse-perl/META.yml
    trunk/libmouse-perl/debian/changelog
    trunk/libmouse-perl/debian/control
    trunk/libmouse-perl/debian/copyright
    trunk/libmouse-perl/lib/Mouse.pm
    trunk/libmouse-perl/lib/Mouse/Exporter.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Class.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Method.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Module.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Role.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm
    trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm
    trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm
    trunk/libmouse-perl/lib/Mouse/Object.pm
    trunk/libmouse-perl/lib/Mouse/PurePerl.pm
    trunk/libmouse-perl/lib/Mouse/Role.pm
    trunk/libmouse-perl/lib/Mouse/Spec.pm
    trunk/libmouse-perl/lib/Mouse/Tiny.pod
    trunk/libmouse-perl/lib/Mouse/Util.pm
    trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm
    trunk/libmouse-perl/lib/Mouse/XS.pod
    trunk/libmouse-perl/mouse.h
    trunk/libmouse-perl/t/001_mouse/007-attributes.t
    trunk/libmouse-perl/xs-src/MouseAttribute.xs
    trunk/libmouse-perl/xs-src/MouseUtil.xs

Modified: trunk/libmouse-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/Changes?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/Changes (original)
+++ trunk/libmouse-perl/Changes Mon Jul 26 17:18:22 2010
@@ -1,4 +1,14 @@
 Revision history for Mouse
+
+0.64 Mon Jul 26 20:48:13 2010
+    [BUG FIXES]
+    * Build failure on 5.13.3
+
+    [CHANGES]
+    * Illegal inheritance options for clone_and_inherit_options()
+      is now a black list, not a white list (Moose 1.09 feature)
+    * Remove long deprecated methods in Mouse::Meta::Attribute:
+        clone_parent, get_parent_args, canonicalize_args, create
 
 0.63 Tue Jul 20 19:26:30 2010
     [CHANGES]

Modified: trunk/libmouse-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/MANIFEST?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/MANIFEST (original)
+++ trunk/libmouse-perl/MANIFEST Mon Jul 26 17:18:22 2010
@@ -177,12 +177,15 @@
 t/010_basics/019-destruction.t
 t/010_basics/020-global-destruction-helper.pl
 t/010_basics/020-global-destruction.t
+t/020_attributes/001_attribute_reader_generation.t
 t/020_attributes/002_attribute_writer_generation.t
 t/020_attributes/003_attribute_accessor_generation.t
+t/020_attributes/004_attribute_triggers.t
 t/020_attributes/005_attribute_does.t
 t/020_attributes/006_attribute_required.t
 t/020_attributes/007_attribute_custom_metaclass.t
 t/020_attributes/008_attribute_type_unions.t
+t/020_attributes/009_attribute_inherited_slot_specs.t
 t/020_attributes/011_more_attr_delegation.t
 t/020_attributes/012_misc_attribute_tests.t
 t/020_attributes/013_attr_dereference_test.t
@@ -192,6 +195,7 @@
 t/020_attributes/017_attribute_traits_n_meta.t
 t/020_attributes/018_no_init_arg.t
 t/020_attributes/020_trigger_and_coerce.t
+t/020_attributes/022_illegal_options_for_inheritance.t
 t/020_attributes/024_attribute_traits_parameterized.t
 t/020_attributes/025_chained_coercion.t
 t/020_attributes/026_attribute_without_any_methods.t
@@ -291,8 +295,6 @@
 t/900_mouse_bugs/008_RT56837.t
 t/900_mouse_bugs/009_RT57144.t
 t/990_deprecated/001-export_to_level.t
-t/990_deprecated/044-attribute-metaclass.t
-t/990_deprecated/047-attribute-metaclass-role.t
 t/lib/Bar.pm
 t/lib/BaseClass.pm
 t/lib/ClassType_Foo.pm

Modified: trunk/libmouse-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/META.yml?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/META.yml (original)
+++ trunk/libmouse-perl/META.yml Mon Jul 26 17:18:22 2010
@@ -31,4 +31,4 @@
 resources:
   license: http://dev.perl.org/licenses/
   repository: git://git.moose.perl.org/Mouse.git
-version: 0.63
+version: 0.64

Modified: trunk/libmouse-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/debian/changelog?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/debian/changelog (original)
+++ trunk/libmouse-perl/debian/changelog Mon Jul 26 17:18:22 2010
@@ -1,3 +1,11 @@
+libmouse-perl (0.64-1) unstable; urgency=low
+
+  * New upstream release.
+  * debian/copyright: Refer to /usr/share/common-licenses/GPL-1.
+  * Bump Standards-Version to 3.9.1.
+
+ -- Ansgar Burchardt <ansgar at 43-1.org>  Tue, 27 Jul 2010 02:18:02 +0900
+
 libmouse-perl (0.63-1) unstable; urgency=low
 
   * New upstream release.

Modified: trunk/libmouse-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/debian/control?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/debian/control (original)
+++ trunk/libmouse-perl/debian/control Mon Jul 26 17:18:22 2010
@@ -12,7 +12,7 @@
  Rene Mayorga <rmayorga at debian.org>, Antonio Radici <antonio at dyne.org>,
  Ryan Niebur <ryan at debian.org>, Nathan Handler <nhandler at ubuntu.com>,
  Jonathan Yu <jawnsy at cpan.org>, Ansgar Burchardt <ansgar at 43-1.org>
-Standards-Version: 3.9.0
+Standards-Version: 3.9.1
 Homepage: http://search.cpan.org/dist/Mouse/
 Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libmouse-perl/
 Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libmouse-perl/

Modified: trunk/libmouse-perl/debian/copyright
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/debian/copyright?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/debian/copyright (original)
+++ trunk/libmouse-perl/debian/copyright Mon Jul 26 17:18:22 2010
@@ -3,7 +3,6 @@
 Source: http://search.cpan.org/dist/Mouse/
 Name: Mouse
 
-Files: *
 Copyright: 2006-2010, Infinity Interactive, Inc.
 License: Artistic or GPL-1+
 
@@ -33,7 +32,7 @@
  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'
+ can be found in `/usr/share/common-licenses/Artistic'.
 
 License: GPL-1+
  This program is free software; you can redistribute it and/or modify
@@ -41,5 +40,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 GNU/Linux systems, the complete text of version 1 of the GNU
+ General Public License can be found in `/usr/share/common-licenses/GPL-1'.

Modified: trunk/libmouse-perl/lib/Mouse.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse.pm (original)
+++ trunk/libmouse-perl/lib/Mouse.pm Mon Jul 26 17:18:22 2010
@@ -3,7 +3,7 @@
 
 use Mouse::Exporter; # enables strict and warnings
 
-our $VERSION = '0.63';
+our $VERSION = '0.64';
 
 use Carp         qw(confess);
 use Scalar::Util qw(blessed);
@@ -160,7 +160,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SYNOPSIS
 

Modified: trunk/libmouse-perl/lib/Mouse/Exporter.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Exporter.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Exporter.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Exporter.pm Mon Jul 26 17:18:22 2010
@@ -39,15 +39,10 @@
 
         export_to_level => sub {
             my($package, $level, undef, @args) = @_; # the third argument is redundant
-
-            Carp::carp("$package->export_to_level has been deprecated."
-                ." Use $package->import({ into_level => LEVEL }) instead");
             $package->import({ into_level => $level + 1 }, @args);
         },
         export => sub {
             my($package, $into, @args) = @_;
-            Carp::carp("$package->export has been deprecated."
-                ." Use $package->import({ into => PACKAGE }) instead");
             $package->import({ into => $into }, @args);
         },
     );
@@ -272,7 +267,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SYNOPSIS
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm Mon Jul 26 17:18:22 2010
@@ -16,6 +16,7 @@
   'does',
   'handles',
   'init_arg',
+  'insertion_order',
   'is',
   'isa',
   'lazy',
@@ -37,7 +38,6 @@
   # Moose defines, but Mouse doesn't
   #'definition_context',
   #'initializer',
-  #'insertion_order',
 
   # special case for AttributeHelpers
   'provides',
@@ -51,11 +51,6 @@
     my $name  = shift;
 
     my $args  = $class->Mouse::Object::BUILDARGS(@_);
-
-    # XXX: for backward compatibility (with method modifiers)
-    if($class->can('canonicalize_args') != \&canonicalize_args){
-        %{$args} = $class->canonicalize_args($name, %{$args});
-    }
 
     $class->_process_options($name, $args);
 
@@ -135,27 +130,6 @@
     return( $class, @traits );
 }
 
-sub canonicalize_args{ # DEPRECATED
-    #my($self, $name, %args) = @_;
-    my($self, undef, %args) = @_;
-
-    Carp::cluck("$self->canonicalize_args has been deprecated."
-        . "Use \$self->_process_options instead.");
-
-    return %args;
-}
-
-sub create { # DEPRECATED
-    #my($self, $class, $name, %args) = @_;
-    my($self) = @_;
-
-    Carp::cluck("$self->create has been deprecated."
-        . "Use \$meta->add_attribute and \$attr->install_accessors instead.");
-
-    # noop
-    return $self;
-}
-
 sub _coerce_and_verify {
     #my($self, $value, $instance) = @_;
     my($self, $value) = @_;
@@ -192,19 +166,28 @@
     );
 }
 
+sub illegal_options_for_inheritance {
+    return qw(is reader writer accessor clearer predicate);
+}
+
 sub clone_and_inherit_options{
     my $self = shift;
     my $args = $self->Mouse::Object::BUILDARGS(@_);
 
+    foreach my $illegal($self->illegal_options_for_inheritance) {
+        if(exists $args->{$illegal} and exists $self->{$illegal}) {
+            $self->throw_error("Illegal inherited option: $illegal");
+        }
+    }
+
+    foreach my $name(keys %{$self}){
+        if(!exists $args->{$name}){
+            $args->{$name} = $self->{$name}; # inherit from self
+        }
+    }
+
     my($attribute_class, @traits) = ref($self)->interpolate_class($args);
-
     $args->{traits} = \@traits if @traits;
-    # do not inherit the 'handles' attribute
-    foreach my $name(keys %{$self}){
-        if(!exists $args->{$name} && $name ne 'handles'){
-            $args->{$name} = $self->{$name};
-        }
-    }
 
     # remove temporary caches
     foreach my $attr(keys %{$args}){
@@ -213,35 +196,13 @@
         }
     }
 
+    # remove default if lazy_build => 1
+    if($args->{lazy_build}) {
+        delete $args->{default};
+    }
+
     return $attribute_class->new($self->name, $args);
 }
-
-sub clone_parent { # DEPRECATED
-    my $self  = shift;
-    my $class = shift;
-    my $name  = shift;
-    my %args  = ($self->get_parent_args($class, $name), @_);
-
-    Carp::cluck("$self->clone_parent has been deprecated."
-        . "Use \$meta->add_attribute and \$attr->install_accessors instead.");
-
-    $self->clone_and_inherited_args($class, $name, %args);
-}
-
-sub get_parent_args { # DEPRECATED
-    my $self  = shift;
-    my $class = shift;
-    my $name  = shift;
-
-    for my $super ($class->linearized_isa) {
-        my $super_attr = $super->can("meta") && $super->meta->get_attribute($name)
-            or next;
-        return %{ $super_attr->_create_args };
-    }
-
-    $self->throw_error("Could not find an attribute by the name of '$name' to inherit from");
-}
-
 
 sub get_read_method {
     return $_[0]->reader || $_[0]->accessor
@@ -329,17 +290,16 @@
         my %handles = $attribute->_canonicalize_handles($attribute->{handles});
 
         while(my($handle, $method_to_call) = each %handles){
+            if($metaclass->has_method($handle)) {
+                $attribute->throw_error("You cannot overwrite a locally defined method ($handle) with a delegation");
+            }
+
             $metaclass->add_method($handle =>
                 $attribute->_make_delegation_method(
                     $handle, $method_to_call));
 
             $attribute->associate_method($handle);
         }
-    }
-
-    if($attribute->can('create') != \&create){
-        # backword compatibility
-        $attribute->create($metaclass, $attribute->name, %{$attribute});
     }
 
     return;
@@ -401,7 +361,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 METHODS
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Class.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Class.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Class.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Class.pm Mon Jul 26 17:18:22 2010
@@ -209,8 +209,12 @@
 
     weaken( $attr->{associated_class} = $self );
 
+    # install accessors first
+    $attr->install_accessors();
+
+    # then register the attribute to the metaclass
+    $attr->{insertion_order} = keys %{ $self->{attributes} };
     $self->{attributes}{$attr->name} = $attr;
-    $attr->install_accessors();
 
     if(!$attr->{associated_methods} && ($attr->{is} || '') ne 'bare'){
         Carp::carp(qq{Attribute ($name) of class }.$self->name
@@ -486,7 +490,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 METHODS
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Method.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Method.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method.pm Mon Jul 26 17:18:22 2010
@@ -54,7 +54,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm Mon Jul 26 17:18:22 2010
@@ -182,7 +182,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm Mon Jul 26 17:18:22 2010
@@ -211,7 +211,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm Mon Jul 26 17:18:22 2010
@@ -61,7 +61,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm Mon Jul 26 17:18:22 2010
@@ -55,7 +55,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Module.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Module.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Module.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Module.pm Mon Jul 26 17:18:22 2010
@@ -329,7 +329,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Role.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Role.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role.pm Mon Jul 26 17:18:22 2010
@@ -312,7 +312,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm Mon Jul 26 17:18:22 2010
@@ -125,7 +125,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm Mon Jul 26 17:18:22 2010
@@ -23,7 +23,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm Mon Jul 26 17:18:22 2010
@@ -239,7 +239,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 DESCRIPTION
 

Modified: trunk/libmouse-perl/lib/Mouse/Object.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Object.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Object.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Object.pm Mon Jul 26 17:18:22 2010
@@ -17,7 +17,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 METHODS
 

Modified: trunk/libmouse-perl/lib/Mouse/PurePerl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/PurePerl.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/PurePerl.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/PurePerl.pm Mon Jul 26 17:18:22 2010
@@ -482,6 +482,7 @@
 sub should_coerce        { $_[0]->{coerce}                 }
 
 sub documentation        { $_[0]->{documentation}          }
+sub insertion_order      { $_[0]->{insertion_order}        }
 
 # predicates
 
@@ -778,7 +779,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SEE ALSO
 

Modified: trunk/libmouse-perl/lib/Mouse/Role.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Role.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Role.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Role.pm Mon Jul 26 17:18:22 2010
@@ -1,7 +1,7 @@
 package Mouse::Role;
 use Mouse::Exporter; # enables strict and warnings
 
-our $VERSION = '0.63';
+our $VERSION = '0.64';
 
 use Carp         qw(confess);
 use Scalar::Util qw(blessed);
@@ -145,7 +145,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SYNOPSIS
 

Modified: trunk/libmouse-perl/lib/Mouse/Spec.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Spec.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Spec.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Spec.pm Mon Jul 26 17:18:22 2010
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '0.63';
+our $VERSION = '0.64';
 
 our $MouseVersion = $VERSION;
 our $MooseVersion = '1.05';
@@ -19,7 +19,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 SYNOPSIS
 

Modified: trunk/libmouse-perl/lib/Mouse/Tiny.pod
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Tiny.pod?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Tiny.pod (original)
+++ trunk/libmouse-perl/lib/Mouse/Tiny.pod Mon Jul 26 17:18:22 2010
@@ -5,7 +5,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 DESCRIPTION
 

Modified: trunk/libmouse-perl/lib/Mouse/Util.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Util.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Util.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Util.pm Mon Jul 26 17:18:22 2010
@@ -52,7 +52,7 @@
     # Because Mouse::Util is loaded first in all the Mouse sub-modules,
     # XS loader is placed here, not in Mouse.pm.
 
-    our $VERSION = '0.63';
+    our $VERSION = '0.64';
 
     my $xs = !(exists $INC{'Mouse/PurePerl.pm'} || $ENV{MOUSE_PUREPERL});
 
@@ -365,7 +365,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 IMPLEMENTATIONS FOR
 

Modified: trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm Mon Jul 26 17:18:22 2010
@@ -417,7 +417,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head2 SYNOPSIS
 

Modified: trunk/libmouse-perl/lib/Mouse/XS.pod
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse/XS.pod?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/XS.pod (original)
+++ trunk/libmouse-perl/lib/Mouse/XS.pod Mon Jul 26 17:18:22 2010
@@ -5,7 +5,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.63
+This document describes Mouse version 0.64
 
 =head1 DESCRIPTION
 

Modified: trunk/libmouse-perl/mouse.h
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/mouse.h?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/mouse.h (original)
+++ trunk/libmouse-perl/mouse.h Mon Jul 26 17:18:22 2010
@@ -23,6 +23,10 @@
 #endif
 #ifndef GvNAMELEN_get
 #define GvNAMELEN_get GvNAMELEN
+#endif
+
+#ifndef CvGV_set
+#define CvGV_set(cv, gv) (CvGV(cv) = (gv))
 #endif
 
 #ifndef mro_get_linear_isa

Modified: trunk/libmouse-perl/t/001_mouse/007-attributes.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/t/001_mouse/007-attributes.t?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/t/001_mouse/007-attributes.t (original)
+++ trunk/libmouse-perl/t/001_mouse/007-attributes.t Mon Jul 26 17:18:22 2010
@@ -76,4 +76,8 @@
     Class->write_attr(42);
 };
 
+my @attrs = map { $_->name }
+    sort { $a->insertion_order <=> $b->insertion_order } $object->meta->get_all_attributes;
+is join(' ', @attrs), 'x y z attr', 'insertion_order';
+
 done_testing;

Modified: trunk/libmouse-perl/xs-src/MouseAttribute.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/xs-src/MouseAttribute.xs?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/xs-src/MouseAttribute.xs (original)
+++ trunk/libmouse-perl/xs-src/MouseAttribute.xs Mon Jul 26 17:18:22 2010
@@ -249,6 +249,7 @@
     INSTALL_SIMPLE_READER_WITH_KEY(Attribute, should_auto_deref, auto_deref);
     INSTALL_SIMPLE_READER_WITH_KEY(Attribute, should_coerce, coerce);
     INSTALL_SIMPLE_READER(Attribute, documentation);
+    INSTALL_SIMPLE_READER(Attribute, insertion_order);
 
     /* predicates */
     INSTALL_SIMPLE_PREDICATE_WITH_KEY(Attribute, has_accessor, accessor);

Modified: trunk/libmouse-perl/xs-src/MouseUtil.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/xs-src/MouseUtil.xs?rev=60629&op=diff
==============================================================================
--- trunk/libmouse-perl/xs-src/MouseUtil.xs (original)
+++ trunk/libmouse-perl/xs-src/MouseUtil.xs Mon Jul 26 17:18:22 2010
@@ -348,7 +348,7 @@
             }
         }
 
-        CvGV(cv) = gv;
+        CvGV_set(cv, gv);
         CvANON_off(cv);
     }
 }




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