Permalink
Browse files

* fixed up bug in XS stash introduced with SCALAR_OPS lookup added to…

… fallback

  after failed object methods

* prep for release 2.06c


git-svn-id: svn://svn.tt2.org/tt/Template2/trunk@280 d5a88997-0a34-4036-9ed2-92fb5d660d91
  • Loading branch information...
abw committed Dec 13, 2001
1 parent dc7f069 commit e9d30219e9ffd4e98402ed234fcead4dcabf248a
Showing with 1,209 additions and 808 deletions.
  1. +19 −2 Changes
  2. +2 −2 HACKING
  3. +9 −9 INSTALL
  4. +8 −5 Makefile.PL
  5. +5 −5 README
  6. +1 −1 TODO
  7. +1 −1 bin/release
  8. +3 −3 bin/tpage
  9. +3 −3 bin/ttree
  10. +146 −131 docs/lib/docset/config
  11. +2 −2 docs/src/FAQ/FAQ.html
  12. +2 −2 docs/src/Library/HTML.html
  13. +2 −2 docs/src/Library/PostScript.html
  14. +2 −2 docs/src/Library/Splash.html
  15. +1 −1 docs/src/Manual/Config.html
  16. +2 −1 docs/src/Manual/Credits.html
  17. +1 −1 docs/src/Manual/Directives.html
  18. +1 −1 docs/src/Manual/Filters.html
  19. +1 −1 docs/src/Manual/Internals.html
  20. +1 −1 docs/src/Manual/Intro.html
  21. +1 −1 docs/src/Manual/Plugins.html
  22. +1 −1 docs/src/Manual/Refs.html
  23. +1 −1 docs/src/Manual/Syntax.html
  24. +1 −1 docs/src/Manual/Variables.html
  25. +1 −1 docs/src/Manual/Views.html
  26. +1 −1 docs/src/Modules/Template.html
  27. +2 −2 docs/src/Modules/Template/Base.html
  28. +2 −2 docs/src/Modules/Template/Config.html
  29. +3 −3 docs/src/Modules/Template/Constants.html
  30. +2 −2 docs/src/Modules/Template/Context.html
  31. +2 −2 docs/src/Modules/Template/Document.html
  32. +2 −2 docs/src/Modules/Template/Exception.html
  33. +2 −2 docs/src/Modules/Template/Filters.html
  34. +2 −2 docs/src/Modules/Template/Iterator.html
  35. +2 −2 docs/src/Modules/Template/Parser.html
  36. +2 −2 docs/src/Modules/Template/Plugin.html
  37. +2 −2 docs/src/Modules/Template/Plugin/Autoformat.html
  38. +3 −3 docs/src/Modules/Template/Plugin/CGI.html
  39. +252 −138 docs/src/Modules/Template/Plugin/DBI.html
  40. +2 −2 docs/src/Modules/Template/Plugin/Datafile.html
  41. +3 −3 docs/src/Modules/Template/Plugin/Date.html
  42. +2 −2 docs/src/Modules/Template/Plugin/Directory.html
  43. +2 −2 docs/src/Modules/Template/Plugin/Dumper.html
  44. +2 −2 docs/src/Modules/Template/Plugin/File.html
  45. +2 −2 docs/src/Modules/Template/Plugin/Format.html
  46. +2 −2 docs/src/Modules/Template/Plugin/GD/Constants.html
  47. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/area.html
  48. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/bars.html
  49. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/bars3d.html
  50. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/lines.html
  51. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/lines3d.html
  52. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/linespoints.html
  53. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/mixed.html
  54. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/pie.html
  55. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/pie3d.html
  56. +2 −2 docs/src/Modules/Template/Plugin/GD/Graph/points.html
  57. +2 −2 docs/src/Modules/Template/Plugin/GD/Image.html
  58. +2 −2 docs/src/Modules/Template/Plugin/GD/Polygon.html
  59. +2 −2 docs/src/Modules/Template/Plugin/GD/Text.html
  60. +2 −2 docs/src/Modules/Template/Plugin/GD/Text/Align.html
  61. +2 −2 docs/src/Modules/Template/Plugin/GD/Text/Wrap.html
  62. +2 −2 docs/src/Modules/Template/Plugin/HTML.html
  63. +2 −2 docs/src/Modules/Template/Plugin/Iterator.html
  64. +2 −2 docs/src/Modules/Template/Plugin/Pod.html
  65. +2 −2 docs/src/Modules/Template/Plugin/Table.html
  66. +2 −2 docs/src/Modules/Template/Plugin/URL.html
  67. +2 −2 docs/src/Modules/Template/Plugin/View.html
  68. +2 −2 docs/src/Modules/Template/Plugin/Wrap.html
  69. +1 −1 docs/src/Modules/Template/Plugin/XML/DOM.html
  70. +2 −2 docs/src/Modules/Template/Plugin/XML/RSS.html
  71. +2 −2 docs/src/Modules/Template/Plugin/XML/Simple.html
  72. +2 −2 docs/src/Modules/Template/Plugin/XML/XPath.html
  73. +2 −2 docs/src/Modules/Template/Plugins.html
  74. +2 −2 docs/src/Modules/Template/Provider.html
  75. +2 −2 docs/src/Modules/Template/Service.html
  76. +2 −2 docs/src/Modules/Template/Stash.html
  77. +2 −2 docs/src/Modules/Template/Stash/Context.html
  78. +1 −1 docs/src/Modules/Template/Stash/XS.html
  79. +2 −2 docs/src/Modules/Template/Test.html
  80. +1 −1 docs/src/Modules/index.html
  81. +23 −2 docs/src/Release/Changes.html
  82. +2 −2 docs/src/Release/HACKING.html
  83. +9 −9 docs/src/Release/INSTALL.html
  84. +5 −5 docs/src/Release/README.html
  85. +2 −2 docs/src/Release/TODO.html
  86. +2 −2 docs/src/Tools/tpage.html
  87. +2 −2 docs/src/Tools/ttree.html
  88. +1 −1 docs/src/Tutorial/Datafile.html
  89. +2 −2 docs/src/Tutorial/Web.html
  90. +1 −1 docs/src/index.html
  91. +6 −0 docsrc/src/Modules/Template/Plugin/DBI.tt2
  92. +8 −4 docsrc/src/Release/Changes.tt2
  93. +1 −1 docsrc/src/Release/TODO.tt2
  94. +2 −2 lib/Template.pm
  95. +3 −3 lib/Template/Base.pm
  96. +3 −3 lib/Template/Config.pm
  97. +3 −3 lib/Template/Constants.pm
  98. +3 −3 lib/Template/Context.pm
  99. +3 −3 lib/Template/Document.pm
  100. +3 −3 lib/Template/Exception.pm
  101. +3 −3 lib/Template/FAQ.pod
  102. +3 −3 lib/Template/Filters.pm
  103. +3 −3 lib/Template/Iterator.pm
  104. +4 −4 lib/Template/Library/HTML.pod
  105. +3 −3 lib/Template/Library/PostScript.pod
  106. +4 −4 lib/Template/Library/Splash.pod
  107. +1 −1 lib/Template/Manual.pod
  108. +1 −1 lib/Template/Manual/Config.pod
  109. +2 −1 lib/Template/Manual/Credits.pod
  110. +1 −1 lib/Template/Manual/Directives.pod
  111. +1 −1 lib/Template/Manual/Filters.pod
  112. +1 −1 lib/Template/Manual/Internals.pod
  113. +1 −1 lib/Template/Manual/Intro.pod
  114. +1 −1 lib/Template/Manual/Plugins.pod
  115. +1 −1 lib/Template/Manual/Refs.pod
  116. +1 −1 lib/Template/Manual/Syntax.pod
  117. +1 −1 lib/Template/Manual/Variables.pod
  118. +1 −1 lib/Template/Manual/Views.pod
  119. +2 −2 lib/Template/Modules.pod
  120. +2 −2 lib/Template/Parser.pm
  121. +3 −3 lib/Template/Plugin.pm
  122. +2 −2 lib/Template/Plugin/Autoformat.pm
  123. +3 −3 lib/Template/Plugin/CGI.pm
  124. +234 −99 lib/Template/Plugin/DBI.pm
  125. +3 −3 lib/Template/Plugin/Datafile.pm
  126. +3 −3 lib/Template/Plugin/Date.pm
  127. +2 −2 lib/Template/Plugin/Directory.pm
  128. +2 −2 lib/Template/Plugin/Dumper.pm
  129. +2 −2 lib/Template/Plugin/File.pm
  130. +3 −3 lib/Template/Plugin/Filter.pm
  131. +3 −3 lib/Template/Plugin/Format.pm
  132. +3 −3 lib/Template/Plugin/GD/Constants.pm
  133. +3 −3 lib/Template/Plugin/GD/Graph/area.pm
  134. +3 −3 lib/Template/Plugin/GD/Graph/bars.pm
  135. +3 −3 lib/Template/Plugin/GD/Graph/bars3d.pm
  136. +3 −3 lib/Template/Plugin/GD/Graph/lines.pm
  137. +3 −3 lib/Template/Plugin/GD/Graph/lines3d.pm
  138. +3 −3 lib/Template/Plugin/GD/Graph/linespoints.pm
  139. +3 −3 lib/Template/Plugin/GD/Graph/mixed.pm
  140. +3 −3 lib/Template/Plugin/GD/Graph/pie.pm
  141. +3 −3 lib/Template/Plugin/GD/Graph/pie3d.pm
  142. +3 −3 lib/Template/Plugin/GD/Graph/points.pm
  143. +3 −3 lib/Template/Plugin/GD/Image.pm
  144. +3 −3 lib/Template/Plugin/GD/Polygon.pm
  145. +3 −3 lib/Template/Plugin/GD/Text.pm
  146. +3 −3 lib/Template/Plugin/GD/Text/Align.pm
  147. +3 −3 lib/Template/Plugin/GD/Text/Wrap.pm
  148. +3 −3 lib/Template/Plugin/HTML.pm
  149. +3 −3 lib/Template/Plugin/Iterator.pm
  150. +3 −3 lib/Template/Plugin/Pod.pm
  151. +3 −3 lib/Template/Plugin/String.pm
  152. +3 −3 lib/Template/Plugin/Table.pm
  153. +3 −3 lib/Template/Plugin/URL.pm
  154. +3 −3 lib/Template/Plugin/View.pm
  155. +2 −2 lib/Template/Plugin/Wrap.pm
  156. +1 −1 lib/Template/Plugin/XML/DOM.pm
  157. +2 −2 lib/Template/Plugin/XML/RSS.pm
  158. +2 −2 lib/Template/Plugin/XML/Simple.pm
  159. +3 −3 lib/Template/Plugin/XML/Style.pm
  160. +2 −2 lib/Template/Plugin/XML/XPath.pm
  161. +3 −3 lib/Template/Plugins.pm
  162. +3 −3 lib/Template/Provider.pm
  163. +3 −3 lib/Template/Service.pm
  164. +2 −2 lib/Template/Stash.pm
  165. +3 −3 lib/Template/Stash/Context.pm
  166. +1 −1 lib/Template/Stash/XS.pm
  167. +3 −3 lib/Template/Test.pm
  168. +3 −3 lib/Template/Tools/tpage.pod
  169. +3 −3 lib/Template/Tools/ttree.pod
  170. +1 −1 lib/Template/Tutorial.pod
  171. +1 −1 lib/Template/Tutorial/Datafile.pod
  172. +2 −2 lib/Template/Tutorial/Web.pod
  173. +1 −1 t/datafile.t
  174. +126 −14 t/dbi.t
  175. +9 −39 t/stash.t
  176. +1 −0 t/string.t
  177. +6 −5 xs/Stash.xs
