Updated to Smarty 2.6.26 (June 18th, 2009), we should update to Smarty 3.x (current...
[mirrors/Kyberia-bloodline.git] / wwwroot / smarty / NEWS
CommitLineData
9b7c11be
H
1Version 2.6.26 (June 18th, 2009)
2-------------------------------
3- revert super global access changes, and instead rely on
4 USE_SUPER_GLOBALS for security
5
6Version 2.6.25 (May 19th, 2009)
7-------------------------------
8- fix E_NOTICE when sessions are disabled (mohrt)
9
10Version 2.6.24 (May 16th, 2009)
11-------------------------------
12- fix problem introduced with super global changes (mohrt)
13
14Version 2.6.23 (May 13th, 2009)
15-------------------------------
16- strip backticks from {math} equations (mohrt)
17- make PHP super globals read-only from template (mohrt)
18- throw error when template exists but not readable (mohrt)
19
20Version 2.6.22 (Dec 17th, 2008)
21-------------------------------
22
23- back out method chaining, bug in some versions of PCRE causes errors (mohrt)
24
25Version 2.6.21 (Dec 2nd, 2008)
26------------------------------
27
28- fix function injection security hole closed (U.Tews)
29- fix pass expiration time at cache_handler_fuc call in core.write_cache_file.php (U.Tews)
30- Update of compiler.class.php to allow method chaining for PHP4 and PHP5 (U.Tews)
31
32Version 2.6.20 (Feb 15th, 2008)
33-------------------------------
34
35- fix cache tag bug when multiple cache tags on a page (mankyd,
36 mohrt)
37- fix /e tag checking when using arrays with regex_replace
38 (mohrt)
39- fix that function results can be used with condition like "is even" in
40 {if} tags (U.Tews)
41- fix handling of non-empty <pre>-tags and empty <textarea>- and
42 <script>-tags (Spuerhund, messju)
43
44Version 2.6.19 (Feb 11th, 2008)
45-------------------------------
46
47- fix regex_replace allowing \0 in the search string (c960657,
48 monte)
49- add append feature to {capture} (jablko, monte)
50- fix when (un)registering filters with the same method name but different class
51 name (danilo)
52- fix calling registered objects' methods with an empty argument list
53 (marcello, messju)
54
55Version 2.6.18 (Mar 7th, 2007)
56------------------------------
57
58- fix html_select_date separator when parts are missing (hayk,
59 monte)
60- fix broken detection of non-cached blocks introduced in 2.6.17
61 (messju)
62
63Version 2.6.17 (Mar 5th, 2007)
64------------------------------
65
66- fix php handling (monte, boots, danilo)
67- fix handling of plugin tags directly followed by an else tag (Fahr, danilo)
68- fix handling of $etc in the truncate modifier when $etc is longer
69 than $length (Sylvinus, messju)
70- fix handling of %I with mysql timestamps in the date_format modifier
71 (danilo, boots)
72- update smarty_core_write_file() and smarty_modifier_date_format() to better
73 recognize Windows (boots, danilo)
74- emulate %h, %n, %r, %R, %t in the date_format modifier on Windows
75 (danilo, boots)
76
77Version 2.6.16 (Dec 1st, 2006)
78------------------------------
79
80- fixed replacement bug in trimwhitespace output filter that was introduced
81 in the last release (Spuerhund, boots)
82
83Version 2.6.15 (Nov 30th, 2006)
84-------------------------------
85
86- change file writing semantics in smarty_core_write_file() to unlink() only
87 when rename() fails or a Windows system is detected (c960657, boots)
88- update debug.tpl to xhtml 1.1 compliance, fix javascript escaping in debug
89 output and apply a Smarty based color scheme (cybot, boots)
90- enhance reporting precision of debug_print_var modifier (cybot, boots)
91- make html_select_date work consistently with 0000-00-00 00:00:00 and
92 0000-00-00 inputs (cybot, boots)
93- fix wrong handling of insert's name attribute. (messju)
94- fix false replacement of "$t" inside double quotes (checat, messju)
95- added support for column headings and caption element to html_table and
96 updated the output to use thead/tbody elements (boots)
97- fixed ordering of replacements in trimwhitespace output filter (Getty, boots)
98- update mailto function plugin to work around a firefox/thunderbird
99 escaping bug (elijahlofgren, boots)
100- emulate %l in the date_format modifier on windows (boots)
101- fix handling of apostrophes in capitalize modifier (Alec Smecher, boots)
102
103Version 2.6.14 (May 28th, 2006)
104-------------------------------
105
106- fix compiler bug allowing php tags in secure templates
107 (boots,monte)
108- un-hide hidden xml open tags (boots)
109- fix handling of block-methods of registered objects (El Hombre Gris,
110 messju)
111
112Version 2.6.13 (March 9th, 2006)
113--------------------------------
114
115 - update regex_replace, removing possible use of "e" modifier
116
117Version 2.6.12 (Jan 18th, 2006)
118-------------------------------
119
120 - fix improper use of references in the compiler handling cached
121 attributes and in compiled code handling block plugins (messju)
122 - make Smarty::_read_file() work on latest php (messju)
123 - fixed improper tokenization of certain inline math expressions (boots)
124
125Version 2.6.11 (Dec 14, 2005)
126-----------------------------
127
128 - fixed code generation of non-cacheable blocks to play well with php's
129 "Alternative syntax for control structures" (kihara, messju)
130 - fix handling of multiple identical inserts in one display()-call (messju)
131 - replace {} string access with equivalent substr() to avoid E_STRICT
132 warnings in PHP 5.1 (boots)
133 - return valid reference in get_config_vars() when given var is
134 non-existant (Thomas Schulz, boots)
135 - plugin html_image: fix incorrect secure_dir error when
136 file doesn't exist (monte)
137 - plugin html_image: add path_prefix param (monte)
138 - add char_set parameter to escape modifier (Loading, monte)
139 - fix notice in debug security check (Drakla, monte)
140 - return valid reference in get_template_vars() when given var is
141 non-existant (monte)
142 - add escape type "urlpathinfo" to escape modifier (monte)
143
51ff3226 144Version 2.6.10 (Aug 5, 2005)
145----------------------------
146
147 - allow secure_dir to be a filename, not just
148 a directory name (monte)
149 - set debug.tpl as a secure_dir, not the entire
150 SMARTY_DIR (monte)
151 - fix proper escaping for literal strings in
152 Smarty_Compiler::_parse_var_props() (boots, messju)
153 - remove ambiguity for numeric values passed to smarty_make_timestamp()
154 (and thus the date_format modifier). numeric values are treated as
155 timestamps now. (andreas, messju)
156 - add passthru attribute feature to html_select_date (Sedgar,
157 monte)
158 - add "middle" parameter to truncate (monte)
159 - make form input label ids optional (monte)
160 - add error message for empty if/elseif statements (eykanal,
161 monte)
162 - cast selected value to string for comparison in html_radios
163 (Exeption, monte)
164 - updated html_select_date's year_as_text-feature to be xhtml compliant
165 (Mark West, messju)
166 - fix handling of selected month html_select_date (Yuri Weseman, messju)
167
168Version 2.6.9 (Mar 31, 2005)
169----------------------------
170
171 - disallow variable function calls in {if} statements (messju, monte)
172 - disallow variable function calls in {math} equations (messju, monte)
173
174Version 2.6.8 (Mar 21, 2005)
175----------------------------
176
177 - remove e-modifier from regex_replace modifier (messju)
178 - remove cast of object to array in foreach's from-attribute (messju)
179 - add "null" as a valid token for {if} when security is enabled (messju)
180 - add javascript_charcode encoding option to mailto function
181 (monte)
182 - add ids to html_radios labels (monte, menulis)
183 - fix handling of strip-tags with non-default delimiters (Mark West, messju)
184
185Version 2.6.7 (Feb 3, 2005)
186---------------------------
187
188 - fix handling of hashed opening php-tags inside strip-blocks (messju)
189 - removed border tag from html_image function (monte)
190 - change escape:url use rawurlencode() instead of urlencode() (messju)
191 - make $smarty.const.FOO compile to "FOO", and not to "constant('foo')".
192 this is less code and a little faster execution. note that undefined
193 constants are now displayed as the constant's name. (messju)
194 - make block functions and registered objects' block methods use a
195 local variable for block_content instead of a property of $smarty (messju)
196 - fix escaping in the generated code that calls smarty_core_load_plugins
197 (jes5199, messju)
198 - fix invalid HTML issue with popup (Stefanos Harhalakis,
199 Monte)
200 - fixed {popup} to properly handle inarray and function parameters and added
201 support for mouseoff and followmouse options (boots)
202
203Version 2.6.6 (Oct 13, 2004)
204----------------------------
205
206 - fixed nocache-handling with nested includes (Lars Jankowfsky, messju)
207 - moved /libs/core to /libs/internals (boots)
208 - fixed more parsing problems (messju)
209
210Version 2.6.5 (Sept 13, 2004)
211-----------------------------
212
213 - fixed some parsing problems with object calls introduced
214 in 2.6.4 (Monte)
215 - add $smarty->security_settings['ALLOW_CONSTANTS']. note: this
216 defaults to false which means you have to allow them explicitly
217 in your secured templates from now on! (messju)
218
219Version 2.6.4 (Sept 7, 2004)
220----------------------------
221
222 - add $smarty.ldelim and $smarty.rdelim to smarty special var (Monte)
223 - fall back to old uniqid()-behaviour when tempnam() fails in
224 core.write_file.php (messju)
225 - fix capitalize modifier, don't rely on buggy ucwords (Monte)
226 - make html_select_date work with negative timestamps, also
227 force year range to include given date unless explicitly
228 set (Garo, Monte)
229 - fix bug with {fetch}, passing user/pass in url did not work
230 (Monte)
231 - fix occasional wrong error messages on mismatched tags when
232 {else}, {elseif}, {foreachelse} or {sectionelse} is involved (messju)
233 - fix handling of methods arguments (messju, Manfred Wischin)
234 - remove touch() call that made the compiled-template's timestamp the
235 same as the source-template's one. (messju)
236 - add assign attribute to html_checkboxes and html_radios
237 (pcg, Monte)
238 - remove non-xhtml conformant tag from mailto function
239 (tacker, Monte)
240 - handle date_format codes %e, %T and %D for windows (tip,
241 Monte)
242 - fix unnecessary call to smarty_core_get_include_path() inside
243 Smarty::_get_auto_filename() (c960657, messju)
244 - add error-messages when anything else than an identifier is passed
245 to foreach's key- or item-attribute (messju)
246 - fix handling of digits inside tagnames (messju)
247 - fix escaping of backslashes in Smarty_Compiler::_quote_replace() (messju)
248
249Version 2.6.3 (June 16, 2004)
250-----------------------------
251
252 - added escapement of '</' to '<\/' in escape:javascript
253 modifier (c960657, Monte)
254 - added obfuscation of protocol-string in {mailto} when using hex-
255 encoding (bharat, messju)
256 - enhanced auto-generated filenames for templates_c and cache (messju)
257 - add 'nonstd' to escape modifier for escaping non-std chars,
258 such as ms doc quote (Monte)
259 - adjusted textformat to not output wrap chars after last para
260 (Monte)
261 - use tempnam() instead of unqid() to create better temporary files in
262 smarty_core_write_file() (xces, messju)
263 - add 'mail' to escape modifier for safe display of e-mail
264 addresses (Monte)
265 - add cycle function attribute "reset" to english docs (Monte)
266 - enhanced support of numeric constants as variable-expressions (messju)
267 - add case decentity to smarty_modifier_escape() (Konstantin A. Pelepelin,
268 messju)
269 - make smarty_core_write_compiled_include() php5-aware (messju)
270 - removed unused functionality to load a subset of lines from a file (messju)
271 - fix is_secure() should only check if a file is_readable, not if
272 the directory where it is in is readable (sagi, messju)
273 - fix problem displaying debug console when $default_resource_type
274 is not "file:" (c960657, Monte)
275 - fix permission handling with security and config_load (messju)
276 - removed '.' from the list of default template locations in
277 _parse_resource_name() (messju)
278 - fix avoid warning with template_exists() on an absolute paths (messju)
279 - fix parameters passed to resource's secure()-function (messju)
280 - fix handling of integer values like width and delay im
281 smarty_function_popup() (messju)
282
283Version 2.6.2 (Feb 17, 2004)
284----------------------------
285
286 - fix allow empty years, months and days in html_select_date's
287 time-attribute (messju)
288 - fix YES and NO should not be booleanized inside triple-quotes in a
289 config-file (messju)
290 - fix accidently slurped line following a triple-quoted value in a
291 config-file (messju)
292 - change default for use_sub_dirs to false (messju)
293 - fix quoting of values in smarty_function_popup() (messju)
294 - fix handling of hidden sections in Config_File (messju)
295 - add handling of resources for {config_load} (messju)
296 - fix bug when using arrays with tr_attr and td_attr in {html_table} (messju)
297 - add unit testing to cvs core (Monte)
298
299Version 2.6.1 (Jan 16, 2004)
300----------------------------
301
302 - rename $smarty->tpl_error_reporting to $smarty->error_reporting
303 (messju)
304 - fix interpretation of $smarty->security in {html_image} (messju)
305 - add caching of requested paths to _assemble_plugin_filepath() (messju)
306 - fix handling of comments inside {php}- and {literal}-blocks (messju)
307 - fix bug handling triple-quotes in config-files (BRDude, messju)
308 - change default of request_use_auto_globals to true - $_SERVER is
309 now preferred over $HTTP_SERVER_VARS (messju)
310 - re-add support for $SCRIPT_NAME (messju)
311 - reactivate $smarty->default_modifiers (messju)
312 - add cookie persistance to debug console (Monte)
313 - allow single-digit days and months without smarty_make_timestamp()
314 in html_select_date (messju)
315 - fix headers sent erroneously with cache_modified_check and fetch()
316 (wphilips, messju)
317 - fix config_file path bug (Marc Cabadas, Monte)
318 - fix 'is even by' and 'is odd by' logic (Monte)
319 - add day_empty, month_empty, year_empty and all_empty attributes to
320 html_select_date (messju)
321 - add table of explanation for {if} qualifiers in docs (boots)
322 - fix bug when comparing array-keys to "selected" in html_options
323 and html_checkboxes (messju)
324 - add better checks for correctly nested tags when compiling (messju)
325 - remove {$SCRIPT_NAME}. use {$smarty.server.SCRIPT_NAME} instead (messju)
326 - remove $global_assign. assign global variables explicitly instead (messju)
327 - fix example for count_characters in docs (boots)
328 - add section new basic syntax section "Escaping Smarty Parsing" in docs (boots)
329 - fix error handler call in config_load (boots)
330 - remove warning in debug_print_var on php-resources (messju)
331 - move function.assign.php to compiler.assign.php (messju)
332 - add property $tpl_error_reporting (messju)
333 - remove property $undefined. "null" is used literally instead (messju)
334
335Version 2.6.0 (Nov 19, 2003)
336----------------------------
337
338 - move Smarty::quote_replace() to Smarty_Compiler::_quote_replace() (messju)
339 - remove import of of attributes of {include_php} to php's namespace.
340 use $params[name] instead (messju)
341
342Version 2.6.0-RC3 (Nov 13, 2003)
343--------------------------------
344
345 - fix handling of $var.key inside [] (messju)
346 - fix handling of assign inside {insert}-tags (messju)
347 - fix handling if [...] inside triple-quotes in config-files (messju)
348 - fix handling of simple-math-operators inside modifiers (Dominik, messju)
349 - fix handling of trailing-slashes in open_basedir in
350 smarty_core_create_dir_structure() (packman, messju)
351
352Version 2.6.0-RC2 (Oct 8, 2003)
353-------------------------------
354
355 - apply modifiers only once to section-loop and foreach-from attrs (messju)
356 - remove use of _smarty_cached_paths-files (messju)
357 - remove Smarty::_plugin_implementation_exists() - use is_callable() (messju)
358 - ignore {strip}/{/strip) inside {strip}-blocks (messju)
359 - fixed removal of leading/trailing newlines in {strip}-blocks (messju)
360 - fixed proper escaping of " and ' with escape:javascript (messju)
361 - fixed bug in traversal of $smarty->plugins_dir-array. now the
362 first matching plugin is taken (messju)
363 - moved {strip} back into the compiler (messju)
364 - fixed config_load: handling of section-attribute and use of
365 multiple config-files in one template (atu, messju)
366
367Version 2.6.0-RC1 (August 11, 2003)
368-----------------------------------
369
370 - fixed status-header for cache_modified_check under cgi-sapi (messju)
371 - added optional parameter $cache_attrs to register_function() and
372 register_block(). $cache_attrs is an array containing attribute-
373 names that should be cached on calls to functions that have
374 $cacheable set to false. (messju)
375 - enabled registration of class-methods as callbacks for the register_*-
376 functions (use: array('classname', 'method_name')) as callback) (messju)
377 - added filepath caching (Monte)
378 - added optional assign-attribute to {capture}-tag (messju)
379 - added $cacheable-parameter to register_compiler_function() (messju)
380 - added $cacheable-parameter with default=true to register_function()
381 and register_block() (messju)
382 - add math speedup to core (Dominik, Monte)
383 - fix newlines for tags without template output (Monte)
384 - added config-option "request_use_auto_globals" to make auto-globals be
385 used as request vars instead of HTTP_*_VARS (messju)
386 - speed up config_load, simplify compiling (Monte)
387 - added block-methods for registered objects (Bharat Mediratta, messju)
388 - ignore one char resource names like c:foo.tpl (Monte)
389 - added default_resource_type feature (Monte)
390 - fix bug where config file starts with hidden section (boots, Monte)
391 - add discrete error checking pertaining to $cache_dir
392 and $compile_dir, their existance and writability (Monte)
393 - fixed behaviour of start=... for {counter} (messju)
394 - fixed assign for {counter} (messju)
395 - added params vdir, hdir and inner to html_table to allow looping
396 over the data in various directions (messju)
397 - allow spaces in literal tags (Paul Lockaby, Monte)
398 - speed up compiled templates, hardcode plugin filepaths
399 instead of dynamically calculate at runtime. (Monte)
400 - abstract many core components from Smarty.class.php,
401 speeding up core class instantiation (Monte)
402 - fixed bug in _create_dir_structure() when used with open_basedir-
403 restriction and relative paths (messju)
404 - use DIRECTORY_SEPARATOR exclusively, keep DIR_SEP for BC (Monte)
405 - changed "link" to "href" in html_image. "link" is still working
406 but deprecated (messju)
407 - html_image always renders an alt-tag now (default alt="") (messju)
408 - fixed assign attribute for multiple counters (messju)
409 - added simple math operators to variables (Monte)
410 - enabled array(&$obj. 'source', 'timestamp', 'secure', 'trusted')
411 as callback for register_resource() (messju);
412 - enabled array(&$obj, 'method') as callback for
413 $default_template_handler_func (messju)
414 - remove unnecessary close/open tags from compiled templates
415 (Monte)
416 - fixed errornous creation of '//' in image_path in html_image (messju)
417 - fix escapement of special chars for key vals in debug
418 console (Monte)
419 - fixed debug timing logic for config_load (Tom Sommer, Monte)
420 - all in-code doc comments converted to phpDocumentor format (Greg)
421 - moved strip from smarty core to plugin (Monte)
422 - moved config_load from smarty core to plugin (Monte)
423 - added &$repeat-parameter to block-functions (messju)
424 - enabled hex-constants in function.math.php (messju)
425 - enabled hex-constants (0x...) as function-attributes, inside if-statements
426 and as modifier-parameters (messju)
427 - fixed bug with passing $smarty as reference in Smarty.compiler.class
428 (messju)
429 - corrected output with {strip} and PHP tag newlines (Monte)
430 - added possibility to register function-callbacks as "array(&$obj, 'method)"
431 this affects register_function(), -block, -compiler_function, -modifier,
432 -prefilter, -postfilter, -outputfilter-functions() and $cache_handler_func
433 (messju)
434 - added <labels> to html_checkboxes and html_radios (Philippe, messju)
435 - added "labels"-options to turn off labels in html_checkboxes and _radios
436 (messju)
437
438Version 2.5.0 (April 11, 2003)
439------------------------------
440
441 - fixed bug with default modifier when passing integer 0
442 (Monte)
443 - change backtic syntax from $`foo` to `$foo` (Monte)
444 - recognize $foo[][] syntax inside embedded quotes without
445 backtics (Monte)
446 - name=123 is passed as an integer (not a string) to plugins now (messju)
447 - $length is now propagated to sub-values in debug_print_var (messju)
448
449Version 2.5.0-RC2 (March 26, 2003)
450----------------------------------
451
452 - made clear_cache() ignore compile_id, when clearing cache-groups (this
453 is when no $tpl_file is supplied) (messju)
454 - made onmouseout XHTML-compliant in function.popup.php (messju)
455 - applied local-var-naming-scheme to fetch() (messju)
456 - renamed $localvars to $_localvars in cache-file-handling-functions,
457 added _get_auto_id()-function (messju)
458 - swapped compile_id and cache_id in read_cache_file and write_cache_file
459 (messju)
460 - reverted patch for cache-file-handling (messju)
461 - made html_radios and html_checkboxes accept "selected" instead
462 of "checked" optionally. (messju)
463 - made compile_id ignored in clear_cache, made order of
464 auto_file_name $cache_id.$compile_id again, applied the the new
465 variable-naming-scheme for cache_file_handing functions (messju)
466 - removed notice of undefined var in _rm_auto() (messju)
467 - added warning message when an array is passed as
468 the "checked" value of html_radios (Monte)
469 - fixed errormessage in _compile_smarty_ref() (messju)
470 - updated docs for html_image "name" -> "file" (messju)
471