removed mods directory from the ATutor codebase
[atutor.git] / mods / phpdoc2 / PhpDocumentor / phpDocumentor / Smarty-2.6.0 / RELEASE_NOTES
diff --git a/mods/phpdoc2/PhpDocumentor/phpDocumentor/Smarty-2.6.0/RELEASE_NOTES b/mods/phpdoc2/PhpDocumentor/phpDocumentor/Smarty-2.6.0/RELEASE_NOTES
deleted file mode 100644 (file)
index 7fa1b4b..0000000
+++ /dev/null
@@ -1,423 +0,0 @@
-2.5.0\r
------\r
-\r
-Very minor adjustments since RC2, see the NEWS file for details.\r
-\r
-2.5.0-RC2\r
----------\r
-\r
-Many fixes since the RC1 release. This one is as close to production quality as\r
-they come, so this will be the last release before 2.5.0. The SGML documentation\r
-files have also been removed from the tarball. If you want them, get them from\r
-the CVS repository.\r
-\r
-2.5.0-RC1\r
----------\r
-\r
-Release Candidate 1. All $smarty vars can now be dynamic, such as\r
-$smarty.get.$foo. A new class function get_function_object() gets you a\r
-reference to an assigned object, useful within your own custom functions.\r
-append() can now merge as well as append with a third optional attribute. A new\r
-class function get_config_vars() was added, and get_template_vars() can now be\r
-used to get individual vars. Full variable syntax is now supported within\r
-double quotes via a backtick (`) syntax. Files created by smarty are now\r
-written to a tmp file then renamed to avoid file lock retention. html_radios,\r
-html_checkboxes, html_table, html_image, nl2br functions added, see the NEWS\r
-file for full details.\r
-\r
-2.4.2\r
------\r
-Another point release. Added support for dynamic object reference syntax\r
-($foo->$bar), support for full variable syntax within quotes ("$foo[0].bar"),\r
-and other minor fixes. See the NEWS file for full details.\r
-\r
-2.4.1\r
------\r
-\r
-This is basically a point release, cleaning up a few things caught\r
-in the 2.4.0 release. See the NEWS file for full details.\r
-\r
-2.4.0\r
------\r
-\r
-Smarty now supports the ability to access objects within the templates. Two\r
-methods are available, one which closely follows Smartys conventions, and\r
-another that follows more traditional object syntax for those familiar with\r
-PHP.\r
-\r
-The internal compiling engine has also undergone some major work. The regex\r
-parsing was rewritten to be much more strict, more secure and more\r
-maintainable. Config files are now compiled, which can speed up pages quite a\r
-bit that use config files extensively. Assigned variables are no longer\r
-extracted to PHP namespace, saving an extract call for every template. There is\r
-now support for applying modifiers to static values and functions. You can now\r
-access constants with $smarty.const.VAR.  See the NEWS file for complete\r
-changes.\r
\r
-2.3.1\r
------\r
-\r
-The mtime on compiled files will now match the source files, in the case where\r
-the source file may not get the current timestamp, recompiling will still work\r
-as expected. Proper support for open_basedir has been added, so Smarty should\r
-work correctly in safe mode. Added a few new features such as textformat block\r
-function, strip variable modifier and optgroup support for html_options. Also\r
-other minor bug fixes, see the Change Log.\r
-\r
-2.3.0\r
------\r
-\r
-Smarty now has a {debug} template function that brings up the debugging console\r
-right where {debug} is called, regardless of $debugging settings. This works a\r
-little different than turning on $debugging in the sense that it shows all the\r
-template variables available at the time {debug} is called, including local\r
-scope vars. It does not show the templates names however, since this\r
-executed during runtime of the template.\r
-\r
-You can now supply an expire time when clearing cache or compile files. This is\r
-mostly useful for removing stale files via the API.\r
-\r
-Plugins now stop execution upon error, instead of outputting a warning and\r
-continuing.\r
-\r
-Two new API functions, assign_by_ref() and append_by_ref() were added. They\r
-allow assigning template variables by reference. This can make a significant\r
-performance gain, especially if you are assigning large arrays of data. PHP 5.0\r
-will do this implicitly, so these functions are basically workarounds.\r
-\r
-Several misc bug fixes, see the Change Log for information.\r
-\r
-\r
-2.2.0\r
------\r
-\r
-Smarty now allows an array of paths for the $plugin_dir class variable. The\r
-directories will be searched in the order they are given, so for efficiency keep\r
-the most-used plugins at the top. Also, absolute paths to the plugin directories are\r
-more efficient than relying on the PHP include_path.\r
-\r
-Cache files can now be grouped with the cache_id. See the documentation under\r
-the new "Caching" section for details. compile_id also respects the same\r
-grouping syntax. The cache/compile file structure changed, so be sure to clear\r
-out all your cache and compile files when upgrading Smarty. Also if you are\r
-using PHP-accelerator, restart apache. I've seen some quirky things happen if\r
-the phpa files do not get cleared (known issue with phpa and parent\r
-class-member changes, so just clear 'em.)\r
-\r
-Smarty now correctly respects the PHP include_path for $template_dir, $compile_dir,\r
-$cache_dir, $config_dir and $plugin_dir. Be aware that relying on the\r
-include_path is an overhead, try to use absolute pathnames when possible\r
-(or relative to working directory.)\r
-\r
-Documentation has been updated and rearranged a bit. Most notably, the\r
-installation instructions are completely revamped, and a new Caching section\r
-explains Smarty's caching in detail along with the new grouping functionality.\r
-\r
-Many misc. bug fixes and enhancements, see the full ChangeLog (NEWS file) for\r
-details.\r
-\r
-2.1.1\r
------\r
-\r
-There was a bug with template paths and the include_path, this has been fixed.\r
-Also register_outputfilter() did not work, this is fixed. A new template\r
-function named "cycle" has been added to the distribution, nice for cycling\r
-through a list (or array) of values.\r
-\r
-2.1.0\r
------\r
-\r
-This release has quite a few new features and fixes. Most notable are the\r
-introduction of block functions, so you can write plugins that work on a block\r
-of text with {func}{/func} notation. Also output filters were added, so you can\r
-apply a function against the output of your templates. This differs from the \r
-postfilter function, which works on the compiled template at compile time, and\r
-output filters work on the template output at runtime.\r
-\r
-Many other features and bug fixes are noted in the NEWS file.\r
-\r
-\r
-2.0.1\r
------\r
-\r
-This is a point release, fixing a few bugs and cleaning things up. A plugin\r
-was renamed, the dash "-" was removed from compiled template and cached file\r
-names. If you're upgrading, you might want to clear them out first.  See the\r
-ChangeLog for details.\r
-\r
-2.0.0\r
------\r
-\r
-This release is a huge milestone for Smarty. Most notable new things are a\r
-plugin architecture, removal of PEAR dependency, and optimizations that\r
-drastically improve the performance of Smarty in most cases.\r
-\r
-The plugin architecture allows modifiers, custom functions, compiler functions,\r
-prefilters, postfilters, resources, and insert functions to be added by\r
-simply dropping a file into the plugins directory. Once dropped in, they are\r
-automatically registered by the template engine. This makes user-contributed\r
-plugins easy to manage, as well as the internal workings of Smarty easy to\r
-control and customize. This new architecture depends on the __FILE__ constant,\r
-which contains the full path to the executing script. Some older versions of\r
-PHP incorrectly gave the script name and not the full filesystem path. Be sure\r
-your version of PHP populates __FILE__ correctly. If you use custom template\r
-resource functions, the format of these changed with the plugin architecture.\r
-Be sure to update your functions accordingly. See the template resource section\r
-of the documentation.\r
-\r
-The PEAR dependancy was removed from Smarty. The Config_File class that comes\r
-with Smarty was actually what needed PEAR for error handling which Smarty didn't\r
-use, but now everything is self-contained.\r
-\r
-Performance improvements are graphed on the benchmark page, you will see that\r
-overall performance has been sped up by as much as 80% in some cases.\r
-\r
-Smarty-cached pages now support If-Modified-Since headers, meaning that if a\r
-cached template page has not changed since the last request, a "304 Not\r
-Modified" header will be sent instead of resending the same page. This is\r
-disabled by default, change the setting of $cache_modified_check.\r
-\r
-\r
-1.5.2\r
------\r
-\r
-Mostly bug fixes, added a default template resource handler.\r
-\r
-\r
-1.5.1\r
------\r
-\r
-Critical bug fix release. If you use caching, you'll need to upgrade.\r
-\r
-\r
-1.5.0\r
------\r
-\r
-Several feature enhancements were made to this version, most notably the\r
-{foreach ...} command which is an alternative to {section ...} with an easier\r
-syntax for looping through a single array of values. Several functions were\r
-enhanced so that the output can be automatically assigned to a template\r
-variable instead of displayed (assign attribute). Cache files can now be\r
-controlled with a custom function as an alternative to the built-in file based\r
-method. Many code cleanups and bug fixed went into this release as well.\r
-\r
-\r
-1.4.6\r
------\r
-\r
-The behavior with caching and compile_check has been slightly enhanced. If\r
-caching is enabled AND compile_check is enabled, the cache will immediately get\r
-regenerated if _any_ involved template or config file is updated. This imposes\r
-a slight performance hit because it must check all the files for changes, so be\r
-sure to run live sites with caching enabled and compile_check disabled for best\r
-performance. If you update a template or config file, simply turn on\r
-compile_check, load the page, then turn it back off. This will update the cache\r
-file with the new content. This is accomplished by maintaining a list of\r
-included/loaded templates and config files at the beginning of the cache file.\r
-Therefore it is advisable to remove all cache files after upgrading to 1.4.6\r
-(although not absolutely necessary, old cache files will regenerate)\r
-\r
-The debug console now has script timing and array values printed. You MUST\r
-update your debug.tpl file with this version of Smarty. Also, the new debug.tpl\r
-will not work with older versions of Smarty.\r
-\r
-\r
-1.4.5\r
------\r
-\r
-Mostly bug fixes and minor improvements. Added compile id for separate compiled\r
-versions of the same script. The directory format and filename convention for\r
-the files in templates_c has changed, so you may want to remove all of the\r
-existing ones before you upgrade.\r
-\r
-\r
-1.4.4\r
------\r
-\r
-A few bug fixes, new section looping attributes and properties, debugging\r
-console function for control via URL, and overLib integration and access\r
-to request variables from within the template.\r
-\r
-\r
-1.4.3\r
------\r
-\r
-This release has a few bug fixes and several enhancements. Smarty now supports\r
-template security for third-party template editing. These features disallow the\r
-ability for someone to execute commands or PHP code from the template language.\r
-Smarty also now has a built-in debugging console, which is a javascript pop-up\r
-window that displays all the included template names and assigned variables.\r
-\r
-\r
-1.4.2\r
------\r
-\r
-This was mostly one bug fix with variable scoping within included templates\r
-and a few documentation changes and updates. See the ChangeLog file for full\r
-details.\r
-\r
-\r
-1.4.1\r
------\r
-\r
-It seems that the EX_LOCK logic from the previous release didn't fix all the\r
-problems with windows platforms. Hopefully this one does. It basically\r
-disables file locking on windows, so there is a potential that two programs\r
-could write over the same file at the same time, fyi.\r
-\r
-The reset is minor bug fixes, please refer to the ChangeLog file.\r
-\r
-\r
-1.4.0\r
------\r
-\r
-IMPORTANT NOTICE\r
-\r
-Smarty now has a new syntax for accessing elements within section loops. The\r
-new syntax is easier to use and nicely handles data structures of any\r
-complexity. Consequently, this breaks the old syntax.\r
-\r
-Here is an example of the syntax change:\r
-\r
-old syntax:\r
-{$sec1/sec2/sec3/customer.phone}\r
-\r
-new syntax:\r
-{$customer[$sec1][$sec2][$sec3].phone}\r
-\r
-The section names used to come first, followed by the variable name. Now the\r
-variable name always comes first, followed by the section names in brackets.\r
-You can access variable indexes anywhere, depending on how you passed the\r
-variables in.\r
-\r
-To fix your current templates, we have provided a script that will adjust the\r
-syntax for you. Located in misc/fix_vars.php, run this script from the the\r
-command line, giving each template as an argument. Be sure to use absolute\r
-pathnames, or pathnames relative to the executing script. Probably the easiest\r
-way to do this is to copy the fix_vars.php script into your template directory\r
-and run 'php -q fix_vars.php *.tpl' Be sure you have proper write permission,\r
-and backup your scripts first to be safe! The examples in the 1.4.0\r
-documentation have been updated to reflect the changes.\r
-\r
-cd /path/to/templates\r
-cp /path/to/fix_vars.php .\r
-find . -name "*.tpl" -exec php -q ./fix_vars.php {} \;\r
-\r
-NEW AND IMPROVED COMPILATION PROCESS\r
-\r
-Smarty 1.4.0 also has a new compilation process. Instead of compiling all the\r
-templates up front, it now compiles them at runtime. This has several\r
-advantages. First of all, there is no longer a need to have a single template\r
-directory. You can now have arbitrary template sources, such as multiple\r
-directories or even database calls. This also speeds the performance of Smarty\r
-when $compile_check is enabled, since it is only checking the template that is\r
-being executed instead of everything found in the template directory. The\r
-$tpl_file_ext is no longer needed, but kept for backward compatability.\r
-Templates can now be named anything you like with any extension.\r
-\r
-MINOR FIXES\r
-\r
-A workaround for LOCK_EX on Windows systems was added, and changed a couple of\r
-file permissions for better security on public servers.\r
-\r
-$show_info_header is now defaulted to false instead of true. This header causes\r
-problems when displaying content other than HTML, so now you must explicitly\r
-set this flag to true to show the header information (or change the default in\r
-your copy of Smarty.)\r
-\r
-Documentation is written in docbook format. I updated the docbook -> HTML\r
-generating software & style-sheets, and consequently the examples are no longer\r
-in a different background color. If anyone wants to contribute a better\r
-stylesheet or help with documentation, drop me a line. <monte@ispi.net>\r
-\r
-CHANGES/ENHANCEMENTS/UPDATES\r
-\r
-date_format, html_select_date and html_select_time used to require a unix\r
-timestamp as the format of the date passed into the template. Smarty is now a\r
-bit smarter at this. It will take a unix timestamp, a mysql timestamp, or any\r
-date string that is parsable by strtotime, such as 10/01/2001 or 2001-10-01,\r
-etc. Just give some formats a try and see what works.\r
-\r
-Smarty now has template prefilters, meaning that you can run your templates\r
-through custom functions before they are compiled. This is good for things like\r
-removing unwanted comments, keeping an eye on words or functionality people are\r
-putting in templates, translating XML -> HTML, etc. See the register_prefilter\r
-documentation for more info.\r
-\r
-Another addition are the so-called compiler functions. These are custom\r
-functions registered by the user that are executed at compilation time of the\r
-template. They can be used to inject PHP code or time-sensitive static content\r
-into the compiled template.\r
-\r
-The run-time custom functions are now passed the Smarty object as the second\r
-parameter. This can be used, for example, to assign or clear template variables\r
-from inside the custom function.\r
-\r
-clear_compile_dir() was added for clearing out compiled versions of your\r
-templates. Not something normally needed, but you may have a need for this if\r
-you have $compile_check set to false and you periodically update templates via\r
-some automated process. As of 1.4.0, uncompiled templates _always_ get\r
-compiled regardless of $compile_check setting, although they won't be checked\r
-for recompile if $compile_check is set to false.\r
-\r
-You can now refer to properties of objects assigned from PHP by using the '->'\r
-symbol and specifying the property name after it, e.g. $foo->bar.\r
-\r
-{php}{/php} tags were added to embed php into the templates. Not normally\r
-needed, but some circumstances may call for it. Check out the "componentized\r
-templates" tip in the documentation for an example.\r
-\r
-{capture}{/capture} and {counter} functions were added. See the documentation\r
-for a complete description and examples.\r
-\r
-UPGRADE NOTES\r
-\r
-The format of the files created in the $compile_dir are now a bit different.\r
-The compiled template filename is the template resource name url-encoded.\r
-Therefore, all compiled files are now in the top directory of $compile_dir.\r
-This was done to make way for arbitrary template resources. Each compiled\r
-template also has a header that states what template resource was used to\r
-create it. From a unix command prompt, you can use "head -2 *" to see the first\r
-two lines of each file.\r
-\r
-When upgrading to 1.4.0, you will want to clear out all your old files in the\r
-$compile_dir. If you have $compile_check set to false and the compiled template\r
-does not yet exist, it will compile it regardless of this setting. This way you\r
-can clear out the $compile_dir and not worry about setting $compile_check to\r
-true to get the inital compilation under way.\r
-\r
-\r
-1.3.2\r
------\r
-\r
-Smarty now has (an optional) header prepended to the output of the Smarty\r
-templates. This displays the Smarty version and the date/time when the page was\r
-generated. This is useful for debugging your cache routines, and purely\r
-informational so there is evidence that the page was generated by Smarty. Set\r
-$show_info_header to false to disable it.\r
-\r
-{config_load ...} performance was tuned by placing the loaded variables into a\r
-global array, so basically a config file is read from the file system and\r
-placed into a php array structure only once, no matter how many times it is\r
-called in any of the templates. The scope of the loaded variables has changed a\r
-bit as well. Variables loaded by config_load used to be treated as global\r
-variables, meaning that parent templates (templates that included the current\r
-template) could see them. Now the default behavior is such that loaded\r
-variables are only visible by the current template and child templates (all\r
-templates included after the {config_load ...} is called.) To mimic the\r
-original behavior, provide the attribute "global=yes" like so: {config_load\r
-file="mystuff.conf" global=yes}. Now when you load in mystuff.conf, the\r
-variables will be visible to parent templates (merged with any existing config\r
-variables.)\r
-\r
-A formatting attribute was added to the {math ...} function, adding the ability\r
-to control the format of the output. Use the same formatting syntax as the PHP\r
-function sprintf().\r
-\r
-{html_select_time ...} was added, a custom function that works much like\r
-{html_select_date ...} except it displays time elements instead of dates.\r
-\r
-A few custom modifiers were added: count_characters, count_words,\r
-count_sentences, count_paragraphs. All pretty self-explanatory.\r
-\r
-/* vim: set et: */\r