r59596 - in /trunk/libmouse-perl: ./ debian/ inc/Module/ inc/Module/Install/ lib/ lib/Mouse/ lib/Mouse/Meta/ lib/Mouse/Meta/Method/ lib/Mouse/Meta/Role/ lib/Mouse/Util/ t/900_mouse_bugs/ xs-src/

gregoa at users.alioth.debian.org gregoa at users.alioth.debian.org
Sat Jun 19 13:44:25 UTC 2010


Author: gregoa
Date: Sat Jun 19 13:44:16 2010
New Revision: 59596

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=59596
Log:
New upstream release.

Modified:
    trunk/libmouse-perl/Changes
    trunk/libmouse-perl/META.yml
    trunk/libmouse-perl/Makefile.PL
    trunk/libmouse-perl/debian/changelog
    trunk/libmouse-perl/inc/Module/Install.pm
    trunk/libmouse-perl/inc/Module/Install/Base.pm
    trunk/libmouse-perl/inc/Module/Install/Can.pm
    trunk/libmouse-perl/inc/Module/Install/Makefile.pm
    trunk/libmouse-perl/inc/Module/Install/Metadata.pm
    trunk/libmouse-perl/inc/Module/Install/With.pm
    trunk/libmouse-perl/inc/Module/Install/WriteAll.pm
    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/t/900_mouse_bugs/006_RT69939.t
    trunk/libmouse-perl/xs-src/Mouse.xs
    trunk/libmouse-perl/xs-src/MouseAccessor.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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/Changes (original)
+++ trunk/libmouse-perl/Changes Sat Jun 19 13:44:16 2010
@@ -1,4 +1,9 @@
 Revision history for Mouse
+
+0.61 Sat Jun 19 15:35:48 2010
+    [BUG FIXES]
+    * Workaround the Perl_call_sv() problem again (gfx)
+    * Update Module::Install to 0.99 for older versions of perls (gfx)
 
 0.60 Wed Jun  9 19:43:55 2010
     [CHANGES]

Modified: trunk/libmouse-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/META.yml?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/META.yml (original)
+++ trunk/libmouse-perl/META.yml Sat Jun 19 13:44:16 2010
@@ -13,7 +13,7 @@
   Devel::PPPort: 3.19
   ExtUtils::MakeMaker: 6.42
 distribution_type: module
-generated_by: 'Module::Install version 0.98'
+generated_by: 'Module::Install version 0.99'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -32,4 +32,4 @@
 resources:
   license: http://dev.perl.org/licenses/
   repository: git://git.moose.perl.org/Mouse.git
-version: 0.60
+version: 0.61

Modified: trunk/libmouse-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/Makefile.PL?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/Makefile.PL (original)
+++ trunk/libmouse-perl/Makefile.PL Sat Jun 19 13:44:16 2010
@@ -8,7 +8,7 @@
 
 use strict;
 use warnings;
-use inc::Module::Install;
+use inc::Module::Install 0.99;
 
 # for co-developpers
 use Module::Install::XSUtil 0.24;

Modified: trunk/libmouse-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/debian/changelog?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/debian/changelog (original)
+++ trunk/libmouse-perl/debian/changelog Sat Jun 19 13:44:16 2010
@@ -1,3 +1,9 @@
+libmouse-perl (0.61-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+
+ -- gregor herrmann <gregoa at debian.org>  Sat, 19 Jun 2010 15:43:30 +0200
+
 libmouse-perl (0.60-1) unstable; urgency=low
 
   * New upstream release.

Modified: trunk/libmouse-perl/inc/Module/Install.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install.pm Sat Jun 19 13:44:16 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.98';
+	$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/libmouse-perl/inc/Module/Install/Base.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/Base.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/Base.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/Base.pm Sat Jun 19 13:44:16 2010
@@ -4,7 +4,7 @@
 use strict 'vars';
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 }
 
 # Suspend handler for "redefined" warnings

