Commit graph

448 commits

Author SHA1 Message Date
Chris Wong
4b25728efe Add at_span to Let 2018-06-16 20:59:41 +12:00
Chris Wong
0ceb271a50 Add outer_span property to Splice 2018-06-16 20:55:42 +12:00
Chris Wong
bfa15a0081 Rename Block.span to Block.outer_span 2018-06-16 20:49:46 +12:00
Coleman McFarland
8ce98f689f Build features separately.
Compiling rocket and actix-web together presents problems, since ring - a
native dependency - cannot have more than one version linked.
2018-06-15 20:23:21 +12:00
Coleman McFarland
fd59814f8b impl Responder for actix-web framework
It looks similar to the Rocket implementation, and functionally is also similar:
a syncronous response for PreEscaped<String>

Refs 
2018-06-15 20:23:21 +12:00
Chris Wong
9d56ba0bcb Keep spans for semicolons; change element body to a block 2018-06-09 20:51:34 +12:00
Chris Wong
75763dd8a6 Travis: add maud_extras to Clippy invocation 2018-06-09 20:41:36 +12:00
Chris Wong
9763541ca7 Keep the span of the leading @ symbol 2018-06-09 17:59:24 +12:00
Chris Wong
254ac54103 Merge If and Special variants 2018-05-29 19:18:30 +12:00
Chris Wong
ac934bae4e Update to rustc 1.28.0-nightly (5bf68db6e 2018-05-28) 2018-05-29 19:15:40 +12:00
Chris Wong
67b6fb05e9 Release 0.17.5 2018-05-26 11:57:51 +12:00
Chris Wong
2455de589c Update to rustc 1.27.0-nightly (2f2a11dfc 2018-05-16) 2018-05-17 20:55:29 +12:00
Chris Wong
9d90e94c87
Change macro internals to use an explicit AST () 2018-05-17 20:38:44 +12:00
Chris Wong
7c63fc138a Release 0.17.4 2018-05-02 20:49:17 +12:00
Erin
05fb7364c6 maud_lints: replace usage of InternedString by LocalInternedString
refs: https://github.com/rust-lang/rust/pull/49894
2018-05-02 19:57:28 +12:00
Chris Stadler
e606e64ef2 Enable proc_macro_non_items feature flag 2018-04-28 12:59:24 +12:00
Chris Wong
41f7744fe1 Release 0.17.3 2018-04-21 17:20:42 +12:00
Chris Wong
798ed2279d Travis: work around Clippy bug 2018-04-16 20:49:12 +12:00
Chris Wong
dd9d892b8d Fix up some minor issues 2018-04-16 20:29:32 +12:00
Coleman McFarland
f75da83a60 Pre-allocate sufficient size for our output String 2018-04-16 01:06:19 -07:00
Coleman McFarland
2d6558c769 Use FromIterator<_> for TokenStream
Also remove conservative_impl_trait feature flag, as this is now a
stable feature.

Refs 
2018-04-16 00:54:32 -07:00
Coleman McFarland
0f453a5568 Refactor to keep up with changes to proc_macro
Instead of a `kind` field containting a `TokenNode` variant, a
TokenTree is now an enum with variants of different types (Literal, Op,
Term, etc). Note that a TokenTree could be a sequence of TokenTrees if it is a
Group variant.

Other notes:

I'm unsure about the set_span call in Builder::emit_if, but I did not want to
throw away the passed in Span.

Parsing relies on destructuring references to the values associated with
TokenTree enum variants

It doesn't seem as easy to compose/chain TokenStreams as it is to
collect a Vec<TokenTree> into a TokenStream. There is probably some
iterator API I could use instead. See `match_arms` and build.rs

