Changelog History
-
v3.1.0 Changes
September 28, 2020π 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).
-
v3.0.0 Changes
July 26, 2020π± 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:
-
v2.2.0 Changes
December 27, 2019π We've got a round of fixes and cool improvements for this release.
π± β‘οΈ Improvements
- β Add whitespace control (#116, thanks to @jpcima).
- Added new functions: select element at position, string length.
- π» Throw exception if file cannot be opened (#117, thanks to @thomastrapp).
- β¬οΈ Bump to newer nlohmann/json (#107, thanks to @JehandadKhan).
π± π Bug Fixes
- π Fixed scope when including templates (#118, thanks to @thomastrapp).
- π Fixed Visual Studio compiler warnings (#119, thanks to @Dodzey).
π± π¨ Further Changes
-
v2.1.0 Changes
February 16, 2019π± β¨ Further Improvements
π There are a couple of great improvements for inja in this release:
- π We've added a first API documentation.
- Thanks to @gracicot and @mhhollomon, we improved cmake and meson target exports (#83, #86).
- I've added a string_view polyfill for C++11 to C++14.
- You can now use cget for installing inja (#88). Thanks @pfultz2!
- β Warnings in appveyor has been cleaned.
π π₯ And a small breaking change in the development pipeline: The CMake option for disabling tests has been renamed from
BUILD_TEST
toBUILD_TESTING
. -
v2.0.1 Changes
January 14, 2019 -
v2.0.0 Changes
December 23, 2018Finally, this is the next major version of Inja. After reworking most of its internals, Inja is now up to two orders of magnitude faster than v1! (#67)
π± β¨Further Improvements
- We've added type checks as builtin functions (#64).
- π Loop variables are now supported in inja templates (#52).
- Include in-memory templates (#47).
- π¦ Inja is now easier to integrate either with the vcpkg (#45) or conan (#43) package manager.
π± π₯ Breaking Changes
Inja now requires
string_view
from C++17. -
v1.0.0 Changes
March 12, 2018π This is the first stable release of inja! π
π Major improvements over the last released version are:
- β Added callbacks (#5, #15)
- π New functions: min, max, sort, first, last, conversion to string and number (#22)
- β Added loops over std::map / json objects
- π Fixed lots of errors and warnings (#18)
- π Better error messages
- β More tests and compilers with CI, additional testing with meson
- β‘οΈ Updated dependencies to JSON 3.1 and Catch 2.1
-
v0.1.1 Changes
November 16, 2017- β Add to Hunter
- π Fix
round()
function - β‘οΈ Update to Catch2
-
v0.1.0 Changes
November 14, 2017The first basic Inja version. Yeah!