Modified: trunk/libmouse-perl/inc/Module/Install/Can.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/Can.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/Can.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/Can.pm Sat Jun 19 13:44:16 2010
@@ -9,7 +9,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libmouse-perl/inc/Module/Install/Makefile.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/Makefile.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/Makefile.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/Makefile.pm Sat Jun 19 13:44:16 2010
@@ -8,7 +8,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libmouse-perl/inc/Module/Install/Metadata.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/Metadata.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/Metadata.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/Metadata.pm Sat Jun 19 13:44:16 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libmouse-perl/inc/Module/Install/With.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/With.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/With.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/With.pm Sat Jun 19 13:44:16 2010
@@ -8,7 +8,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 	@ISA     = 'Module::Install::Base';
 	$ISCORE  = 1;
 }

Modified: trunk/libmouse-perl/inc/Module/Install/WriteAll.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/inc/Module/Install/WriteAll.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/inc/Module/Install/WriteAll.pm (original)
+++ trunk/libmouse-perl/inc/Module/Install/WriteAll.pm Sat Jun 19 13:44:16 2010
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.98';
+	$VERSION = '0.99';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libmouse-perl/lib/Mouse.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/lib/Mouse.pm?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse.pm (original)
+++ trunk/libmouse-perl/lib/Mouse.pm Sat Jun 19 13:44:16 2010
@@ -3,7 +3,7 @@
 
 use Mouse::Exporter; # enables strict and warnings
 
-our $VERSION = '0.60';
+our $VERSION = '0.61';
 
 use Carp         qw(confess);
 use Scalar::Util qw(blessed);
@@ -160,7 +160,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Exporter.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Exporter.pm Sat Jun 19 13:44:16 2010
@@ -272,7 +272,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Attribute.pm Sat Jun 19 13:44:16 2010
@@ -401,7 +401,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Class.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Class.pm Sat Jun 19 13:44:16 2010
@@ -488,7 +488,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method.pm Sat Jun 19 13:44:16 2010
@@ -54,7 +54,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Accessor.pm Sat Jun 19 13:44:16 2010
@@ -182,7 +182,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Constructor.pm Sat Jun 19 13:44:16 2010
@@ -235,7 +235,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Delegation.pm Sat Jun 19 13:44:16 2010
@@ -61,7 +61,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Method/Destructor.pm Sat Jun 19 13:44:16 2010
@@ -55,7 +55,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Module.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Module.pm Sat Jun 19 13:44:16 2010
@@ -329,7 +329,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role.pm Sat Jun 19 13:44:16 2010
@@ -312,7 +312,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role/Composite.pm Sat Jun 19 13:44:16 2010
@@ -125,7 +125,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/Role/Method.pm Sat Jun 19 13:44:16 2010
@@ -23,7 +23,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Meta/TypeConstraint.pm Sat Jun 19 13:44:16 2010
@@ -236,7 +236,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Object.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Object.pm Sat Jun 19 13:44:16 2010
@@ -17,7 +17,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/PurePerl.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/PurePerl.pm Sat Jun 19 13:44:16 2010
@@ -731,7 +731,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Role.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Role.pm Sat Jun 19 13:44:16 2010
@@ -1,7 +1,7 @@
 package Mouse::Role;
 use Mouse::Exporter; # enables strict and warnings
 
-our $VERSION = '0.60';
+our $VERSION = '0.61';
 
 use Carp         qw(confess);
 use Scalar::Util qw(blessed);
@@ -145,7 +145,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Spec.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Spec.pm Sat Jun 19 13:44:16 2010
@@ -2,10 +2,10 @@
 use strict;
 use warnings;
 
-our $VERSION = '0.60';
+our $VERSION = '0.61';
 
 our $MouseVersion = $VERSION;
-our $MooseVersion = '0.93';
+our $MooseVersion = '1.05';
 
 sub MouseVersion{ $MouseVersion }
 sub MooseVersion{ $MooseVersion }
