Sergio Benitez
b47d1b8f0f
Rework docs for stable and async support.
2020-07-21 16:15:13 -07:00
Sergio Benitez
9a2149b43d
Test guide and README using stable 'doc_comment'.
2020-07-21 15:31:44 -07:00
Sergio Benitez
949b01cb9d
Remove 'redis' integration from 'contrib'.
...
The latest version of 'redis' is async and implements its own connection
retrieval.
2020-07-21 15:11:07 -07:00
Jeb Rosen
9d4fea2937
Remove 'mongodb' integration from 'contrib'.
...
The latest version of 'mongodb' is async and implements its own internal
connection pooling.
2020-07-21 10:54:07 -07:00
Jeb Rosen
3a40d1071c
Remove 'rusted_cypher' integration from 'contrib'.
2020-07-21 10:54:07 -07:00
Jeb Rosen
62113abcd2
Upgrade 'redis' to 0.15 in 'contrib'.
2020-07-21 10:54:07 -07:00
Jeb Rosen
fbe6c1081f
Upgrade 'rusqlite' to 0.23 in 'contrib'.
2020-07-21 10:54:07 -07:00
Jeb Rosen
2879f44148
Upgrade 'mysql' to 18.0 in 'contrib'.
2020-07-21 10:54:07 -07:00
Sergio Benitez
0909ba2ef6
Only enable testing features on 'cfg(test)'.
2020-07-16 05:49:38 -07:00
Sergio Benitez
62355b424f
Remove use of stable 'proc_macro_hygiene' feature.
2020-07-11 10:48:08 -07:00
Jeb Rosen
114a733d70
Use 'tokio::fs::File' in the 'pastebin' example.
2020-07-11 10:07:37 -07:00
Jeb Rosen
2b3d8110f1
Use '#[rocket::launch]' in guide examples.
2020-07-11 10:07:37 -07:00
Jeb Rosen
2c82b3e1d5
Update and fix guide tests.
2020-07-11 10:07:37 -07:00
Sergio Benitez
832408ea9b
Add example requiring async testing.
2020-07-11 09:24:30 -07:00
Jeb Rosen
96bafd8ac5
Mention async testing in the testing guide.
2020-07-11 09:24:30 -07:00
Jeb Rosen
06975bfaea
Use the blocking testing API everywhere.
...
Co-authored-by: Sergio Benitez <sb@sergio.bz>
2020-07-11 09:24:30 -07:00
Sergio Benitez
03127f4dae
Add blocking variant of 'local'.
...
This commit adds the 'local::blocking' module and moves the existing
asynchronous testing to 'local::asynchronous'. It also includes several
changes to improve the local API, bringing it to parity (and beyond)
with master. These changes are:
* 'LocalRequest' implements 'Clone'.
* 'LocalResponse' doesn't implement 'DerefMut<Target=Response>'.
Instead, direct methods on the type, such as 'into_string()', can
be used to read the 'Response'.
* 'Response::body()' returns an '&ResponseBody' as opposed to '&mut
ResponseBody', which is returned by a new 'Response::body_mut()'.
* '&ResponseBody' implements 'known_size()` to retrieve a body's size,
if it is known.
Co-authored-by: Jeb Rosen <jeb@jebrosen.com>
2020-07-11 09:24:30 -07:00
Sergio Benitez
12308b403f
Add '#[rocket::launch]' attribute.
...
The attribute is applied everywhere it can be across the codebase and is
the newly preferred method for launching an application. This commit
also makes '#[rocket::main]` stricter by warning when it is applied to
functions other than 'main'.
2020-07-11 09:24:29 -07:00
Jeb Rosen
bc1b90cbdb
Add '#[rocket::main]' attribute and make 'launch()' an 'async fn'.
...
'#[rocket::main]' works like '#[rocket::async_test]', but it uses
tokio's multithreaded scheduler.
2020-07-11 09:24:29 -07:00
Jeb Rosen
e72058de81
Add 'config()' and 'state()' functions directly to 'Rocket' for convenience.
2020-07-11 09:24:29 -07:00
Jeb Rosen
b0238e5110
Make 'Fairing::on_attach()' async.
...
This transitively requires that 'Rocket::inspect()', 'Client::new()',
and 'Client::untracked()' also become async.
2020-07-11 09:24:29 -07:00
Jeb Rosen
dea940c7a8
Defer execution of operations on 'Rocket' until their effects will be
...
observed.
This is a prerequisite for async on_attach fairings. 'Rocket' is now a
builder wrapper around the 'Manifest' type, with operations being
applied when needed by 'launch()', 'Client::new()', or 'inspect()'.
'inspect()' returns an '&Manifest', which now provides the methods that
could be called on an '&Rocket'.
2020-07-11 09:24:29 -07:00
Sergio Benitez
431b963774
Use 'async_trait' for 'FromRequest'.
...
Removes 'FromRequestAsync'.
2020-07-11 09:24:29 -07:00
Jeb Rosen
70db7fb2ea
Add some general documentation on async as it pertains to Rocket.
2020-07-11 09:24:29 -07:00
Jeb Rosen
f2487ccec5
Update the guide for async-related API changes.
2020-07-11 09:24:29 -07:00
Jeb Rosen
5d439bafc0
Convert core to async and add support for async routes.
...
Minimum rustc bump required for rust-lang/rust#61775
2020-07-11 09:24:28 -07:00
arctic-alpaca
1e623c8aaa
Fix invalid JSON data in a guide example.
2020-06-28 10:35:15 -07:00
Sergio Benitez
336353ced6
Foreshadow routing and catcher options in overview.
...
Resolves #1206 .
Co-authored-by: Jeb Rosen <jeb@jebrosen.com>
2020-06-11 20:42:32 -07:00
benjaminbecker
1010f6a2a8
Fix typo in configuration guide: 'AssertsDir' -> 'AssetsDir'.
2020-04-21 18:47:22 -07:00
Sergio Benitez
53353df633
Fix more broken links.
2020-03-09 02:03:38 -07:00
Sergio Benitez
021e2fdb0e
Update references to chat channels.
2020-02-27 14:39:36 -08:00
Sergio Benitez
39b1f2f8d0
Provide more details for opaque examples in guide.
...
Closes #1100 .
2020-02-15 19:47:50 -08:00
Sergio Benitez
95c981de79
Test all guide code examples.
...
Every code example is now fully runnable and testable. As a result, all
examples are now tested and include imports. Relevant imports are shown
by default. Code examples can be expanded to show all imports.
Fixes #432 .
2020-02-15 04:02:19 -08:00
Sergio Benitez
f35e3c4aca
Set cookies even on error responses.
...
Fixes #1213 .
2020-01-23 21:10:04 -08:00
Jeb Rosen
31712018bb
Update versions and links for updated dependencies.
2020-01-20 14:51:00 -08:00
Michael Howell
121210c55c
Add support for base16-encoded (a.k.a. hex-encoded) secret keys.
2019-11-29 12:06:55 -08:00
Jeb Rosen
9c5d0912ec
Explain how to resolve the One-At-A-Time Cookies problem when using FlashMessage.
...
Fixes #1090 .
2019-11-16 13:15:47 -08:00
Jeb Rosen
d98e938e1a
Point out that the database attribute must be imported.
...
Fixes #1074 .
2019-11-16 13:15:47 -08:00
Jeb Rosen
14ee05b9a1
Change 'cookies' to 'mut cookies' in the guide, as required to call 'get_private'.
...
Fixes #1095 .
2019-11-16 13:15:44 -08:00
Jeb Rosen
3e4f8453ce
Remove use of the 'decl_macro' feature.
...
Also removes one internal use in the 'typed-uris' codegen test.
2019-07-19 11:39:56 -07:00
Jeb Rosen
fc78eaf836
Document contrib database library versions.
...
This commit also adds a note to the contrib database documentation
describing how to enable features in upstream database crates.
2019-06-26 09:11:27 -04:00
Sergio Benitez
2495894c37
Fix route path rendering in pastebin guide.
...
Resolves #1027 .
2019-06-11 14:23:38 -07:00
Jeb Rosen
273c7a607d
Update 'mysql' to 16.0, 'redis' to 0.10.
2019-05-16 13:50:54 -07:00
Leonora Tindall
c6c0b3a6e1
Update 'rusqlite' dependency to 0.16.
2019-05-16 13:50:54 -07:00
Sergio Benitez
1caf87eb21
Move to 0.5.0-dev on master.
2019-05-13 16:18:48 -07:00
Sergio Benitez
9d93d55538
Document mounting multiple routes in guide.
...
Also mention that a route's rank is displayed in brackets.
Closes #983 .
Closes #981 .
2019-05-10 19:39:38 -07:00
Jeb Rosen
7405033a66
Update 'Rocket source code' link in the guide.
2019-05-10 18:30:17 -07:00
Jeb Rosen
0666e425fe
Add a few missing pieces of 'compression' documentation.
2019-05-04 08:38:11 -07:00
Yazid
7833ee1b76
Correction to requests guide: 'route' -> 'guard'.
2019-04-12 17:58:24 -07:00
Bryan Jennings
c776c59e6a
Fix typo in requests guide: missing ')'.
2019-04-12 17:57:02 -07:00