The first release candidate of Smarty3 has been released!
So why not upgrade from the Smarty2 to Smarty3 since XOOPS Cube Legacy 2.2 is still Alpha?
Quoting: "It is clear that Smarty 3 is much faster than ver. 2. In spite of the fact that in Smarty 3 each variable is an object and there are some magic methods used (which are inherently slow) in the internals, the overall peformance is better. The interesting this is that Smarty 2 didn't become really faster with eAccelerator and sometimes it was even slower! Smarty 3 clearly benefits from an opcode cache. Maybe a different opcode cache would yield different results. Memory usage was marginally higher in Smarty 3 but I suppose it is well compensated by the speed increase. However, I don't know how much these numbers are accurate." < http://goo.gl/Jmm0 >
Smarty 3 change log:
http://goo.gl/MHNV
Smarty v3 download:
http://goo.gl/JZxu
We need testing. Some testers will try it. Can you try it?
Sure!!! :-)
Smarty3 has some incompatibility with Smarty2, such as requirement to quote parameters.
So I hesitate to upgrade to Smarty3 in XCL2.2.
Hi!
Smarty 3.0.5 final was released with many bug fixes since RC4 (incompatibility problems with Smarty2 include):
===== Smarty 3.0.5 =====
19/11/2010
- bugfix on block plugins with modifiers
18/11/2010
- change on handling of unassigned template variable -- default will drop E_NOTICE
- bugfix on Smarty2 wrapper load_filter() did not work
17/11/2010
- bugfix on {call} with variable function name
- bugfix on {block} if name did contain '-'
- bugfix in function.fetch.php , referece to undefined $smarty
16/11/2010
- bugfix whitespace in front of "<?php" in smarty_internal_compile_private_block_plugin.php
- bugfix {$smarty.now} did compile incorrectly
- bugfix on reset(),end(),next(),prev(),current() within templates
- bugfix on default parameter for {function}
15/11/2010
- bugfix when using {$smarty.session} as object
- bugfix scoping problem on $smarty object passed to filters
- bugfix captured content could not be accessed globally
- bugfix Smarty2 wrapper functions could not be call from within plugins
===== Smarty 3.0.4 =====
14/11/2010
- bugfix isset() did not allow multiple parameter
- improvment of some error messages
- bugfix html_image did use removed property $request_use_auto_globals
- small performace patch in Smarty class
13/11/2010
- bugfix overloading problem when $smarty->fetch()/display() have been used in plugins
(introduced with 3.0.2)
- code cleanup
===== Smarty 3.0.3 =====
13/11/2010
- bugfix on {debug}
- reverted location of loadPlugin() to Smarty class
- fixed comments in plugins
- fixed internal_config (removed unwanted code line)
- improvement remove last linebreak from {function} definition
===== Smarty 3.0.2 =====
12/11/2010
- reactivated $error_reporting property handling
- fixed typo in compile_continue
- fixed security in {fetch} plugin
- changed back plugin parameters to two. second is template object
with transparent access to Smarty object
- fixed {config_load} scoping form compile time to run time
===== Smarty 3.0.0 =====
11/11/2010
- major update including some API changes
10/11/2010
- observe compile_id also for config files
09/11/2010
-bugfix on complex expressions as start value for {for} tag
request_use_auto_globals
04/11/2010
- bugfix do not allow access of dynamic and private object members of assigned objects when
security is enabled.
01/11/2010
- bugfix related to E_NOTICE change. {if empty($foo)} did fail when $foo contained a string
28/10/2010
- bugfix on compiling modifiers within $smarty special vars like {$smarty.post.{$foo|lower}}
27/10/2010
- bugfix default parameter values did not work for template functions included with {include}
25/10/2010
- bugfix for E_NOTICE change, array elements did not work as modifier parameter
20/10/2010
- bugfix for the E_NOTICE change
19/10/2010
- change Smarty does no longer mask out E_NOTICE by default during template processing
13/10/2010
- bugfix removed ambiguity between ternary and stream variable in template syntax
- bugfix use caching properties of template instead of smarty object when compiling child {block}
- bugfix {*block}...{/block*} did throw an exception in template inheritance
- bugfix on template inheritance using nested eval or string resource in {extends} tags
- bugfix on output buffer handling in isCached() method...
Hi again! :-)
I'm testing the XCL 2.1.8 with Smarty.class.php build 3788 (v3.0.4 from 2010-11-13) download from Marijuana website:
http://marijuana.xsrv.jp/index.php?moddir=downloads&action=single&lid=20&cid=1
Everything is running apparent without problems on Apache/2.2.17 (Win32), MySQL/5.5.7RC and PHP/5.3.3
http://www.smarty.net/
Hi! Just to say that I'm still testing the Marijuana's release now updated to Smarty 3.0.5:
http://marijuana.xsrv.jp/index.php?moddir=downloads&action=single&lid=20&cid=1
Dear Kilica, how can I find the problem about the "requirement to quote parameters"? (I'm not a PHP developer so I really don't know how). Is about a bug in Smarty3 or about a characteristic of Smarty3? This problem still occurs with the last version?
Everything is still running *APPARENT* without problems on Apache/2.2.17 (Win32), MySQL/5.5.7RC and PHP/5.3.3
Smarty 3.0.6 will be released soon while the old Smarty 2.x seems to have been abandoned, without adjustments for new versions of PHP 5.3.3. So, occurring future problems of incompatibility with PHP - even vulnerability problems - will be much harder to upgrade the system on right time.
http://code.google.com/p/smarty-php/source/browse/trunk/distribution/change_log.txt
[]'s!
Hi mikhail
Marijuana himself said about the incompatibility.
「Smartyの変更が大きく、モジュールによってはテンプレート他を変更しないと動作しないものもあります。」
For example, install search block and see the search result on Marijuana's released XCL.
It occurs fatal error.
You must fix a template by quoting filename like below in modules/legacy/templates/legacy_search_results.html.
[code]
<{include file="db:legacy_search_form.html"}>
[/code]