Rocket/core/codegen/tests
Sergio Benitez ac0a77bae2 Allow dynamic parameters to match empty segments.
The net effect of this commit is three-fold:

  * A request to `/` now matches `/<a>`. `/foo/` matches `/<a>/<b>`.
  * A segment matched to a dynamic parameter may be empty.
  * A request to `/foo/` no longer matches `/foo` or `/<a>`. Instead,
    such a request would match `/foo/<a>` or `/foo/`.

The `&str` and `String` parameter guards were updated to reflect this
change: they now error, with a newly introduced error type `Empty` in
the `rocket::error` module, when the parameter is empty. As this was the
only built-in parameter guard that would be effected by this change (all
other guards already required nonempty parameters to succeed), the
majority of applications will see no effect as a result.

For applications wanting the previous functionality, a new
`AdHoc::uri_normalizer()` fairing was introduced.
2023-04-07 20:00:09 -07:00
..
ui-fail Implement more conservative URI normalization. 2023-04-07 19:59:57 -07:00
ui-fail-nightly Allow dynamic parameters to match empty segments. 2023-04-07 20:00:09 -07:00
ui-fail-stable Allow dynamic parameters to match empty segments. 2023-04-07 20:00:09 -07:00
async-entry.rs Revamp shutdown to recover shutdown 'Rocket'. 2022-05-07 06:12:24 -05:00
async-routes.rs Workaround 'rustc' bug, compiling more async code. 2021-08-24 19:46:47 -07:00
catcher.rs Add internal '__typed_stream' proc-macro. 2021-06-01 11:43:51 -07:00
expansion.rs Retrieve managed state via a borrow: '&State<T>'. 2021-05-11 08:58:16 -05:00
from_form.rs Fix a bunch of typos. 2023-03-23 16:27:08 -07:00
from_form_field.rs Allow several 'field' attributes in all derives. 2021-04-07 23:09:05 -07:00
responder.rs Allow named field generics in 'UriDisplay' derive. 2021-07-01 06:02:40 -07:00
route-data.rs Drop 'Data' after sending a response, not before. 2021-06-08 13:26:16 -07:00
route-format.rs Impl 'IntoCollection' for '[T; N]'. 2021-05-22 11:01:00 -07:00
route-ranking.rs Rename 'rocket::ignite()' to 'rocket::build()'. 2021-04-08 01:07:52 -07:00
route-raw.rs Overhaul URI types, parsers, 'uri!' macro. 2021-05-19 18:47:11 -07:00
route.rs Implement more conservative URI normalization. 2023-04-07 19:59:57 -07:00
segment-ignore.rs Rename 'rocket::ignite()' to 'rocket::build()'. 2021-04-08 01:07:52 -07:00
typed-uris.rs Implement more conservative URI normalization. 2023-04-07 19:59:57 -07:00
ui-fail.rs Allow UI tests to fail in CI. 2023-01-30 16:06:18 -08:00
uri_display.rs Allow named field generics in 'UriDisplay' derive. 2021-07-01 06:02:40 -07:00