View
21 Changes
@@ -3,7 +3,7 @@
# Changes
#
# DESCRIPTION
-# Revision history for the Template Toolkit version 2.06b, detailing
+# Revision history for the Template Toolkit version 2.06c, detailing
# significant changes between versions, most recent first. Some
# way down the file you'll find a section detailing major changes from
# version 1.* to 2.* and a list of "Gotchas!" that you might have to
@@ -17,7 +17,21 @@
#========================================================================
#------------------------------------------------------------------------
-# Version 2.06b - 29th November 2001 ## DEVELOPER RELEASE ##
+# Version 2.06c - ## DEVELOPER RELEASE ##
+#------------------------------------------------------------------------
+
+* Changed both Perl and XS Stash modules to try to apply a SCALAR_OPS
+ virtual method to a blessed object as a last-ditch chance if all else
+ fails. Thanks to Tony Bowden for reporting the problem. See
+ http://tt2.org/pipermail/templates/2001-December/002263.html
+
+* Added tie() method to DBI plugin based on some plugin code sent to me
+ courtesy of Dave Hodgkinson. Also made various minor cleanups to DBI
+ code and updated documentation and tests.
+
+
+#------------------------------------------------------------------------
+# Version 2.06b - 2nd December 2001 ## DEVELOPER RELEASE ##
#------------------------------------------------------------------------
* Added the Template::Plugin::Filter module to make plugin filters
@@ -42,6 +56,9 @@
object has an overloaded stringification operator which gets called
(but shouldn't) and could return an untrue (but correct) value.
+* Fixed t/dumper.t to only have one entry in each hash to avoid hash
+ ordering problems. Thanks to Randal for reporting the problem.
+
* Added the assert() subroutine to Template::Test.
* Added some more content to the FAQ.
View
@@ -1,9 +1,9 @@
Template Toolkit
- Version 2.06b
+ Version 2.06c
- 29 November 2001
+ 13 December 2001
Copyright (C) 1996-2001 Andy Wardley. All Rights Reserved
Copyright (C) 1998-2001 Canon Research Centre Europe Ltd.
View
18 INSTALL
@@ -1,9 +1,9 @@
Template Toolkit
- Version 2.06b
+ Version 2.06c
- 29 November 2001
+ 13 December 2001
Copyright (C) 1996-2001 Andy Wardley. All Rights Reserved
Copyright (C) 1998-2001 Canon Research Centre Europe Ltd.
@@ -42,8 +42,8 @@ need to install them. They're all available from CPAN if you do.
To install the Template Toolkit:
- tar zxf Template-Toolkit-2.06b.tar.gz
- cd Template-Toolkit-2.06b
+ tar zxf Template-Toolkit-2.06c.tar.gz
+ cd Template-Toolkit-2.06c
perl Makefile.PL
make
make test
@@ -129,19 +129,19 @@ The Template Toolkit is distributed as a gzipped tar archive file:
Template-Toolkit-<version>.tar.gz
-where <version> represents the current version number, e.g. 2.06b.
+where <version> represents the current version number, e.g. 2.06c.
To install the Template Toolkit, unpack the distribution archive to
create an installation directory. Something like this:
- tar zxf Template-Toolkit-2.06b.tar.gz
+ tar zxf Template-Toolkit-2.06c.tar.gz
or
- gunzip Template-Toolkit-2.06b.tar.gz
- tar xf Template-Toolkit-2.06b.tar
+ gunzip Template-Toolkit-2.06c.tar.gz
+ tar xf Template-Toolkit-2.06c.tar
You can then 'cd' into the directory created,
- cd Template-Toolkit-2.06b
+ cd Template-Toolkit-2.06c
and perform the usual Perl installation procedure:
View
@@ -401,6 +401,7 @@ EOF
[ 'GD::Graph3d' => undef ],
[ 'Date::Calc' => undef ],
[ 'Pod::POM' => undef ],
+ [ 'Tie::DBI' => undef ],
[ 'XML::DOM' => \&check_dom ],
[ 'XML::RSS' => \&check_rss ],
[ 'XML::XPath' => \&check_xpath ],
@@ -441,8 +442,9 @@ XS Stash: TT2 now twice as fast!
We have a new high speed version of the Template::Stash. It's
a Perl XS module which can evaluate templates about twice as fast as
-the pure-Perl version. It is still officially "experimental" but
-is thought to be generally stable and reliable.
+the pure-Perl version. It is stable and reliable but be warned that
+it doesn't yet support access to tied hashes (e.g. Tie::DBI) so for
+certain applications you may need to explicitly use the regular stash.
You can choose to build the XS stash module and enable it by default
so that it is used automatically for all templates. If you build it
@@ -454,9 +456,10 @@ this:
my \$tt = new Template ({ STASH => new Template::Stash::XS, ... });
-You can also enable the XS stash by setting the \$STASH package
-variable in the Template/Config.pm module. See 'perldoc
-Template::Config' for further details.
+You can also enable the XS stash (or the regular stash if you opt to
+use the XS stash by default) by setting the \$STASH package variable
+in the Template/Config.pm module. See 'perldoc Template::Config' for
+further details.
EOF
View
10 README
@@ -1,9 +1,9 @@
Template Toolkit
- Version 2.06b
+ Version 2.06c
- 29 November 2001
+ 13 December 2001
Copyright (C) 1996-2001 Andy Wardley. All Rights Reserved
Copyright (C) 1998-2001 Canon Research Centre Europe Ltd.
@@ -43,8 +43,8 @@ need to install them. They're all available from CPAN if you do.
To install the Template Toolkit:
- tar zxf Template-Toolkit-2.06b.tar.gz
- cd Template-Toolkit-2.06b
+ tar zxf Template-Toolkit-2.06c.tar.gz
+ cd Template-Toolkit-2.06c
perl Makefile.PL
make
make test
@@ -336,7 +336,7 @@ VERSION COMPATABILITY
---------------------
In terms of the template language and features available, versions
-2.01 through to 2.06b should be fully backwardly compatible with
+2.01 through to 2.06c should be fully backwardly compatible with
version 2.00.
Version 2.00 is backwardly compatible with version 1 in all but a few
View
2 TODO
@@ -3,7 +3,7 @@
# TODO
#
# DESCRIPTION
-# TODO list for the Template Toolkit version 2.06b, containing
+# TODO list for the Template Toolkit version 2.06c, containing
# known bugs, limitations, planned enhancements, long term visions
# and a few whacky ideas.
#
View
@@ -5,5 +5,5 @@
&& make test \
&& bin/fixconfig -v -y \
&& make dist \
-&& echo "Share and Enjoy!"
+&& echo "Go forth and make content!"
View
@@ -112,8 +112,8 @@ L<http://www.andywardley.com/|http://www.andywardley.com/>
=head1 VERSION
-2.35, distributed as part of the
-Template Toolkit version 2.06b, released on 29 November 2001.
+2.36, distributed as part of the
+Template Toolkit version 2.06c, released on 13 December 2001.
=head1 COPYRIGHT
@@ -125,4 +125,4 @@ modify it under the same terms as Perl itself.
=head1 SEE ALSO
-L<ttree|Template::Tools::ttree>
+L<ttree|Template::Tools::ttree>
View
@@ -627,8 +627,8 @@ L<http://www.andywardley.com/|http://www.andywardley.com/>
=head1 VERSION
-2.35, distributed as part of the
-Template Toolkit version 2.06b, released on 29 November 2001.
+2.36, distributed as part of the
+Template Toolkit version 2.06c, released on 13 December 2001.
=head1 COPYRIGHT
@@ -640,4 +640,4 @@ modify it under the same terms as Perl itself.
=head1 SEE ALSO
-L<tpage|Template::Tools::tpage>
+L<tpage|Template::Tools::tpage>
Oops, something went wrong.

0 comments on commit e9d3021

Please sign in to comment.