Sergio Benitez
b9bf1ee37d
Fix typed URI generation for query reform.
2018-10-09 04:31:08 -07:00
Sergio Benitez
61f107f550
Reimplement route attribute as a proc-macro.
...
This commits also implement the query reform from #608 . It also consists
of many, many breaking changes. Among them are:
* Query parts in route paths use new query reform syntax.
* Routing for queries is now lenient.
- Default ranking has changed to reflect query reform.
* Format routing matching has been fixed.
- Routes with formats matching "accept" will always collide.
- Routes with formats matching "content-type" require requests to
have an equivalent content-type header to match.
- Requests with imprecise content-types are treated as not having a
content-type.
* Generated routes and catchers respect visibility modifiers.
* Raw getter methods from request were renamed and retooled.
- In particular, the index parameter is based on segments in the
route path, not dynamic parameters.
* The method-based attributes no longer accept a keyed 'path'.
* The 'rocket_codegen' crate is gone and will no longer be public.
* The 'FormItems' iterator emits values of type 'FormItem'.
- The internal form items' string can no longer be retrieved.
* In general, routes are more strictly validated.
* Logging from codegen now funnels through logging infrastructure.
* Routing has been optimized by caching routing metadata.
Resolves #93 .
Resolves #608 .
Resolves #693 .
Resolves #476 .
2018-10-09 04:18:04 -07:00
Sergio Benitez
3eb873d89d
Tidy 'uri!' proc-macro. Improve error reporting.
2018-10-04 02:00:04 -07:00
jeb
7624aaf3e4
Reimplement 'uri!' as a proc-macro.
2018-10-03 21:56:37 -07:00
Sergio Benitez
cee2f4439f
Fix 'content_types' example for debug-only 'FromData' impl.
2018-09-27 01:16:26 -07:00
Sergio Benitez
ec4cc3a293
Allow transforms in 'FromData'. Add 'FromDataSimple'.
...
The new 'FromData' trait allows an implementor to instruct the caller to
maintain state on its stack and later pass a borrow for processing.
Among other things, it greatly simplifies the 'Form' type, removing a
use of unsafe, and allows references in deserialized data guards.
2018-09-26 21:33:02 -07:00
Sergio Benitez
633d37bc97
Fix invalid TOML test for updated 'toml' dependency.
2018-09-25 19:41:59 -07:00
Sergio Benitez
24ee97575b
Remove Collider trait.
2018-09-24 19:44:38 -07:00
Sergio Benitez
74007815a0
Replace 'SerdeError' with 'JsonError' in 'Json' data guard.
...
The new 'JsonError' type allows users to inspect the raw string that
failed to parse as a given JSON value.
Resolves #772 .
2018-09-18 18:57:11 -07:00
Sergio Benitez
1a3fd1d237
Add known media types and extensions.
...
Adds the following to the list of known media types:
* audio/webm (WEBA)
* image/tiff (TIFF)
* audio/aac (AAC)
* text/calendar (Calendar)
* video/mpeg (MPEG)
* application/x-tar (TAR)
* application/gzip (GZIP)
* video/quicktime (MOV)
* video/mp4 (MP4)
Also adds the following to the list of known extensions:
* .weba (WEBA)
* .ogv (OGG)
* .mp4 (MP4)
* .mpeg4 (MP4)
* .aac (AAC)
* .ics (Calendar)
* .bin (Binary)
* .mpg (MPEG)
* .mpeg (MPEG)
* .tar (TAR)
* .gz (GZIP)
* .tif (TIFF)
* .tiff (TIFF)
* .mov (MOV)
2018-09-18 18:25:39 -07:00
jeb
95cbc241db
Ensure 'ContextManager' is 'Sync' on all platforms.
2018-09-16 23:39:32 -07:00
Sergio Benitez
d011cd63fc
Remove unnecessary 'use rocket::catch'.
2018-09-16 20:52:07 -07:00
Sergio Benitez
d2abbe72e0
Merge 'use's in 'hello_2018' example.
2018-09-16 20:38:10 -07:00
Sergio Benitez
7926ffd6f0
Tidy 'routes!' and 'catchers!' proc-macros.
2018-09-16 20:38:02 -07:00
jeb
8e779610c4
Reimplement 'routes!' and 'catchers!' as proc-macros.
2018-09-16 18:52:23 -07:00
Sergio Benitez
46afabdfea
Remove neglected and obscure 'Error' type.
2018-09-16 03:07:50 -07:00
Sergio Benitez
351757c6ee
Rename 'Rocket::catch()' to 'Rocket::register()'.
2018-09-16 02:25:12 -07:00
Sergio Benitez
112e700836
Reimplement 'catch' attribute as a proc-macro.
2018-09-16 01:32:40 -07:00
Sergio Benitez
1f2f38ea5f
Update to latest 'derive_utils'.
2018-09-14 23:15:58 -07:00
jeb
cfdb2a404b
Add Icon (image/x-icon) as a known media type.
2018-09-11 15:16:06 -07:00
jeb
242b358e37
Fix typo in 'handle_error' docstring.
2018-09-11 15:13:20 -07:00
jeb
30cf75335b
Embed the diesel database migrations in the `todo` example.
...
`diesel_cli` is no longer needed for running the example or its tests.
2018-09-11 12:38:10 -07:00
Christophe Courtaut
7b050ebaae
Update 'uuid' dependency to '0.7'.
2018-09-11 11:04:50 -07:00
Sébastien Santoro
bac186fc0d
Fix typo in contrib 'Cargo.toml'.
2018-09-03 19:54:02 -07:00
Tal
8172f748b3
Implement 'Clone' for all URI types.
2018-09-03 19:42:34 -07:00
jeb
1da506ea5d
Remove use of the 'const_fn' feature.
2018-09-03 19:41:31 -07:00
Sergio Benitez
42361c31f1
Use crates.io version of 'compiletest_rs'.
2018-08-26 19:24:13 -07:00
Sergio Benitez
df0b96d3fa
Remove 'attr_literals' feature: stabilized.
2018-08-26 19:18:49 -07:00
Sergio Benitez
cb18954ef2
Use 'StaticFiles' in todo example.
2018-08-24 14:00:36 -07:00
Sergio Benitez
2821711ed3
Update CHANGELOG for 0.3.16.
2018-08-24 00:32:29 -07:00
jeb
59e9f7fcc9
Update codegen for 2018-08-23 nightly.
2018-08-24 00:40:56 -06:00
Sergio Benitez
fd6d577158
Remove 'use_extern_macros' feature: stabilized.
2018-08-18 17:06:28 -07:00
Sergio Benitez
58519e495e
Test all contrib features individually.
2018-08-18 16:52:45 -07:00
Sergio Benitez
9966a07c58
Update 'redis' to '0.9'.
...
Closes #743 .
2018-08-18 16:50:55 -07:00
EloD10
46da03c3c3
Fix typo in 'DatabaseConfig' docstring.
2018-08-17 11:19:37 -07:00
Sergio Benitez
a62248f7ce
Consistently use 'diesel_postgres_pool' feature.
2018-08-17 11:16:36 -07:00
Sergio Benitez
7b4747ff1c
Fix 'Segments::into_path_buf()' docstring.
2018-08-17 11:14:45 -07:00
Sergio Benitez
fe9fad339e
Clean up connection pooling documentation.
2018-08-15 23:31:49 -07:00
Eric Dattore
60b9f06407
Implement connection pooling support in contrib.
...
Resolves #167 .
2018-08-15 22:11:53 -07:00
Sergio Benitez
01a5011b61
Add a module-level docstring to 'http'.
2018-08-15 19:55:34 -07:00
Sergio Benitez
b642e94a2c
Reduce or consolidate git-based dependencies.
2018-08-15 19:44:35 -07:00
Sergio Benitez
429c0dfeb6
Fix template fairing given 'ConfigError::Missing'.
2018-08-15 19:00:43 -07:00
Sergio Benitez
5fa28ae9d2
Mention 'format' shorthands in requests guide.
2018-08-14 22:15:16 -07:00
messense
135b7d29ae
Update codegen for 2018-08-14 nightly.
2018-08-14 22:01:33 -07:00
Alfie John
47485dbadd
Fix a few grammar issues in guide.
2018-08-14 21:50:23 -07:00
Sergio Benitez
55459db773
Properly constrain 'serde_json' version.
2018-08-14 11:20:42 -07:00
Sergio Benitez
10f267a56d
Add 'ConfigError::Missing' to identify missing config keys.
2018-08-14 10:31:54 -07:00
Sergio Benitez
d699827079
Reexport new 'serde_json::json_internal_vec' macro.
2018-08-14 09:53:04 -07:00
Sergio Benitez
e0961e0750
Require all 'AdHoc' fairings to be named.
2018-08-14 09:14:06 -07:00
messense
589743579a
Fix benchmark compilation.
2018-08-13 15:51:42 -07:00