All Versions
11
Latest Version
Avg Release Cycle
141 days
Latest Release
2268 days ago

Changelog History
Page 1

  • v4.0.0 Changes

    February 06, 2018

    v4 has been a complete rewrite in the plates system. It's fairly backwards compatible, but a lot of the internals have changed, and we still have a decent amount of features and work to do for v4.

    Significant Changes

    • Templates are Immutable VO's
    • Rendering is handled via RenderTemplate interfaces
    • Extensions are first class citizens
    • The Engine is now a small wrapper for an IoC Container

    ๐Ÿ†• New Features

    • RenderContext API for defining composable functions and more
    • Components
    • Powerful and customizable naming strategies for dynamic base paths
    • Multi folder fallbacks
    • Relative and Absolute Path templates
    • ๐Ÿ‘ Better Error Handling
    • 0๏ธโƒฃ Default Layouts
    • Deep Sections #169
    • Template Composers
    • Static File Rendering
    • Image/Base64Encoding Rendering
    • And probably a few more ;p

    ๐Ÿ“š Documentation is lacking for many of these features. Contributions are welcome! The best way to learn about the features it to look at the tests and examples.

  • v4.0.0-alpha Changes

    February 06, 2018

    v4 has been a complete rewrite in the plates system. It's fairly backwards compatible, but a lot of the internals have changed, and we still have a decent amount of features and work to do for v4.

    Significant Changes

    • Templates are Immutable VO's
    • Rendering is handled via RenderTemplate interfaces
    • Extensions are first class citizens
    • The Engine is now a small wrapper for an IoC Container

    ๐Ÿ†• New Features

    • RenderContext API for defining composable functions and more
    • Components
    • Powerful and customizable naming strategies for dynamic base paths
    • Multi folder fallbacks
    • Relative and Absolute Path templates
    • ๐Ÿ‘ Better Error Handling
    • 0๏ธโƒฃ Default Layouts
    • Deep Sections #169
    • Template Composers
    • Static File Rendering
    • Image/Base64Encoding Rendering
    • And probably a few more ;p

    ๐Ÿ“š Documentation is lacking for many of these features. Contributions are welcome! The best way to learn about the features it to look at the tests and examples.

  • v3.3.0 Changes

    December 28, 2016
    • โž• Added the ability to append content to sections using the new push() function.
    • โž• Added an end() function as an alias to stop().
  • v3.2.0 Changes

    December 27, 2016
    • ๐Ÿ›  Fixed an issue where template functions were not accessible from extensions.
    • ๐Ÿ›  Fixed an issued with the URI extension throwing errors when it shouldn't.
    • โž• Added the ability to get all template data by calling $template->data().
    • โž• Added the ability to render a template via the toString() magic method.
    • โž• Added the ability to run the tests using composer test.
    • ๐Ÿ‘Œ Improvements to error handling when rendering templates.
    • ๐Ÿ“š Various coding style, CI and documentation improvements.
  • v3.1.1 Changes

    July 09, 2015
    • ๐Ÿ›  Fix bug related to output buffering and exceptions (#78).
    • ๐Ÿ‘Œ Improvements to escaping (#56).
    • ๐Ÿ‘ท Various CI and packaging improvements.
  • v3.1.0 Changes

    October 21, 2014
    • โž• Added batch functionality to the escaping functions.
  • v3.0.3 Changes

    October 20, 2014
    • โž• Added ability to define the default content of a section.
    • Various code improvements (cleanup DocBlocks, class simplification, add Composer keywords, etc).
  • v3.0.2 Changes

    September 30, 2014
    • โž• Added all missing tests.
    • ๐Ÿ‘Œ Improved custom function name validation.
    • ๐Ÿ›  Fixed bug with fallback folders, where the file extension wasn't being applied.
    • ๐Ÿ‘Œ Improved error handling in Template class.
  • v3.0.1 Changes

    September 28, 2014
    • โšก๏ธ Updated extension interface to ensure that an instance of the Engine class be passed to the register() method.
    • Minor code cleanup.
  • v3.0.0 Changes

    September 27, 2014
    • โž• Added ability to share data across templates.
    • โž• Added ability to preassign data to specific templates.
    • โž• Added ability to create one-off template functions, without using an extension.
    • โž• Added new folder "fall backs", where missing folder templates will fall back to the default folder.
    • โž• Added new render() method to Engine class, improving the use of the Engine as the primary API.
    • Templates variables are now accessed without the $this pseudo-variable.
    • Total overhaul to how extensions are registered. Replaced getFunctions() method with new register() method.
    • Section content is no longer assigned to template variables. Use the the section() function instead.
    • ๐Ÿ“‡ Renamed section end() function to stop(). This fits more appropriately with the start() function.
    • ๐Ÿ“‡ Renamed get() function to fetch().
    • ๐Ÿ“‡ Renamed pathExists() method in the Engine class to exists().
    • ๐Ÿ“‡ Renamed getTemplatePath() method in the Engine class to path().
    • ๐Ÿ“‡ Renamed makeTemplate() method in the Engine class to make().
    • โœ‚ Removed the ability to assign template data directly to the Template class. For example: $this->name = 'Jonathan'. This applies both within and outside of templates. Use the data() method instead.
    • โœ‚ Removed getEngine() method from the Template class. There's no reason to need this anymore.
    • โœ‚ Removed addFolders() method from the Engine() class.
    • โœ‚ Removed unloadExtension() and unloadExtensionFunction() methods from the Engine() class.