Release Notes
- Added
SemiStrict undefined mode that is like strict but allows
to be checked for truthiness. Additionally an if expression without
an else block will always produce a silent undefined object that
never errors for compatibility with Jinja2. #687
- Make the trait bounds of
ViaDeserialize stricter. Now the type
can only be constructed if the type implements DeserializeOwned.
This is not a new requirement for passing the function to
add_function but bad code will now error earlier for better
error reporting. #689
- Raise MSRV to 1.70.
- The contrib crate now uses a basic xorrand implementation instead
of depending on all of the rand module. #696
- Added temps, a way to stash away temporary state during rendering. #697
- Fixed a bug that caused the random functions in the contrib crate
to not advance the RNG between calls. #698
- Added
Environment.undeclared_variables_in_template and
Environnent.undeclared_variables_in_str to Python binding. #699
- Enable
loop_controls for Python in-line with the CLI. #704
- Fixed a panic when comparing plain objects. #705
- Added
Object::custom_cmp to allow objects to influence how they
compare against themselves. This also fixes Python objects in the
Python binding not to compare correctly. #707
- Fixed a bug where
undeclared_variables would incorrectly handle
variables referenced by macros. #714
- Fixed a deadlock in the Python binding when multiple threads were
rendering from the same environment at once. #717
- The Python bindings handle
__bool__ correctly now for custom
objects in if-conditions and filters. #719
- Fixed a bug where
}} caused a syntax error in expressions with
open parentheses, braces or brackets. #723
- Added
State::known_variables to return a list of known variables
and Environment::globals. #724
- Fixed an issue with undeclared variables not handling
caller. #725
- Removed unnecessary
Filters and Tests traits. They remain as
hidden aliases to Function. #726
- Fixed a bug that caused implicit string concatenation to not correctly
handle escapes. #728
- Implemented constant folding in the code generator. #731
- Improved error reporting for bad loop recursion calls. #734
- The engine now uses smaller integers to represent columns, line numbers
and addresses. This cuts down on the memory usage needed for debug
information. #735
- Added
load_from_path to python. #736
- Added JavaScript bindings. #737
Install minijinja-cli 2.8.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/mitsuhiko/minijinja/releases/download/2.8.0/minijinja-cli-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy ByPass -c "irm https://github.com/mitsuhiko/minijinja/releases/download/2.8.0/minijinja-cli-installer.ps1 | iex"
Download minijinja-cli 2.8.0