@@ -19,7 +19,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Tiny.pod (original)
+++ trunk/libmouse-perl/lib/Mouse/Tiny.pod Sat Jun 19 13:44:16 2010
@@ -5,7 +5,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Util.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Util.pm Sat Jun 19 13:44:16 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.60';
+    our $VERSION = '0.61';
 
     my $xs = !(exists $INC{'Mouse/PurePerl.pm'} || $ENV{MOUSE_PUREPERL});
 
@@ -365,7 +365,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm (original)
+++ trunk/libmouse-perl/lib/Mouse/Util/TypeConstraints.pm Sat Jun 19 13:44:16 2010
@@ -406,7 +406,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =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=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/lib/Mouse/XS.pod (original)
+++ trunk/libmouse-perl/lib/Mouse/XS.pod Sat Jun 19 13:44:16 2010
@@ -5,7 +5,7 @@
 
 =head1 VERSION
 
-This document describes Mouse version 0.60
+This document describes Mouse version 0.61
 
 =head1 DESCRIPTION
 

Modified: trunk/libmouse-perl/t/900_mouse_bugs/006_RT69939.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/t/900_mouse_bugs/006_RT69939.t?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/t/900_mouse_bugs/006_RT69939.t (original)
+++ trunk/libmouse-perl/t/900_mouse_bugs/006_RT69939.t Sat Jun 19 13:44:16 2010
@@ -34,13 +34,36 @@
 
 package main;
 
-use Test::More tests => 3;
+use Test::More tests => 3 * 3;
 
 $@ = '(ERRSV)';
 
-my $foo = Foo->new;
-isa_ok $foo, 'Foo';
-is $foo->bar, 42;
-$foo->bar(100);
-is $foo->bar, 100;
-note("\$@=$@");
+note 'do {}';
+do {
+    my $foo = Foo->new;
+    isa_ok $foo, 'Foo';
+    is $foo->bar, 42;
+    $foo->bar(100);
+    is $foo->bar, 100;
+    note("\$@=$@");
+};
+
+note 'eval {}';
+eval {
+    my $foo = Foo->new;
+    isa_ok $foo, 'Foo';
+    is $foo->bar, 42;
+    $foo->bar(100);
+    is $foo->bar, 100;
+    note("\$@=$@");
+};
+
+note 'eval ""';
+eval q{
+    my $foo = Foo->new;
+    isa_ok $foo, 'Foo';
+    is $foo->bar, 42;
+    $foo->bar(100);
+    is $foo->bar, 100;
+    note("\$@=$@");
+};

Modified: trunk/libmouse-perl/xs-src/Mouse.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/xs-src/Mouse.xs?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/xs-src/Mouse.xs (original)
+++ trunk/libmouse-perl/xs-src/Mouse.xs Sat Jun 19 13:44:16 2010
@@ -571,26 +571,28 @@
     }
 }
 
-SV*
+void
 new_object(SV* meta, ...)
 CODE:
 {
     AV* const xc   = mouse_get_xc(aTHX_ meta);
     HV* const args = mouse_buildargs(aTHX_ meta, NULL, ax, items);
-
-    RETVAL = mouse_instance_create(aTHX_ MOUSE_xc_stash(xc));
-    mouse_class_initialize_object(aTHX_ meta, RETVAL, args, FALSE);
-    mouse_buildall(aTHX_ xc, RETVAL, sv_2mortal(newRV_inc((SV*)args))); /* BUILDALL */
-}
-OUTPUT:
-    RETVAL
-
-SV*
+    SV* object;
+
+    object = mouse_instance_create(aTHX_ MOUSE_xc_stash(xc));
+    mouse_class_initialize_object(aTHX_ meta, object, args, FALSE);
+    mouse_buildall(aTHX_ xc, object, sv_2mortal(newRV_inc((SV*)args))); /* BUILDALL */
+    ST(0) = object; /* because object is mortal, we should return it as is */
+    XSRETURN(1);
+}
+
+void
 clone_object(SV* meta, SV* object, ...)
 CODE:
 {
     AV* const xc   = mouse_get_xc(aTHX_ meta);
     HV* const args = mouse_buildargs(aTHX_ meta, NULL, ax + 1, items - 1);
+    SV* proto;
 
     if(!mouse_is_an_instance_of(aTHX_ MOUSE_xc_stash(xc), object)) {
         mouse_throw_error(meta, object,
@@ -598,12 +600,11 @@
             mcall0(meta, mouse_name), object);
     }
 
-    RETVAL = mouse_instance_clone(aTHX_ object);
-    mouse_class_initialize_object(aTHX_ meta, RETVAL, args, TRUE);
-}
-OUTPUT:
-    RETVAL
-
+    proto = mouse_instance_clone(aTHX_ object);
+    mouse_class_initialize_object(aTHX_ meta, proto, args, TRUE);
+    ST(0) = proto; /* because object is mortal, we should return it as is */
+    XSRETURN(1);
+}
 
 void
 _initialize_object(SV* meta, SV* object, HV* args, bool is_cloning = FALSE)