Refs 
2018-04-12 14:19:26 -07:00
Abdullah ibn Nadjo
3d22f90ad7 Add askama bench
Also updates Cargo.lock
2017-11-29 22:13:05 +13:00
Chris Wong
62298aec55 Release 0.17.2 2017-11-19 20:12:38 +13:00
Chris Wong
cc833dd624 Update to rustc 1.23.0-nightly (6160040d8 2017-11-18) 2017-11-19 19:55:11 +13:00
Chris Wong
fd43d6c006
Tweak change log entry for 2017-11-12 23:50:29 +13:00
Ernestas Poskus
250c736b11 Bump iron to 0.6.0 version 2017-11-12 23:37:41 +13:00
Chris Wong
c95efdf8ac Remove unnecessary AsciiExt import 2017-11-08 20:55:25 +13:00
Sander Maijers
ba633d8e62 Add conventional docs.rs badge
I'll leave the decision to keep or remove the existing ‘API reference’ link to you.
2017-11-08 20:54:26 +13:00
Chris Wong
53c49c71cb Fix Clippy warning 2017-11-02 19:52:40 +13:00
Chris Wong
984254f870 Update to rustc 1.23.0-nightly (8b22e70b2 2017-10-31) 2017-11-01 20:55:47 +13:00
Chris Wong
d1a44be51d Silence "unknown lint" warning when running not-Clippy 2017-10-07 16:26:45 +13:00
Chris Wong
f6c9e25722 Enable lints on tests and extras; fix maud_doctype lint not firing 2017-10-07 14:45:06 +13:00
Chris Wong
366573c072 Exclude benchmarks from workspace 2017-10-07 14:20:53 +13:00
Chris Wong
9674865846 Combine .push_str() calls across blocks
This also disallows `@let` in non-block contexts, e.g.

    img src=@let foo = bar; ;

This yields a 20 - 50 ns speedup in benchmarks, as well as reducing code
size by a slight amount.
2017-10-07 14:17:38 +13:00
Sander Maijers
2cd6919798 Enforce nightly toolchain ()
This file makes `rustup` select the nightly toolchain for this project, as it
requires.
2017-10-07 11:31:37 +13:00
Eshin Kunishima
3a3e55429a Update dependencies for benchmarks ()
* Update dependencies for benchmarks

Template engines
- maud 0.17.1 (local)
- handlebars 0.29.1
- horrorshow 0.6.2
- liquid 0.10.1
- tera 0.10.10

* Update benchmark dependencies

* Remove unused feature

* Revert indentation

* Fix unused Result
2017-09-30 17:16:21 +13:00
Lukas Kalbertodt
97a4bdf30e Add Clone and Copy impl to PreEscaped via derive () 2017-08-26 12:14:13 +12:00
Ernestas Poskus
4d46029745 Add meta robots helper () 2017-08-26 12:13:20 +12:00
Chris Wong
b4faef8176 Update to rustc 1.21.0-nightly (f25c2283b 2017-08-15)
Closes 
2017-08-16 20:36:31 +12:00
Chris Wong
594af15242 Remove unnecessary extern crate 2017-08-12 19:44:43 +12:00
Chris Wong
5cd51481c9 Rename Renderer to Builder 2017-08-12 17:41:54 +12:00
Chris Wong
a902c97091 Allow braces in toggled classes 2017-08-12 16:50:54 +12:00
Chris Wong
9487dbc3a7 Move some code around 2017-08-12 16:21:13 +12:00
Chris Wong
080b461f1b Release 0.17.1 2017-08-11 21:15:20 +12:00
Chris Wong
f046b64409 Avoid name collisions when Render trait is already in scope
Closes 
2017-08-11 20:00:10 +12:00
Chris Wong
9fc96ea5c3 Fix docs to use semicolons instead of slashes 2017-08-05 16:42:15 +12:00
Chris Wong
752c4805e4 Release 0.17.0 2017-08-04 22:22:38 +12:00
Chris Wong
1785071f1b Allow terminating void elements with semicolons (;)
When Rust and HTML syntax differ, Maud tends to side with Rust syntax.
This can be seen with string literals, for example, where we use
backslash escapes instead of HTML entities. Using `;` to terminate void
elements is consistent with this idea.

Moreover, this reduces confusion around the generated code. Maud does
not insert an extra slash into the HTML output (as per the spec) but
the syntax may imply otherwise.

This confusion may have been the cause of a [bug I found in the
wild][1], where the code omitted the trailing slash on an `input`
element. I suspect that this is because the author thought that a
trailing slash in the Maud template would lead to one in the HTML
output. Switching to semicolons would prevent this misconception.

[1]: https://github.com/anowell/quasar/pull/3
2017-08-04 20:58:02 +12:00
Chris Wong
21d19adb13 Add some more comments 2017-07-31 22:25:00 +12:00