Implemented sequence (+ some iterator) and string repeating with the *
operator to match Jinja2 behavior. #519
Added the new minijinja::pycompat module which allows one to register
an unknown method callback that provides most built-in Python methods.
This makes things such as dict.keys work. Also adds a new
--py-compat flag to minijinja-cli that enables it. This improves
the compatibility with Python based templates. #521
Added a new |split filter that works like the .split method in Python. #517
Added new methods to pycompat: str.endswith, str.rfind,
str.isalnum, str.isalpha, str.isascii, str.isdigit,
str.isnumeric, str.join, str.startswith. #522
Added the missing tests boolean, divisibleby, lower and upper. #592
minijinja-cli now supports YAML aliases and merge keys. #531
2.0.2
Implemented sequence (+ some iterator) and string repeating with the *
operator to match Jinja2 behavior. #519
Added the new minijinja::pycompat module which allows one to register
an unknown method callback that provides most built-in Python methods.
This makes things such as dict.keys work. Also adds a new
--py-compat flag to minijinja-cli that enables it. This improves
the compatibility with Python based templates. #521
Added a new |split filter that works like the .split method in Python. #517
2.0.1
Fixed an issue that caused custom delimiters to not work in the Python
binding. #506
2.0.0
This is a major update to MiniJinja that changes a lot of core internals and
cleans up some APIs. In particular it resolves somes limitations in the engine
in relation to working with dynamic objects, unlocks potentials for future
performance improvments and enhancements.
It's very likely that you will need to do changes to your code when upgrading,
particular when implementing dynamic objects. In short:
StructObject and SeqObject are gone. They have been replaced by improved
APIs directly on Object. Please refer to the updated documentation to see
how these objects behave now. For the most part code should become quite a bit
clearer during the upgrade.
ObjectKind has been replaced by ObjectRepr. Rather than holding a reference
to a StructObject or SeqObject this now is a simple enum that just indicates
how that object serializes, renders and behaves.
Object no longer uses fmt::Display for rendering. Instead the new
Object::render method is used which has a default implementation.
The Object trait has been completely transformed and the new type-erased type
DynObject has been added to work with unknown objects. This trait has an
improved user experience and more flexibility. It's now possible to implement
any non-primitive value type including maps with non string keys which was previously
not possible.
ValueKind is now non exhaustive and got a log of new value types. This resolves
various issues in particular in relationship with iterators. As a result of this
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps minijinja from 1.0.21 to 2.0.3.
Release notes
Sourced from minijinja's releases.
... (truncated)
Changelog
Sourced from minijinja's changelog.
... (truncated)
Commits
3f90a83
2.0.336d5f5b
Add support for merge keys and aliases in YAML (#531)fd6d7ba
Added some missing tests to minijinja (#529)f01084d
Switch to context variables for config37a17cd
Handle \r\nf2267a4
Simplify debug reprca5f4ed
Link example9495cda
Added a syntax highlighting exampleab41e94
Link an example showing how to call async functionsdceed4f
Happy clippyDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show