@@ -655,7 +656,7 @@
 
 MODULE = Mouse  PACKAGE = Mouse::Object
 
-SV*
+void
 new(SV* klass, ...)
 CODE:
 {
@@ -663,6 +664,7 @@
     AV* const xc   = mouse_get_xc(aTHX_ meta);
     UV const flags = MOUSE_xc_flags(xc);
     SV* args;
+    SV* object;
 
     /* BUILDARGS */
     if(flags & MOUSEf_XC_HAS_BUILDARGS){
@@ -692,12 +694,12 @@
     }
 
     /* new_object */
-    RETVAL = mouse_instance_create(aTHX_ MOUSE_xc_stash(xc));
-    mouse_class_initialize_object(aTHX_ meta, RETVAL, (HV*)SvRV(args), FALSE);
-    mouse_buildall(aTHX_ xc, RETVAL, args); /* BUILDALL */
-}
-OUTPUT:
-    RETVAL
+    object = mouse_instance_create(aTHX_ MOUSE_xc_stash(xc));
+    mouse_class_initialize_object(aTHX_ meta, object, (HV*)SvRV(args), FALSE);
+    mouse_buildall(aTHX_ xc, object, args); /* BUILDALL */
+    ST(0) = object; /* because object is mortal, we should return it as is */
+    XSRETURN(1);
+}
 
 void
 DESTROY(SV* object)

Modified: trunk/libmouse-perl/xs-src/MouseAccessor.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/xs-src/MouseAccessor.xs?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/xs-src/MouseAccessor.xs (original)
+++ trunk/libmouse-perl/xs-src/MouseAccessor.xs Sat Jun 19 13:44:16 2010
@@ -1,6 +1,7 @@
 #include "mouse.h"
 
 #define CHECK_INSTANCE(instance) STMT_START{                           \
+        assert(instance);                                              \
         if(!(SvROK(instance) && SvTYPE(SvRV(instance)) == SVt_PVHV)){  \
             croak("Invalid object instance: '%"SVf"'", instance);      \
         }                                                              \
