diff --git a/CHANGELOG.md b/CHANGELOG.md index bf5e27b8..76f15d89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +# Version 0.3.15 (Jul 16, 2018) + +## Codegen + + * The `#[catch]` decorator and `catchers!` macro were introduced, replacing + `#[error]` and `errors!`. + * The `#[error]` decorator and `errors!` macro were deprecated. + * Codegen was updated for `2018-07-15` nightly. + * Minimum required `rustc` is `1.29.0-nightly 2018-07-15`. + # Version 0.3.14 (Jun 22, 2018) ## Codegen diff --git a/codegen/Cargo.toml b/codegen/Cargo.toml index c80755e1..30598e90 100644 --- a/codegen/Cargo.toml +++ b/codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket_codegen" -version = "0.3.14" +version = "0.3.15" 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.14", path = "../lib/" } +rocket = { version = "0.3.15", path = "../lib/" } log = "0.3" [dev-dependencies] diff --git a/contrib/Cargo.toml b/contrib/Cargo.toml index 8d64b71b..b55c224f 100644 --- a/contrib/Cargo.toml +++ b/contrib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket_contrib" -version = "0.3.14" +version = "0.3.15" 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.14", path = "../lib/" } +rocket = { version = "0.3.15", path = "../lib/" } log = "^0.3" # UUID dependencies. diff --git a/lib/Cargo.toml b/lib/Cargo.toml index ce48354a..bb4b6cc9 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rocket" -version = "0.3.14" +version = "0.3.15" 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.14", path = "../codegen" } +rocket_codegen = { version = "0.3.15", path = "../codegen" } [build-dependencies] yansi = "0.4" diff --git a/site/guide/conclusion.md b/site/guide/conclusion.md index 15c4077a..23c02b52 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.14/examples) +[Rocket examples](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples) or the [Rocket source -code](https://github.com/SergioBenitez/Rocket/tree/v0.3.14/lib/src). Whatever you +code](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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 e0623b23..3fe5e756 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.14", features = ["tls"] } +rocket = { version = "0.3.15", 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 5538a1a2..3a5f6f98 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.14" -rocket_codegen = "0.3.14" +rocket = "0.3.15" +rocket_codegen = "0.3.15" ``` 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 819ca334..72e402fa 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.14/examples/hello_world). +[GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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.14/examples/). +directory](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/). diff --git a/site/guide/pastebin.md b/site/guide/pastebin.md index c5c82433..34ccbd3a 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.14" -rocket_codegen = "0.3.14" +rocket = "0.3.15" +rocket_codegen = "0.3.15" ``` 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.14/examples/pastebin). +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/pastebin). diff --git a/site/guide/quickstart.md b/site/guide/quickstart.md index a31b0bd9..3e9dc0ad 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.14 +git checkout v0.3.15 cd examples/hello_world cargo run ``` diff --git a/site/guide/requests.md b/site/guide/requests.md index de6857d2..9846f5de 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.14/examples/todo/static/index.html.tera#L47) +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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.14/examples/cookies +[cookies example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/cookies ### Private Cookies @@ -621,8 +621,8 @@ struct Person { } ``` -The [forms validation](https://github.com/SergioBenitez/Rocket/tree/v0.3.14/examples/form_validation) -and [forms kitchen sink](https://github.com/SergioBenitez/Rocket/tree/v0.3.14/examples/form_kitchen_sink) +The [forms validation](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/form_validation) +and [forms kitchen sink](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/form_kitchen_sink) examples on GitHub provide further illustrations. ### JSON @@ -645,7 +645,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.14/examples/json +[JSON example]: https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/json ### Streaming @@ -667,7 +667,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.14/examples/raw_upload) +code](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/raw_upload) for the full crate. ## Query Strings @@ -723,7 +723,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.14/examples/query_params). +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/query_params). ## Error Catchers @@ -758,7 +758,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.14/examples/errors) on +example](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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 360d9bf9..7ed60642 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.14/examples/json +[JSON example on GitHub]: https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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.14/examples/handlebars_templates) +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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 58414fce..2f0cb5df 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.14/examples/state) and +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/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,8 +177,8 @@ use the following dependencies: ``` [dependencies] -rocket = "0.3.14" -rocket_codegen = "0.3.14" +rocket = "0.3.15" +rocket_codegen = "0.3.15" diesel = { version = "<= 1.2", features = ["sqlite", "r2d2"] } ``` diff --git a/site/guide/testing.md b/site/guide/testing.md index bc536829..a5d6cf71 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.14/examples/testing). +GitHub](https://github.com/SergioBenitez/Rocket/tree/v0.3.15/examples/testing). ## Codegen Debug diff --git a/site/index.toml b/site/index.toml index d544f491..43e3486e 100644 --- a/site/index.toml +++ b/site/index.toml @@ -4,8 +4,8 @@ [release] url = "https://crates.io/crates/rocket" -version = "0.3.14" -date = "Jun 22, 2018" +version = "0.3.15" +date = "Jul 16, 2018" [[top_features]] title = "Type Safe"