- Deprecated `Primitive` and `as_primitive`.
- Deprecated `as_f64`.
- Truthiness of values is now checking container length. Previously containers
were always true, now they are only true if they are not empty.
- Strings and safe strings no longer compare the same.
- Changed list and map string output to have delimiters and debug printing.
- Added `batch` and `slice` filter.
- Added the new `items` filter.
- Removed value internal distinction between maps and structs.
- Added `list` filter.
- Added `first` and `last` filters.
- Added `round` and `abs` filters.
- Implemented integer division operator (``//``) and changed division to always
return floats like documented and to match the Jinja2 implementation. To
make this more convenient whole integer floats are now handled like integers in
some situations.
- Added `recursive` support to for loops.
- Merged `builtin_filters`, `builtin_tests` and `builtin_functions` features
into `builtins`.
- Added `value::serializing_for_value` to check if serialization is taking place
for MiniJinja.
- The `Value` type now supports deserialization. This feature can be disabled
by removing the default `deserialization` feature.
- Removed optional `memchr` dependency as it does not appear to be useful.