Skip to content

Releases: nette/latte

Released version 2.4.4

17 May 12:03
@dg dg
Compare
Choose a tag to compare
  • n:class supports BEM (#156)
  • Filters: trim() is content type aware
  • macro n:attr expands array (#158)
  • Filters: independent on utf8_decode()
  • strict type fixes
  • fixed phpDoc

For the details you can have a look at the diff.

Released version 2.4.3

19 Jan 11:17
@dg dg
Compare
Choose a tag to compare
  • BlockMacros: removed deprecation warning for {includeblock}, it is deprecated silently
  • BlockMacros: dynamic blocks with content-types html & htmlattr are compatible #146
  • BlockMacros: implemented modifies for dynamic blocks
  • RegexpException: added PREG_JIT_STACKLIMIT_ERROR
  • Filters: added |padLeft & |padRight
  • FileLoader::normalizePath() not forget leading ../ #138 #139
  • CoreMacros: {status} uses http_response_code() related to nette/http#113

For the details you can have a look at the diff.

Released version 2.3.13

21 Dec 02:16
@dg dg
Compare
Choose a tag to compare
  • fixed compatibility with PHP 7.1
  • @return self -> static

For the details you can have a look at the diff.

Released version 2.4.2

27 Sep 15:30
@dg dg
Compare
Choose a tag to compare
  • Filters: added support for including blocks in HTMLCOMMENT #136
  • PhpWriter::validateTokens fixed to not recognize Namespace\CLASS as constant
  • BlockMacros - define: fixed variables extracting when named parameters are used (#131)
  • StringLoader: throws exception when is unable to load referred template #129
  • Filters::escapeHtmlAttr() prevents double escaping of Latte\Runtime\Html

For the details you can have a look at the diff.

Released version 2.4.1

31 Jul 11:44
@dg dg
Compare
Choose a tag to compare
  • CoreMacros: translate macro does not use output buffer when possible #124
  • Snippets: disable snippet mode when rendering snippets BC break - interface changed
  • CoreMacros: {spaceless} works the same way as |strip and strips output in chunks
  • Revert "deprecated filter |strip", changed implementation to prevent backtrace limit errors
  • BlockMacros: fixed expandTokens in dynamic blocks (#125)
  • PhpWriter: fixed handling of uppercase class name
  • fixed compatibility with PHP 7.1

For the details you can have a look at the diff.

Released version 2.4.0

27 Jun 18:56
@dg dg
Compare
Choose a tag to compare
  • requires PHP 5.4
  • generates pretty PHP code
  • implemented content type aware filters (triggers warning when mixing blocks/files in different contexts)
  • Implemented inline filters ($var|modifiers) #59
  • added operator in: $entry in [item1, item2] #27
  • {define} accepts parameters
  • added macro {import 'file'}
  • added macro {spaceless}
  • implemented {while} ... {/while $cond}
  • extremely fast filters
  • added |stripHtml
  • added |linebreaks
  • added |length for strings, arrays, Countable and Iterator #103
  • {syntax off} can be ended with {/syntax}
  • added Engine::addProvider(), runtime dependencies and options for macros
  • added SnippetDriver & ISnippetBridge, snippet refactoring
  • supports new operators <=> ** ...
  • {contentType} do not send header when is rendered to string or included #106
  • {capture} creates Latte\Runtime\Html in HTML content type (BC break)
  • new flags IMacro::AUTO_EMPTY and IMacro::AUTO_CLOSE
  • StringLoader: accepts array of strings
  • added |checkurl & |nocheck as aliases for |safeurl & |nosafeurl
  • added MacroNode::$innerContent nette/nette#1361
  • Engine::loadTemplate() invalidates opcode cache
  • Parser: exception 'Template is not valid UTF-8 stream' provides line number

deprecated, changed:

  • inline PHP <? ... ?> is deprecated
  • {includeblock} is deprecated
  • {? ...} is replaced with {php ...}
  • {use} and {status} are deprecated
  • |nl2br is deprecated
  • BlockMacros: <tag> in {snippet} is deprecated
  • {include |escape} and {block |escape} trigger warning about auto-escaping
  • {contentType} is allowed only in template header and in <script> due to #71
  • Latte\Template ⇒ Latte\Runtime\Template
  • Engine::getFilters() returns only name of filters
  • added ILoader::getUniqueId(), changed interface
  • MacroNode, HtmlNode: $isEmpty replaced with $empty
  • ILoader::getChildName()getReferredName() BC break, changed interface
  • uses $global accumulator instead of $_l and $_g
  • variable $template is deprecated
  • PhpWriter: deprecated support for constant names without underscore
  • Parser: removed support for ASP & Python syntax (BC break)

For the details you can have a look at the diff.

Released version 2.3.12

30 May 09:13
@dg dg
Compare
Choose a tag to compare
  • Filter strip: fixed bug when input begins with <pre> <script> or <textarea>
  • Filters::escapeHtml escapes all entities
  • Compiler: pretty whitespace around comments
  • MacroTokens: added new operators <=> ** ...
  • Compiler: improved error messages

For the details you can have a look at the diff.

Released version 2.3.11

10 Apr 23:42
@dg dg
Compare
Choose a tag to compare
  • Engine: reverted "throws CompileException when template contains parse error"
  • BlockMacros: store includingBlock flag in the template global storage when including file using includeblock macro
  • Parser: exception 'Template is not valid UTF-8 stream' provides line number
  • MacroTokens: added null coalesce operator; PhpWriter: quoteFilter recognizes null coalesce operator
  • ob_start() is protected against flush when error occurs

For the details you can have a look at the diff.

Released version 2.3.10

19 Feb 21:55
@dg dg
Compare
Choose a tag to compare
  • Parser: || is not modifier separator #100
  • Engine: fixed CompileException sourceLine on PHP7
  • FileLoader: error message explaining touching, when touch() fails

For the details you can have a look at the diff.

Released version 2.3.9

20 Jan 02:47
@dg dg
Compare
Choose a tag to compare
  • BlockMacros: fixed enabling snippetMode in the dynamic snippetArea
  • Parser::parseMacroTag() fixed extraction of modifier nette/nette#1541

For the details you can have a look at the diff.