Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2023-07-31 | parser: define a struct for Cond | Dirkjan Ochtman | 2 | -6/+6 | |
2023-07-31 | Extract askama_parser crate | Dirkjan Ochtman | 10 | -2059/+7 | |
2023-07-31 | derive: move whitespace conversion into config module | Dirkjan Ochtman | 2 | -12/+11 | |
2023-07-31 | derive: move Parsed into parser module | Dirkjan Ochtman | 2 | -36/+35 | |
2023-07-31 | derive: move generator-specific methods out of Expr | Dirkjan Ochtman | 2 | -73/+71 | |
2023-07-31 | derive: define separate ParseError type | Dirkjan Ochtman | 4 | -9/+32 | |
2023-07-31 | derive: move Syntax into parser module | Dirkjan Ochtman | 5 | -40/+38 | |
2023-07-24 | Fix Rust macro invocations not accepting a path (#837) | Matthew Taylor | 3 | -17/+72 | |
2023-06-28 | Cache include AST to reduce parsing overhead | Dirkjan Ochtman | 1 | -23/+16 | |
2023-06-28 | Inline child() method to avoid borrowing all fields | Dirkjan Ochtman | 1 | -27/+23 | |
2023-06-28 | Avoid reparsing included templates if possible | Dirkjan Ochtman | 1 | -4/+23 | |
2023-06-28 | Parse templates once | Dirkjan Ochtman | 3 | -18/+45 | |
2023-06-12 | Allow macros to be defined and called without arguments | mataha | 1 | -2/+5 | |
This commit introduces a shorthand for defining and calling macros when using them as a reusable substitute for variables assigned complex values (e.g. string literals with or without newline escapes). The use-case is formatting - from my experience it's easier to visually parse a `macro` `endmacro` block than a multiline variable assignment. Signed-off-by: mataha <mataha@users.noreply.github.com> | |||||
2023-05-31 | Allow delimiters with arbitrary length | René Kijewski | 1 | -16/+94 | |
2023-05-19 | Update to rocket 0.5-rc.3 | Vypo Mouse | 1 | -6/+15 | |
2023-03-21 | Extract literal from group expressions in attributes | Dirkjan Ochtman | 1 | -0/+6 | |
2023-03-21 | Version bump askama_derive to 0.12.1 | Dirkjan Ochtman | 1 | -1/+1 | |
2023-03-20 | Upgrade to syn 2 | Dirkjan Ochtman | 2 | -28/+27 | |
2023-03-13 | Add tests for whitespace argument in template derive proc-macro | Guillaume Gomez | 1 | -0/+30 | |
2023-03-13 | Add whitespace argument in template derive proc-macro | Guillaume Gomez | 2 | -17/+39 | |
2023-03-09 | Fix handling of trailing whitespace characters | Guillaume Gomez | 2 | -4/+19 | |
2023-03-06 | Propogate size_hint from sub-blocks (#788) | Andrew Dona-Couch -- GitHub drop ICE | 1 | -4/+4 | |
Closes #786 | |||||
2023-03-03 | exchange hyper features From<Template> for hyper::Body with TryFrom | Rudi Floren | 1 | -7/+5 | |
The previous implementation hid the error returned by render, which made it impossible for callers to react to rendering errors. While having a simple way to call into would be nice, there is not way to have both implementations without adding any manual specialization. Thus, the From impl is replaced by the TryFrom impl. | |||||
2023-02-24 | Fix typos | René Kijewski | 2 | -13/+13 | |
2023-02-21 | Revert "derive: Make Config `'static`" | René Kijewski | 6 | -69/+74 | |
2023-02-21 | Replace `toml_edit` with `basic-toml` | René Kijewski | 2 | -3/+3 | |
2023-02-13 | Add impl From<{Template}> for hyper::Body derive | Rudi Floren | 1 | -1/+23 | |
with-hyper now derives an impl allowing Templates to be passed to functions with trait bounds for Into<hyper::Body>. | |||||
2023-01-30 | derive: refactor parser | René Kijewski | 5 | -1940/+1999 | |
`parser.rs` was a single file containing almost 2000 lines. This PR split the file into multiple, smaller files. `Expr`, `Node`, and `Target` each get an own file. Each struct gets a `parse()` method that return `Result<Self>`, and every other detail is private to the file. This PR should make this essential part of Askama more easy to understand, and make future modifications easier. | |||||
2023-01-30 | Extends expects a string and nothing else | René Kijewski | 3 | -5/+5 | |
2023-01-30 | Use `toml_edit` instead of `toml` | René Kijewski | 2 | -3/+4 | |
Since version 0.6, `toml` is a wrapper around `toml_edit`, and the more basic library already meets our needs. | |||||
2023-01-30 | derive: Make Config `'static` | René Kijewski | 4 | -71/+67 | |
The configuration is made `'static`, because `toml` and `toml_edit` both needs to implement serde's `DeserializeOwned` by now. We allocate the strings once per template, so it is very unlikely that this change will have any measurable impact, neither in compile time nor RAM usage. | |||||
2023-01-30 | Apply clippy suggestions for 1.67 (#769) | Dirkjan Ochtman | 5 | -43/+43 | |
2022-11-09 | Fail to parse if keyword is not longest ident | René Kijewski | 1 | -31/+56 | |
This PR makes e.g. `{% leta = b %}` a parsing error. To the reader it would appear that `leta` should be a meaningful expression in Askama, which it is not. Before this PR, `leta` was tokenized as `let` + `a`. This PR makes the parser try to find the longest identifier at a parsing positions and only compare the outcome against the expected keyword. This is potentially a breaking change, because code that should always have been invalid will now fail to compile, when it was accepted before. | |||||
2022-11-07 | chore: remove allow(clippy::disallowed_names) | Dirkjan Ochtman | 1 | -1/+0 | |
2022-11-07 | chore: apply clippy suggestions for 1.65 | Dirkjan Ochtman | 1 | -1/+1 | |
2022-09-26 | Remove `_ext` from `askama_hyper`, too | René Kijewski | 1 | -2/+1 | |
That part was missing from #632, because #632 came before #706, and I forgot to update the older PR. | |||||
2022-09-23 | Apply clippy suggestions from Rust 1.64 (#725) | Dirkjan Ochtman | 1 | -1/+1 | |
2022-09-19 | Remove ext argument in integrations | René Kijewski | 1 | -16/+7 | |
2022-09-19 | Add Expr::is_cachable() | René Kijewski | 2 | -4/+35 | |
2022-09-19 | Skip caching calls (Resolves #667) | vallentin | 1 | -3/+7 | |
2022-07-25 | Remove support for deprecated `_parent` field | René Kijewski | 2 | -48/+1 | |
The support for the magic `_parent` field is deprecated since v0.8.0 or issue #180. It's bothersome to keep this feature alive, when no-one should be using it for 3 years. | |||||
2022-07-25 | Implement basic hyper integration | René Kijewski | 2 | -0/+28 | |
The integration is based on askama_gotham. There is no specific trait to convert an arbitrary T to `hyper::Response`, so I used `From<Template> for hyper::Response`. | |||||
2022-06-20 | Feature-gate test_whitespace_parsing() | René Kijewski | 1 | -0/+1 | |
2022-06-16 | Update to Rocket 0.5 | René Kijewski | 1 | -1/+1 | |
Though Rocket 0.5 still only a release candidate, Rocket 0.4 severely outdated, and depends on a bunch of crates with active security advisories. Rocket 0.5 updates its dependencies to fixes versions. Also Rocket 0.4 needs a nightly Rust, which caused multiple problems. | |||||
2022-06-15 | Replace `&Option<Box<T>>` with `Option<&T>` (#696) | René Kijewski | 2 | -5/+7 | |
No need to work on references to references. | |||||
2022-06-15 | Remove BuildHasher from Heritage, too | René Kijewski | 1 | -2/+2 | |
2022-06-15 | Remove hash builder parameter from generator | René Kijewski | 1 | -6/+7 | |
The generator cannot be accessed outside of crate, so it's not possible to override the default hasher. | |||||
2022-06-15 | Replace .filter_map().next() with .filter_map() | René Kijewski | 1 | -3/+2 | |
2022-06-15 | Copy can be derived | René Kijewski | 1 | -6/+2 | |
2022-05-24 | Move code generation into askama_derive | René Kijewski | 12 | -16/+5061 | |