Sergio Benitez
677790d639
Bring back generated TLS keys, used by tests.
2021-07-09 16:35:09 -07:00
Sergio Benitez
7ffe3a7360
Complete mTLS implementation.
...
Resolves #254 .
2021-07-09 00:05:44 -07:00
Sergio Benitez
bbc36ba27f
Initial implementation of mTLS.
...
Co-authored-by: Howard Su <howard0su@gmail.com>
Co-authored-by: Mikail Bagishov <bagishov.mikail@yandex.ru>
2021-07-09 00:05:20 -07:00
Sergio Benitez
71823915db
Don't store example keys and certs in repository.
2021-07-07 12:16:12 -07:00
Sergio Benitez
581b63da7e
Restore 'doc(cfg)' labels for config items.
2021-07-05 14:02:19 -07:00
Sergio Benitez
614f8ab46c
Condition TLS config types on 'tls' feature.
...
Previously, TLS, via 'Config::tls', was configurable even if the 'tls'
feature was disabled. This commit changes this so that the 'Config::tls'
field and TLS config structures are only available if 'tls' is enabled.
2021-07-05 13:46:37 -07:00
Sergio Benitez
76fab37e29
Rename 'remote_addr' to 'peer_address'.
2021-07-04 15:37:27 -07:00
Sergio Benitez
b5e3569554
Split TLS module into logical submodules.
2021-07-04 15:25:49 -07:00
Sergio Benitez
de4b3e3891
Make 'tls' its own module.
2021-07-04 15:01:55 -07:00
Sergio Benitez
efce2bc958
Make 'MediaType::with_params()' a builder method.
...
Instead of a constructor, 'MediaType::with_params()' and
'ContentType::with_params()' are now both builder methods. This allow
chaining the method to associated constants.
2021-07-04 13:50:19 -07:00
Sergio Benitez
bb920e6e09
Fix 'context!()' typo: "supports" -> "supported".
2021-07-02 11:44:53 -07:00
Sergio Benitez
6aecff39bc
Warn on launch if a custom runtime is detected.
...
The warning is only emitted in debug profiles.
2021-07-02 11:35:59 -07:00
Sergio Benitez
8058798a4c
Properly propagate profile to 'Config' on ignite.
2021-07-02 11:34:35 -07:00
Sergio Benitez
95e9b2e9ef
Remove latent 'dbg!()' in templating tests.
2021-07-02 11:33:32 -07:00
Sergio Benitez
0ffcfae47b
Warn on more deprecated config keys and profiles.
2021-07-02 11:31:50 -07:00
Sergio Benitez
8414d787d9
Impl 'FromUriParam' for 'Json'.
2021-07-02 10:36:57 -07:00
Sergio Benitez
75d851d011
Sync core 'UriDisplay' and 'FromUriParam' impls.
2021-07-02 08:17:22 -07:00
Sergio Benitez
2cee4b4594
Make '&Host' a request guard.
2021-07-02 06:57:43 -07:00
Sergio Benitez
c58b43700c
Add type-safe 'Host' type, 'Request::host()'.
...
Closes #1699 .
2021-07-02 06:48:40 -07:00
Sergio Benitez
f49ee7da00
Make 'FileName' danger more pronounced.
2021-07-02 06:48:09 -07:00
Sergio Benitez
9d20c57d91
Allow named field generics in 'UriDisplay' derive.
2021-07-01 06:02:40 -07:00
Sergio Benitez
416f42bca7
Fix header level of "Within Guards" in guide.
...
Resolves #1737 .
2021-06-30 21:02:28 -07:00
Sergio Benitez
2c9217ebd0
Run core feature testing on nightly.
2021-06-30 20:53:59 -07:00
Sergio Benitez
c2d8f11ffe
Doctest core feature matrix with '--no-run'.
...
Previously, we ran each doctest in core many times, once for each
individually enabled feature. This took a long time and consumed an
inordinate amount of resources for no gain: we already run each test
when we enable all features. Instead, emulate a 'cargo check' for
doctests by passing '--no-run' to rustdoc via an environment variable.
2021-06-30 20:44:58 -07:00
Mikail Bagishov
be933ce398
Apply clippy suggestions.
2021-06-30 14:13:19 -07:00
ThouCheese
5ebefa97c9
Impl 'std::Error' for 'serde::json::Error'.
2021-06-30 11:22:31 -07:00
multisn8
8f9d7e6374
Fix guide typo: "deserialzies" -> "deserializes".
2021-06-30 11:08:51 -07:00
Joakim Soderlund
7b9363f981
Fix typo in 'Sentinel' docs: 'INner' -> 'Inner'.
2021-06-30 11:08:20 -07:00
Ian Jackson
42f84f0621
Update IRC links to Libera (irc.libera.chat).
2021-06-30 11:04:54 -07:00
Martinez
2bd5cefedd
Check response status in guide form tests.
2021-06-30 11:01:32 -07:00
John-John Tedro
0ddad7a6c1
Impl 'Responder' for 'Arc<T>', 'Box<T>'.
2021-06-30 10:44:30 -07:00
PROgrm_JARvis
4339c2af48
Make '<String as FromParam>::Error' 'Infallible'.
...
Fixes #1679 .
2021-06-30 10:27:46 -07:00
Sergio Benitez
dc1b729f29
Don't ignore 'launch()' result in guide overview.
2021-06-30 10:19:36 -07:00
Sergio Benitez
f0b133023b
Fix git repository link to 'rocket_sync_db_pools'.
2021-06-30 10:15:46 -07:00
Dominik Boehi
d671ec5bb5
Fix link to 'rocket_dyn_templates' git repository.
2021-06-30 10:14:58 -07:00
Flying-Toast
8e3ad40beb
Add 'context!' for ad-hoc templating contexts.
2021-06-30 10:09:28 -07:00
Sergio Benitez
6a3d1ac1d5
Fix 'UriDisplay<Query>' 'Json', 'MsgPack', impls.
...
As 'FromForm' doesn't provide access to the raw, undecoded string,
'MsgPack' cannot implement 'FromForm::from_value()'. This means that it
is not presently possible to parse a MessagePack form from a query
string. As such, the 'UriDisplay<Query>' implementation was removed.
The 'UriDisplay<Query>' for JSON was fixed such that a round-trip of a
'Json<T>' as a form works as expected.
2021-06-30 06:46:03 -07:00
Sergio Benitez
bad762b8c4
Add 'rocket::serde:json::to_string()' functions.
2021-06-30 06:46:03 -07:00
Sergio Benitez
9957e00ad1
Pass type mapper directly in 'Responder' derive.
2021-06-30 06:46:03 -07:00
Sergio Benitez
e141ac8a19
Add 'RawStr::percent_encode_bytes()'.
2021-06-30 06:46:01 -07:00
Sergio Benitez
01a11800ab
Support all generics in 'UriDisplay' derive.
...
This ports the technique used for 'FromForm' and 'Responder' to the
'UriDisplay' trait derives.
2021-06-30 06:20:51 -07:00
Sergio Benitez
3ec58c3ca2
Ensure launch occurs with minimal ciphersuites.
...
Co-authored-by: Abdullah Alyan <AbdullahAlyan@yahoo.com>
2021-06-29 11:27:54 -07:00
Sergio Benitez
f818702f9b
Propagate TLS ciphersuite config to rustls.
...
Closes #1563 .
2021-06-29 11:17:59 -07:00
Sergio Benitez
dd722cdcfc
Add configurable TLS ciphersuite preferences.
2021-06-29 10:35:55 -07:00
Sergio Benitez
5a2535f865
Mark 'form::ErrorKind' 'non_exhaustive'.
2021-06-29 05:06:37 -07:00
Sergio Benitez
9ce2935fe1
Impl 'Len' field validator for 'Json', 'MsgPack'.
2021-06-29 03:37:52 -07:00
Sergio Benitez
9399841b0c
Fix order of indices in 'FromForm' map notes.
2021-06-29 03:37:52 -07:00
Sergio Benitez
c2e457c00f
Add "Wrapping Validators" section to forms guide.
2021-06-29 03:37:52 -07:00
Sergio Benitez
793f421712
Support type generics, unit structs in 'FromForm'.
...
The 'FromFrom' derive now allows type generics in all positions using
the same automatic discovery technique as with 'Responder'. (In fact,
the technique was created for this derive.) Furthermore, 'FromForm' can
now be derived for unit structs.
Also adds a new 'try_with' form field validator.
Resolves #1695 .
2021-06-29 03:37:52 -07:00
Sergio Benitez
dcbb1941c5
Explicitly mention multipart support in guide.
2021-06-29 03:33:44 -07:00