Inja v3.1.0 Release Notes
Release Date: 2020-09-28 // about 4 years ago-
๐ First and foremost, this update improves the performance of template rendering, in particular of loops and variable printing.
๐ฑ โก Improvements
- โ Added assignment statements to set a variable within a template.
- โ Added whitespace control for expressions (#162, thanks to @tindy2013).
- โ Added void callbacks without return values, e.g. for debugging purposes.
๐ฑ ๐ Bug Fixes
- ๐ Fixed an issue of parsing nested functions (#159, thanks to @DeiRex75).
- ๐ Fixed use of parenthesis in combination with logic operators (#155, thanks to @DeiRex75).
- ๐ Fixed an issue with loop data in the render_to function (#165, thanks to @fishjump)
๐ฑ ๐จ Further Changes
- โ Integrated Codacity into CI and fixed several static analyzer issues.
- ๐ Fixed several compiler warnings (#169, thanks to @tindy2013).
Previous changes from v3.0.0
-
๐ฑ Time for a new major version of inja! ๐
๐ฑ โก๏ธ Improvements
- ๐ A new core parser and renderer based on an abstract syntax tree (fixing #149), allowing for:
- Complex expressions of functions, logic expressions and statements.
- Mathematical functions in templates.
- Variadic callbacks with unknown number of arguments.
- ๐ Show parsing and render error positions in template (#134, thanks to @sabelka).
- ๐ Performance improvements, in particular for large json data (#146, thanks to @craigpepper) and large template files.
- โก๏ธ Update nlohmann/json to version 3.8.0 (#144, also thanks to @craigpepper).
- ๐ Support for GCC 4.8 (#150, thanks to @rafadesu)
๐ฑ ๐จ Further Changes
- ๐ท Move all CI to GitHub Actions.
- ๐ Switching from Catch to Doctest as our testing framework with much better build times.
๐ฑ ๐ฅ Breaking Changes
- ๐ We've removed the json pointer style for variables in templates.
- We now require nlohmann/json with a minimum version of 3.8.0.
- ๐ A new core parser and renderer based on an abstract syntax tree (fixing #149), allowing for: