diff --git a/CHANGELOG.md b/CHANGELOG.md index e1828902..cbce80a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,30 @@ +# Version 0.3.3 (Sep 25, 2017) + +## Core + + * `Config`'s `Debug` implementation now respects formatting options. + * `Cow` now implements `FromParam`. + * `Vec` now implements `Responder`. + * Added a `Binary` media type for `application/octet-stream`. + * Empty fairing collections are no longer logged. + * Emojis are no longer emitted to non-terminals. + * Minimum required `rustc` is `1.22.0-nightly 2017-09-13`. + +## Codegen + + * Improved "missing argument in handler" compile-time error message. + * Codegen was updated for `2017-09-25` nightly. + * Minimum required `rustc` is `1.22.0-nightly 2017-09-25`. + +## Docs + + * Fixed typos in site overview: ~~by~~ be, ~~`Reponder`~~ `Responder`. + * Markdown indenting was adjusted for CommonMark. + +## Infrastructure + + * Shell scripts handle paths with spaces. + # Version 0.3.2 (Aug 15, 2017) ## Core diff --git a/codegen/Cargo.toml b/codegen/Cargo.toml index 5cf4c7c5..6e4f055b 100644 --- a/codegen/Cargo.toml +++ b/codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket_codegen" -version = "0.3.2" +version = "0.3.3" authors = ["Sergio Benitez "] description = "Code generation for the Rocket web framework." documentation = "https://api.rocket.rs/rocket_codegen/" @@ -15,7 +15,7 @@ build = "build.rs" plugin = true [dependencies] -rocket = { version = "0.3.2", path = "../lib/" } +rocket = { version = "0.3.3", path = "../lib/" } log = "0.3" [dev-dependencies] diff --git a/contrib/Cargo.toml b/contrib/Cargo.toml index 2874e5df..2af77367 100644 --- a/contrib/Cargo.toml +++ b/contrib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket_contrib" -version = "0.3.2" +version = "0.3.3" authors = ["Sergio Benitez "] description = "Community contributed libraries for the Rocket web framework." documentation = "https://api.rocket.rs/rocket_contrib/" @@ -21,7 +21,7 @@ handlebars_templates = ["handlebars", "templates"] templates = ["serde", "serde_json", "glob"] [dependencies] -rocket = { version = "0.3.2", path = "../lib/" } +rocket = { version = "0.3.3", path = "../lib/" } log = "^0.3" # UUID dependencies. diff --git a/lib/Cargo.toml b/lib/Cargo.toml index 400efce4..d3ff3041 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket" -version = "0.3.2" +version = "0.3.3" authors = ["Sergio Benitez "] description = """ Web framework for nightly with a focus on ease-of-use, expressibility, and speed. @@ -39,7 +39,7 @@ isatty = "0.1" [dev-dependencies] lazy_static = "0.2" -rocket_codegen = { version = "0.3.2", path = "../codegen" } +rocket_codegen = { version = "0.3.3", path = "../codegen" } [build-dependencies] yansi = "0.3" diff --git a/site/guide/conclusion.md b/site/guide/conclusion.md index a3018f73..2b1d09be 100644 --- a/site/guide/conclusion.md +++ b/site/guide/conclusion.md @@ -22,7 +22,7 @@ guide. The best way to learn Rocket is to _build something_. It should be fun and easy, and there's always someone to help. Alternatively, you can read through the -[Rocket examples](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples) +[Rocket examples](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples) or the [Rocket source -code](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/lib/src). Whatever you +code](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/lib/src). Whatever you decide to do next, we hope you have a blast! diff --git a/site/guide/configuration.md b/site/guide/configuration.md index 7ff40674..740c14b4 100644 --- a/site/guide/configuration.md +++ b/site/guide/configuration.md @@ -202,7 +202,7 @@ dependency in your `Cargo.toml` file: ``` [dependencies] -rocket = { version = "0.3.2", features = ["tls"] } +rocket = { version = "0.3.3", features = ["tls"] } ``` TLS is configured through the `tls` configuration parameter. The value of `tls` diff --git a/site/guide/getting-started.md b/site/guide/getting-started.md index 32685313..844a65ba 100644 --- a/site/guide/getting-started.md +++ b/site/guide/getting-started.md @@ -53,8 +53,8 @@ project by ensuring your `Cargo.toml` contains the following: ``` [dependencies] -rocket = "0.3.2" -rocket_codegen = "0.3.2" +rocket = "0.3.3" +rocket_codegen = "0.3.3" ``` Modify `src/main.rs` so that it contains the code for the Rocket `Hello, world!` diff --git a/site/guide/overview.md b/site/guide/overview.md index fded41ea..757363ee 100644 --- a/site/guide/overview.md +++ b/site/guide/overview.md @@ -179,7 +179,7 @@ we expected. A version of this example's complete crate, ready to `cargo run`, can be found on -[GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/hello_world). +[GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/hello_world). You can find dozens of other complete examples, spanning all of Rocket's features, in the [GitHub examples -directory](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/). +directory](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/). diff --git a/site/guide/pastebin.md b/site/guide/pastebin.md index be919ebc..789a692f 100644 --- a/site/guide/pastebin.md +++ b/site/guide/pastebin.md @@ -43,8 +43,8 @@ Then add the usual Rocket dependencies to the `Cargo.toml` file: ```toml [dependencies] -rocket = "0.3.2" -rocket_codegen = "0.3.2" +rocket = "0.3.3" +rocket_codegen = "0.3.3" ``` And finally, create a skeleton Rocket application to work off of in @@ -405,4 +405,4 @@ through some of them to get a better feel for Rocket. Here are some ideas: cleans up idling old pastes in `upload/`. You can find the full source code for the [completed pastebin tutorial on -GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/pastebin). +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/pastebin). diff --git a/site/guide/quickstart.md b/site/guide/quickstart.md index 87a06fe7..727a14e7 100644 --- a/site/guide/quickstart.md +++ b/site/guide/quickstart.md @@ -15,7 +15,7 @@ For instance, the following set of commands runs the `hello_world` example: ```sh git clone https://github.com/SergioBenitez/Rocket cd Rocket -git checkout v0.3.2 +git checkout v0.3.3 cd examples/hello_world cargo run ``` diff --git a/site/guide/requests.md b/site/guide/requests.md index 2af94053..a0de9d2e 100644 --- a/site/guide/requests.md +++ b/site/guide/requests.md @@ -56,7 +56,7 @@ request methods under certain conditions. If a `POST` request contains a body of field has the name `_method` and a valid HTTP method name as its value (such as `"PUT"`), that field's value is used as the method for the incoming request. This allows Rocket applications to submit non-`POST` forms. The [todo -example](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/todo/static/index.html.tera#L47) +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/todo/static/index.html.tera#L47) makes use of this feature to submit `PUT` and `DELETE` requests from a web form. ## Dynamic Segments @@ -380,7 +380,7 @@ be set and removed using the `Cookies` guard. The [cookies example] on GitHub illustrates further use of the `Cookies` type to get and set cookies, while the [`Cookies`] documentation contains complete usage information. -[cookies example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/cookies +[cookies example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/cookies ### Private Cookies @@ -621,9 +621,9 @@ struct Person { } ``` -The [forms](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/forms) +The [forms](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/forms) and [forms kitchen -sink](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/form_kitchen_sink) +sink](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/form_kitchen_sink) examples on GitHub provide further illustrations. ### JSON @@ -646,7 +646,7 @@ The only condition is that the generic type in `Json` implements the `Deserialize` trait from [Serde](https://github.com/serde-rs/json). See the [JSON example] on GitHub for a complete example. -[JSON example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/json +[JSON example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/json ### Streaming @@ -668,7 +668,7 @@ The route above accepts any `POST` request to the `/upload` path with response if the upload succeeds. If the upload fails, an error response is returned. The handler above is complete. It really is that simple! See the [GitHub example -code](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/raw_upload) +code](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/raw_upload) for the full crate. ## Query Strings @@ -724,7 +724,7 @@ fn new(task: Option) { ... } For a concrete illustration on how to handle query parameters, see [the `query_params` -example](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/query_params). +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/query_params). ## Error Catchers @@ -759,7 +759,7 @@ Unlike request handlers, error handlers can only take 0, 1, or 2 parameters of types [`Request`](https://api.rocket.rs/rocket/struct.Request.html) and/or [`Error`](https://api.rocket.rs/rocket/enum.Error.html). At present, the `Error` type is not particularly useful, and so it is often omitted. The [error catcher -example](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/errors) on +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/errors) on GitHub illustrates their use in full. Rocket has a default catcher for all of the standard HTTP error codes including diff --git a/site/guide/responses.md b/site/guide/responses.md index 8d20a437..b4a519af 100644 --- a/site/guide/responses.md +++ b/site/guide/responses.md @@ -236,7 +236,7 @@ The [JSON example on GitHub] provides further illustration. [`JSON`]: https://api.rocket.rs/rocket_contrib/struct.Json.html [`Serialize`]: https://docs.serde.rs/serde/trait.Serialize.html [`serde`]: https://docs.serde.rs/serde/ -[JSON example on GitHub]: https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/json +[JSON example on GitHub]: https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/json ### Templates @@ -279,7 +279,7 @@ fn main() { The [`Template`] API documentation contains more information about templates, while the [Handlebars Templates example on -GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/handlebars_templates) +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/handlebars_templates) is a fully composed application that makes use of Handlebars templates. [`Template`]: https://api.rocket.rs/rocket_contrib/struct.Template.html diff --git a/site/guide/state.md b/site/guide/state.md index cc47c157..d36905df 100644 --- a/site/guide/state.md +++ b/site/guide/state.md @@ -142,7 +142,7 @@ globally, add `#![allow(unmanaged_state)]` to your crate attributes. You can find a complete example using the `HitCount` structure in the [state example on -GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/state) and +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/state) and learn more about the [`manage` method](https://api.rocket.rs/rocket/struct.Rocket.html#method.manage) and [`State` type](https://api.rocket.rs/rocket/struct.State.html) in the API docs. @@ -177,7 +177,7 @@ use the following dependencies: ``` [dependencies] -rocket = "0.3.2" +rocket = "0.3.3" diesel = { version = "*", features = ["sqlite"] } diesel_codegen = { version = "*", features = ["sqlite"] } r2d2-diesel = "*" diff --git a/site/guide/testing.md b/site/guide/testing.md index b845e9e0..1446152d 100644 --- a/site/guide/testing.md +++ b/site/guide/testing.md @@ -179,7 +179,7 @@ mod test { The tests can be run with `cargo test`. You can find the full source code to [this example on -GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.2/examples/testing). +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.3/examples/testing). ## Codegen Debug diff --git a/site/index.toml b/site/index.toml index 993f3a53..62e3de5c 100644 --- a/site/index.toml +++ b/site/index.toml @@ -4,8 +4,8 @@ [release] url = "https://crates.io/crates/rocket" -version = "0.3.2" -date = "Aug 15, 2017" +version = "0.3.3" +date = "Sep 25, 2017" [[top_features]] title = "Type Safe"