Thymeleaf 2.0.10 JUST PUBLISHED

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Thymeleaf 2.0.10 JUST PUBLISHED

Thymeleaf 2.0.10 has been just published, fixing an important expression evaluation bug found in 2.0.9 (released earlier today). Sorry for the inconvenience.

This new 2.0.10 version should works as a drop-in replacement for any previous 2.0.x versions.

Updating from 2.0.9 to 2.0.10 is strongly recommended.

Following are, again, all the changes from 2.0.8:


  - Added #strings.escapeXml(...) utility method.

  - Added HttpServletResponse argument to WebContext constructors in order to be able to access to the response object from Processors.

  - Modified parsing system to allow parsing templates without a root element (with several elements / no elements at all).

  - Fixed URL parameter names not allowing brackets ([,],{,})

  - Fixed URL parameter names not being repeatable.

  - Added support for server-based URLs in non-servlet-based environments.

  - Added "setAdditionalDialects()" method to TemplateEngine for being able to specify the dialects to be used besides the "standard" ones.

  - Created new org.thymeleaf.fragment and org.thymeleaf.standard.fragment packages as a refactoring of the several fragment inclusion options available for Thymeleaf dialects.

  - Added to TemplateEngine the possibility of filtering parsed templates using an IFragmentSpec in order to process only fragments of templates.

  - Created IProcessorContext as the interface defining the minimum amount of information required to execute expressions, and created the "ProcessorContext" class as the most basic implementation of this interface.

  - Added #numbers.sequence(from,to,step) utility method (step didn't exist in previous versions).

  - Modified Arguments to be an implementation of IProcessorContext.

  - Modified the StandardExpressionProcessor infrastructure to allow the specification of an IProcessorContext for executing expressions instead of a full --and heavier-- Arguments object. This allows the execution of expressions outside templates.

  - Refactored whole hierarchy of "include" and "substituteby" attribute processors in order to use the new structures in the org.thymeleaf.fragment package.

  - Modified "TemplateEngine.getConfiguration()" visibility to public.

  - Modified "TemplateEngine.isInitialized()" visibility to public.

  - Added method for easier calling of DOM selectors on single nodes.

  - Modified extraction of fragments from element and/or attribute name so that a list might be returned instead of a single Node.

  - Removed initialization requirement from DialectConfiguration.getPrefix()

  - Fixed JavaScript/Dart/Text inlining in order to output text between [[...]] exactly as it was originally output when the contained expression is not a valid Standard Expression.


  - Added RequestContext variable to Model as AbstractTemplateView.SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE besides thymeleaf's own SpringContextVariableNames.SPRING_REQUEST_CONTEXT for better compatibility with other view-layer technologies.

  - Added an HttpServletResponse parameter to SpringWebContext constructors in order to be able to access response from processors.

  - Refactored SpringEL expression evaluation.

  - Added "viewClass" property to ThymeleafViewResolver.