@@ -331,24 +332,26 @@
 
 SV*
 mouse_instance_create(pTHX_ HV* const stash) {
+    SV* instance;
     assert(stash);
     assert(SvTYPE(stash) == SVt_PVHV);
-    return sv_bless( newRV_noinc((SV*)newHV()), stash );
+    instance = sv_bless( newRV_noinc((SV*)newHV()), stash );
+    return sv_2mortal(instance);
 }
 
 SV*
 mouse_instance_clone(pTHX_ SV* const instance) {
-    HV* proto;
-    assert(instance);
-
-    CHECK_INSTANCE(instance);
-    proto = newHVhv((HV*)SvRV(instance));
-    return sv_bless( newRV_noinc((SV*)proto), SvSTASH(SvRV(instance)) );
+    SV* proto;
+    CHECK_INSTANCE(instance);
+    assert(SvOBJECT(SvRV(instance)));
+
+    proto = newRV_noinc((SV*)newHVhv((HV*)SvRV(instance)));
+    sv_bless(proto, SvSTASH(SvRV(instance)));
+    return sv_2mortal(proto);
 }
 
 bool
 mouse_instance_has_slot(pTHX_ SV* const instance, SV* const slot) {
-    assert(instance);
     assert(slot);
     CHECK_INSTANCE(instance);
     return hv_exists_ent((HV*)SvRV(instance), slot, 0U);
@@ -357,7 +360,6 @@
 SV*
 mouse_instance_get_slot(pTHX_ SV* const instance, SV* const slot) {
     HE* he;
-    assert(instance);
     assert(slot);
     CHECK_INSTANCE(instance);
     he = hv_fetch_ent((HV*)SvRV(instance), slot, FALSE, 0U);
@@ -368,7 +370,6 @@
 mouse_instance_set_slot(pTHX_ SV* const instance, SV* const slot, SV* const value) {
     HE* he;
     SV* sv;
-    assert(instance);
     assert(slot);
     assert(value);
     CHECK_INSTANCE(instance);
@@ -390,7 +391,6 @@
 void
 mouse_instance_weaken_slot(pTHX_ SV* const instance, SV* const slot) {
     HE* he;
-    assert(instance);
     assert(slot);
     CHECK_INSTANCE(instance);
     he = hv_fetch_ent((HV*)SvRV(instance), slot, FALSE, 0U);

Modified: trunk/libmouse-perl/xs-src/MouseUtil.xs
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmouse-perl/xs-src/MouseUtil.xs?rev=59596&op=diff
==============================================================================
--- trunk/libmouse-perl/xs-src/MouseUtil.xs (original)
+++ trunk/libmouse-perl/xs-src/MouseUtil.xs Sat Jun 19 13:44:16 2010
@@ -120,55 +120,28 @@
     }
 }
 
-static I32
-S_dopoptosub(pTHX_ I32 const startingblock)
-{
-    const PERL_CONTEXT* const cxstk = cxstack;
-    I32 i;
-    for (i = startingblock; i >= 0; i--) {
-        const PERL_CONTEXT* const cx = &cxstk[i];
-
-        switch (CxTYPE(cx)) {
-        case CXt_EVAL:
-        case CXt_SUB:
-        case CXt_FORMAT:
-            return i;
-        }
-    }
-    return i;
-}
-
 /* workaround Perl-RT #69939 */
 I32
 mouse_call_sv_safe(pTHX_ SV* const sv, I32 const flags) {
-    const PERL_CONTEXT* const cx = &cxstack[S_dopoptosub(aTHX_ cxstack_ix)];
-    assert( (flags & G_EVAL) == 0 );
-
-    //warn("cx_type=0x%02x PL_eval=0x%02x (%"SVf")", (unsigned)cx->cx_type, (unsigned)PL_in_eval, sv);
-    if(cx->cx_type & CXp_TRYBLOCK) {
-        return Perl_call_sv(aTHX_ sv, flags);
-    }
-    else {
-        I32 count;
-        ENTER;
-        /* Don't do SAVETMPS */
-
-        SAVESPTR(ERRSV);
-        ERRSV = sv_newmortal();
-
-        count = Perl_call_sv(aTHX_ sv, flags | G_EVAL);
-
-        if(sv_true(ERRSV)){
-            SV* const err = sv_mortalcopy(ERRSV);
-            LEAVE;
-            sv_setsv(ERRSV, err);
-            croak(NULL); /* rethrow */
-        }
-
+    I32 count;
+    ENTER;
+    /* Don't do SAVETMPS */
+
+    SAVESPTR(ERRSV);
+    ERRSV = sv_newmortal();
+
+    count = Perl_call_sv(aTHX_ sv, flags | G_EVAL);
+
+    if(sv_true(ERRSV)){
+        SV* const err = sv_mortalcopy(ERRSV);
         LEAVE;
-
-        return count;
-    }
+        sv_setsv(ERRSV, err);
+        croak(NULL); /* rethrow */
+    }
+
+    LEAVE;
+
+    return count;
 }
 
 void




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