r44367 - in /trunk/libmoosex-singleton-perl: ChangeLog MANIFEST META.yml debian/changelog lib/MooseX/Singleton.pm lib/MooseX/Singleton/Meta/ lib/MooseX/Singleton/Object.pm lib/MooseX/Singleton/Role/ t/006-cooperative.t

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Sun Sep 20 00:13:36 UTC 2009


Author: jawnsy-guest
Date: Sun Sep 20 00:13:30 2009
New Revision: 44367

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=44367
Log:
* New upstream release
  + Use roles instead of metaclass subclasses, so it now plays nicely
    with other extensions, such as MooseX::StrictConstructor

Added:
    trunk/libmoosex-singleton-perl/lib/MooseX/Singleton/Role/
      - copied from r44320, branches/upstream/libmoosex-singleton-perl/current/lib/MooseX/Singleton/Role/
    trunk/libmoosex-singleton-perl/t/006-cooperative.t
      - copied unchanged from r44320, branches/upstream/libmoosex-singleton-perl/current/t/006-cooperative.t
Removed:
    trunk/libmoosex-singleton-perl/lib/MooseX/Singleton/Meta/
    trunk/libmoosex-singleton-perl/lib/MooseX/Singleton/Object.pm
Modified:
    trunk/libmoosex-singleton-perl/ChangeLog
    trunk/libmoosex-singleton-perl/MANIFEST
    trunk/libmoosex-singleton-perl/META.yml
    trunk/libmoosex-singleton-perl/debian/changelog
    trunk/libmoosex-singleton-perl/lib/MooseX/Singleton.pm

Modified: trunk/libmoosex-singleton-perl/ChangeLog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-singleton-perl/ChangeLog?rev=44367&op=diff
==============================================================================
--- trunk/libmoosex-singleton-perl/ChangeLog (original)
+++ trunk/libmoosex-singleton-perl/ChangeLog Sun Sep 20 00:13:30 2009
@@ -1,4 +1,14 @@
 Revision history for Perl extension MooseX-Singleton
+
+0.21 2009-09-12
+    - Various modules in this class were trying to load the old pre-0.20
+      classes, which have all been renamed. Tests passed if you had 0.19 or
+      earlier installed, but failed for fresh installations.  (Dave Rolsky)
+
+0.20 2009-09-11
+    - Converted this extension to use roles rather than metaclass
+      subclasses. This means it will cooperate with other extensions on CPAN,
+      like MooseX::StrictConstructor, etc. (Dave Rolsky)
 
 0.19 2009-07-09
     - Remove ambiguity about copyright holder (Sartak)

Modified: trunk/libmoosex-singleton-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-singleton-perl/MANIFEST?rev=44367&op=diff
==============================================================================
--- trunk/libmoosex-singleton-perl/MANIFEST (original)
+++ trunk/libmoosex-singleton-perl/MANIFEST Sun Sep 20 00:13:30 2009
@@ -8,16 +8,16 @@
 inc/Module/Install/Win32.pm
 inc/Module/Install/WriteAll.pm
 lib/MooseX/Singleton.pm
-lib/MooseX/Singleton/Meta/Class.pm
-lib/MooseX/Singleton/Meta/Instance.pm
-lib/MooseX/Singleton/Meta/Method/Constructor.pm
-lib/MooseX/Singleton/Object.pm
+lib/MooseX/Singleton/Role/Meta/Class.pm
+lib/MooseX/Singleton/Role/Meta/Instance.pm
+lib/MooseX/Singleton/Role/Meta/Method/Constructor.pm
+lib/MooseX/Singleton/Role/Object.pm
 Makefile.PL
 MANIFEST			This list of files
 META.yml
-README
 t/001-basic.t
 t/002-init.t
 t/003-immutable.t
 t/004-build_bug.t
 t/005-build_bug-immutable.t
+t/006-cooperative.t

Modified: trunk/libmoosex-singleton-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-singleton-perl/META.yml?rev=44367&op=diff
==============================================================================
--- trunk/libmoosex-singleton-perl/META.yml (original)
+++ trunk/libmoosex-singleton-perl/META.yml Sun Sep 20 00:13:30 2009
@@ -23,4 +23,4 @@
   Moose: 0.82
 resources:
   license: http://dev.perl.org/licenses/
-version: 0.19
+version: 0.21

Modified: trunk/libmoosex-singleton-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-singleton-perl/debian/changelog?rev=44367&op=diff
==============================================================================
--- trunk/libmoosex-singleton-perl/debian/changelog (original)
+++ trunk/libmoosex-singleton-perl/debian/changelog Sun Sep 20 00:13:30 2009
@@ -1,3 +1,11 @@
+libmoosex-singleton-perl (0.21-1) UNRELEASED; urgency=low
+
+  * New upstream release
+    + Use roles instead of metaclass subclasses, so it now plays nicely
+      with other extensions, such as MooseX::StrictConstructor
+
+ -- Jonathan Yu <jawnsy at cpan.org>  Sat, 19 Sep 2009 08:57:04 -0400
+
 libmoosex-singleton-perl (0.19-1) unstable; urgency=low
 
   * Initial Release. (Closes: #533473)

Modified: trunk/libmoosex-singleton-perl/lib/MooseX/Singleton.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-singleton-perl/lib/MooseX/Singleton.pm?rev=44367&op=diff
==============================================================================
--- trunk/libmoosex-singleton-perl/lib/MooseX/Singleton.pm (original)
+++ trunk/libmoosex-singleton-perl/lib/MooseX/Singleton.pm Sun Sep 20 00:13:30 2009
@@ -2,22 +2,41 @@
 
 use Moose 0.82 ();
 use Moose::Exporter;
-use MooseX::Singleton::Object;
-use MooseX::Singleton::Meta::Class;
+use MooseX::Singleton::Role::Object;
+use MooseX::Singleton::Role::Meta::Class;
+use MooseX::Singleton::Role::Meta::Instance;
 
-our $VERSION = '0.19';
+our $VERSION = '0.21';
 $VERSION = eval $VERSION;
 
 Moose::Exporter->setup_import_methods( also => 'Moose' );
 
 sub init_meta {
     shift;
-    Moose->init_meta(
-        @_,
-        base_class => 'MooseX::Singleton::Object',
-        metaclass  => 'MooseX::Singleton::Meta::Class',
+    my %p = @_;
+
+    Moose->init_meta(%p);
+
+    my $caller = $p{for_class};
+
+    Moose::Util::MetaRole::apply_metaclass_roles(
+        for_class       => $caller,
+        metaclass_roles => ['MooseX::Singleton::Role::Meta::Class'],
+        instance_metaclass_roles =>
+            ['MooseX::Singleton::Role::Meta::Instance'],
+        constructor_class_roles =>
+            ['MooseX::Singleton::Role::Meta::Method::Constructor'],
     );
+
+    Moose::Util::MetaRole::apply_base_class_roles(
+        for_class => $caller,
+        roles =>
+            ['MooseX::Singleton::Role::Object'],
+    );
+
+    return $caller->meta();
 }
+
 
 1;
 
@@ -28,10 +47,6 @@
 =head1 NAME
 
 MooseX::Singleton - turn your Moose class into a singleton
-
-=head1 VERSION
-
-Version 0.18, released 24 May 08
 
 =head1 SYNOPSIS
 




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