[Jifty-commit] r7357 - in Template-Declare/trunk: . lib/Template t

Jifty commits jifty-commit at lists.jifty.org
Wed Aug 12 20:35:40 EDT 2009


Author: jesse
Date: Wed Aug 12 20:35:39 2009
New Revision: 7357

Added:
   Template-Declare/trunk/t/inline-tagset.t
Modified:
   Template-Declare/trunk/Changes
   Template-Declare/trunk/MANIFEST
   Template-Declare/trunk/lib/Template/Declare.pm
   Template-Declare/trunk/lib/Template/Declare/Tags.pm

Log:
* Support for inline tagset definitions. Thanks to Olivier 'dolmen' Mengué
        [rt.cpan.org #48642]



Modified: Template-Declare/trunk/Changes
==============================================================================
--- Template-Declare/trunk/Changes	(original)
+++ Template-Declare/trunk/Changes	Wed Aug 12 20:35:39 2009
@@ -1,3 +1,8 @@
+0.40_01 2009-08-12
+
+* Support for inline tagset definitions. Thanks to Olivier 'dolmen' Mengué
+	[rt.cpan.org #48642]
+
 0.40 - 2009-07-08
 * Fix subname issue with the debugger and specifically Devel::NYTProf
 * String::BufferStack usage improvements

Modified: Template-Declare/trunk/MANIFEST
==============================================================================
--- Template-Declare/trunk/MANIFEST	(original)
+++ Template-Declare/trunk/MANIFEST	Wed Aug 12 20:35:39 2009
@@ -39,6 +39,7 @@
 t/importing.t
 t/indent.t
 t/indexhtml.t
+t/inline-tagset.t
 t/instrumentation.t
 t/MyTagSet.pm
 t/namespace.t

Modified: Template-Declare/trunk/lib/Template/Declare.pm
==============================================================================
--- Template-Declare/trunk/lib/Template/Declare.pm	(original)
+++ Template-Declare/trunk/lib/Template/Declare.pm	Wed Aug 12 20:35:39 2009
@@ -8,7 +8,7 @@
 use Class::ISA;
 use String::BufferStack;
 
-our $VERSION = "0.40";
+our $VERSION = "0.40_01";
 
 use base 'Class::Data::Inheritable';
 __PACKAGE__->mk_classdata('roots');

Modified: Template-Declare/trunk/lib/Template/Declare/Tags.pm
==============================================================================
--- Template-Declare/trunk/lib/Template/Declare/Tags.pm	(original)
+++ Template-Declare/trunk/lib/Template/Declare/Tags.pm	Wed Aug 12 20:35:39 2009
@@ -57,10 +57,12 @@
             "Template::Declare::TagSet::$lang";
 
         ### Loading tag set: $module
-        eval "use $module";
-        if ($@) {
-            warn $@;
-            croak "Failed to load tagset module $module";
+        if (! $module->can('get_tag_list') ) {
+            eval "use $module";
+            if ($@) {
+                warn $@;
+                croak "Failed to load tagset module $module";
+            }
         }
         ### TagSet options: $opts
         my $tagset = $module->new($opts);

Added: Template-Declare/trunk/t/inline-tagset.t
==============================================================================
--- (empty file)
+++ Template-Declare/trunk/t/inline-tagset.t	Wed Aug 12 20:35:39 2009
@@ -0,0 +1,19 @@
+# Test for RT48642 by Olivier Mengué
+
+use Test::More tests => 1;
+
+{
+    package Template::Declare::TagSet::FooBarBaz;
+    use base 'Template::Declare::TagSet';
+    sub get_tag_list {
+        [qw/foo bar baz/]
+    }
+}
+
+eval "use Template::Declare::Tags 'FooBarBaz'";
+my $res = $@;
+SKIP: {
+    skip "T::D::TS::FooBarBaz.pm exists, can't test!" if exists $INC{'Template/Declare/TagSet/FooBarBaz.pm'};
+    ok(!$res, "use inline TagSet");
+    diag $res if $res;
+}


More information about the Jifty-commit mailing list