Commit graph

316 commits

Author SHA1 Message Date
Chris Wong
e05af0a326 Add maud_extras crate
Closes 
2016-11-22 22:17:15 +13:00
Chris Wong
b76bda0e50 Add a "DOCTYPE" constant 2016-11-22 21:58:06 +13:00
Chris Wong
585ed3851b Implement toggled classes
Closes 
2016-11-19 15:59:33 +13:00
Chris Wong
8f77990e8c Remove unnecessary #[feature(conservative_impl_trait)] 2016-11-19 15:59:06 +13:00
Chris Wong
68feeeff1b Change empty attribute syntax to use [square brackets]
Closes 
See 
2016-11-17 20:39:02 +13:00
Chris Wong
ac37a5be46 Reword stability spiel in readme 2016-11-17 20:37:17 +13:00
Chris Wong
4b81039d2d Flatten substitutions from macro_rules expansion
This fixes a compile error with the test `misc::issue_23`.
2016-11-16 18:03:23 +13:00
Chris Wong
39602a075c Implement let expressions
Closes 
2016-11-12 14:46:49 +13:00
Chris Wong
a3908faf24 Travis: run Clippy :) 2016-11-06 12:49:44 +13:00
Chris Wong
202cc8decf Fix Clippy warnings 2016-11-06 12:40:57 +13:00
Chris Wong
872a9f5cbc Update benchmark dependencies 2016-11-06 12:40:26 +13:00
Chris Wong
f5219a3757 Make Maud benchmark more idiomatic 2016-11-04 12:13:17 +13:00
Chris Wong
c614478bd5 Release 0.13.0 2016-11-03 23:17:34 +13:00
Chris Wong
ac259ebe47 Don't escape single quotes 2016-11-03 23:13:20 +13:00
Chris Wong
181bb0583e Update Rust 2016-11-03 22:47:54 +13:00
Chris Wong
1bdf6ea06a Add Tera benchmark 2016-10-22 21:10:07 +13:00
Chris Wong
927a77f0f6 Add contributors' guide 2016-10-22 20:36:48 +13:00
Chris Wong
90e0f1ccbd Restrict PreEscaped to T: AsRef<str>
Closes 
2016-10-22 19:57:48 +13:00
Chris Wong
9ff5ff4f2c Merge pull request from utkarshkukreti/while
Add support for `@while` and `@while let`.
2016-10-20 12:40:56 +13:00
Utkarsh Kukreti
553a6bc037 Add support for @while and @while let.
Fixes .
2016-10-19 21:46:37 +05:30
Chris Wong
b9881e682c Merge pull request from TheNeikos/add_complicated_maud
Add complicated Maud benchmark
2016-10-18 22:27:14 +13:00
Marcel Müller
be43b067ba Use u32 instead of usize 2016-10-18 11:20:08 +02:00
Marcel Müller
2cbd848fc6
Add complicated Maud benchmark 2016-10-18 09:23:20 +02:00
Chris Wong
7f7deb7af5 Remove #![feature(question_mark)]
Apparently that feature is stable now
2016-10-17 21:41:33 +13:00
Chris Wong
7c774ec6ec Add change log entries down to version 0.8.0 2016-10-13 19:28:44 +13:00
Chris Wong
f57aa4ace0 Remove #[inline(never)] annotations
On further testing, I find that these annotations no longer have an
effect on performance. Whether that's due to wrong methodology or
changes in rustc codegen I'm not sure.
2016-10-10 18:59:45 +13:00
Chris Wong
d976bdfc11 Update change log for 0.12.0 2016-10-10 09:49:05 +13:00
Chris Wong
c70aa3c7f0 Release 0.12.0 2016-10-09 20:18:34 +13:00
Chris Wong
7d6e2e7c22 Move change log into the right place 2016-10-09 19:05:58 +13:00
Chris Wong
3120eb719d Fix test breakage (again)
I should try testing changes before pushing them lol
2016-10-08 22:32:20 +13:00
Chris Wong
3c9f318c98 Add a changelog 2016-10-08 22:19:35 +13:00
Chris Wong
9fa87721e6 Rewrite Render and RenderOnce traits
... to make them more user-friendly.

Closes 
2016-10-08 21:50:59 +13:00
Chris Wong
ba2233f783 Don't put let _ = in front of every statement
This was useful when the `Render*` traits returned `std::fmt::Result`,
but now they're just cruft.
2016-10-06 12:29:07 +13:00
Chris Wong
f48966b5bb Fix test breakage oh no 2016-10-05 20:51:16 +13:00
Chris Wong
4284875869 Change escaper to use bytes instead of chars
This removes the overhead from UTF-8 encoding, and makes us faster than
Horrorshow again :)
2016-10-05 20:43:24 +13:00
Chris Wong
8ed3608a7c Benchmarks: Use Horrorshow 0.5.8 2016-10-05 20:43:01 +13:00
Chris Wong
e98d340825 Pre-allocate a buffer of (roughly) the right size
Closes 
2016-10-02 17:48:01 +13:00
Chris Wong
30e1071c05 Add preliminary benchmarks 2016-10-02 17:24:36 +13:00
Chris Wong
fedaded75a Release 0.11.1 2016-09-25 12:50:33 +13:00
Chris Wong
a4c43dbd3a Documentation nit: "input data" -> "value" 2016-09-25 12:30:12 +13:00
Chris Wong
0c437ca9d3 Do not implement traits on type aliases
Due to , trait `impl`s on type aliases are not shown
in automatically generated documentation. Until this bug is fixed, it is
better not to write code this way.
2016-09-25 12:25:21 +13:00
Chris Wong
84cb8cfe37 Flesh out documentation for runtime library 2016-09-24 19:11:59 +12:00
Chris Wong
228717818a Remove mention of "iron-maud" from doc upload script
We don't talk about him any more.
2016-09-24 12:20:47 +12:00
Chris Wong
d34c558f3b Release 0.11.0 2016-09-24 12:17:35 +12:00
Chris Wong
c832e2edb4 Specialize Render for strings 2016-09-23 19:45:41 +12:00
Chris Wong
c05bb02d97 Remove call expressions 2016-09-23 19:36:42 +12:00
Chris Wong
f12efe4299 Rewrite everything to use Strings instead of writers
After fiddling around with zero-allocation solutions, I concluded that
all non-allocating approaches are too annoying to work with in realistic
code. Using closures leads to yak-shaving with lifetimes; and because
Iron needs to take ownership of the response body we often end up
cloning the input data anyway.

Removing this constraint has let me simplify the entire system, removing
a net 300 lines from the library. The `html!` macro no longer takes a
writer, and instead returns a `PreEscaped<String>`. This means that the
result of an `html!` can be spliced directly into another `html!`,
removing the need for the `impl Template` rigmarole.

To rub it in, benchmarks show the new code is in fact *faster* than it
was before. How lovely.
2016-09-23 19:22:22 +12:00
Chris Wong
196b811066 Graargh fix typo in URL 2016-09-21 00:01:59 +12:00
Chris Wong
d7071d1fe9 Release 0.10.0 2016-09-20 23:58:07 +12:00
Chris Wong
0379073308 Add iron-maud to Travis 2016-09-20 23:37:10 +12:00