Skip to content

Commit c3acfbf

Browse files
flosselawliet89
andauthored
Update to rocket 05rc3 (#113)
* Update rocket dependency to v0.5.0-rc.3 * Update dependencies * Fix clippy lint * Fix clippy * Fix elided lifetime * Remove spurious lines * Fix format --------- Co-authored-by: Yong Wen Chua <[email protected]>
1 parent c17e814 commit c3acfbf

File tree

2 files changed

+21
-29
lines changed

2 files changed

+21
-29
lines changed

Cargo.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ default = ["serialization"]
2121
serialization = ["serde", "serde_derive", "unicase_serde"]
2222

2323
[dependencies]
24-
regex = "1.5.5"
25-
rocket = { version = "0.5.0-rc.2", default-features = false }
24+
regex = "1.7.2"
25+
rocket = { version = "0.5.0-rc.3", default-features = false }
2626
log = "0.4"
27-
unicase = "2.0"
28-
url = "2.1.0"
27+
unicase = "2.6"
28+
url = "2.3.1"
2929
http = "0.2"
3030

3131
# Optional dependencies that are activated by the various features

src/lib.rs

+17-25
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,6 @@ See the [example](https://github.com/lawliet89/rocket_cors/blob/master/examples/
208208
*/
209209

210210
#![deny(
211-
const_err,
212211
dead_code,
213212
deprecated,
214213
arithmetic_overflow,
@@ -434,19 +433,15 @@ impl From<regex::Error> for Error {
434433
/// ["Externally tagged"](https://serde.rs/enum-representations.html)
435434
#[derive(Clone, Debug, Eq, PartialEq)]
436435
#[cfg_attr(feature = "serialization", derive(Serialize, Deserialize))]
436+
#[derive(Default)]
437437
pub enum AllOrSome<T> {
438438
/// Everything is allowed. Usually equivalent to the "*" value.
439+
#[default]
439440
All,
440441
/// Only some of `T` is allowed
441442
Some(T),
442443
}
443444

444-
impl<T> Default for AllOrSome<T> {
445-
fn default() -> Self {
446-
AllOrSome::All
447-
}
448-
}
449-
450445
impl<T> AllOrSome<T> {
451446
/// Returns whether this is an `All` variant
452447
pub fn is_all(&self) -> bool {
@@ -1468,10 +1463,7 @@ impl Response {
14681463
}
14691464

14701465
/// Validate and create a new CORS Response from a request and settings
1471-
pub fn validate_and_build<'a, 'r>(
1472-
options: &'a Cors,
1473-
request: &'a Request<'r>,
1474-
) -> Result<Self, Error> {
1466+
pub fn validate_and_build<'a>(options: &'a Cors, request: &'a Request) -> Result<Self, Error> {
14751467
validate_and_build(options, request)
14761468
}
14771469
}
@@ -1735,7 +1727,7 @@ fn validate_allowed_method(
17351727
method: &AccessControlRequestMethod,
17361728
allowed_methods: &AllowedMethods,
17371729
) -> Result<(), Error> {
1738-
let &AccessControlRequestMethod(ref request_method) = method;
1730+
let AccessControlRequestMethod(request_method) = method;
17391731
if !allowed_methods.iter().any(|m| m == request_method) {
17401732
return Err(Error::MethodNotAllowed(method.0.to_string()));
17411733
}
@@ -1749,7 +1741,7 @@ fn validate_allowed_headers(
17491741
headers: &AccessControlRequestHeaders,
17501742
allowed_headers: &AllowedHeaders,
17511743
) -> Result<(), Error> {
1752-
let &AccessControlRequestHeaders(ref headers) = headers;
1744+
let AccessControlRequestHeaders(headers) = headers;
17531745

17541746
match *allowed_headers {
17551747
AllOrSome::All => Ok(()),
@@ -1897,7 +1889,7 @@ fn preflight_response(
18971889

18981890
// We do not do anything special with simple headers
18991891
if let Some(headers) = headers {
1900-
let &AccessControlRequestHeaders(ref headers) = headers;
1892+
let AccessControlRequestHeaders(headers) = headers;
19011893
response.headers(
19021894
headers
19031895
.iter()
@@ -2242,7 +2234,7 @@ mod tests {
22422234
#[test]
22432235
fn validate_origin_allows_all_origins() {
22442236
let url = "https://www.example.com";
2245-
let origin = not_err!(to_parsed_origin(&url));
2237+
let origin = not_err!(to_parsed_origin(url));
22462238
let allowed_origins = AllOrSome::All;
22472239

22482240
not_err!(validate_origin(&origin, &allowed_origins));
@@ -2251,7 +2243,7 @@ mod tests {
22512243
#[test]
22522244
fn validate_origin_allows_origin() {
22532245
let url = "https://www.example.com";
2254-
let origin = not_err!(to_parsed_origin(&url));
2246+
let origin = not_err!(to_parsed_origin(url));
22552247
let allowed_origins = not_err!(parse_allowed_origins(&AllowedOrigins::some_exact(&[
22562248
"https://www.example.com"
22572249
])));
@@ -2270,7 +2262,7 @@ mod tests {
22702262
];
22712263

22722264
for (url, allowed_origin) in cases {
2273-
let origin = not_err!(to_parsed_origin(&url));
2265+
let origin = not_err!(to_parsed_origin(url));
22742266
let allowed_origins = not_err!(parse_allowed_origins(&AllowedOrigins::some_exact(&[
22752267
allowed_origin
22762268
])));
@@ -2287,18 +2279,18 @@ mod tests {
22872279
])));
22882280

22892281
let url = "https://www.example-something.com";
2290-
let origin = not_err!(to_parsed_origin(&url));
2282+
let origin = not_err!(to_parsed_origin(url));
22912283
not_err!(validate_origin(&origin, &allowed_origins));
22922284

22932285
let url = "https://subdomain.acme.com";
2294-
let origin = not_err!(to_parsed_origin(&url));
2286+
let origin = not_err!(to_parsed_origin(url));
22952287
not_err!(validate_origin(&origin, &allowed_origins));
22962288
}
22972289

22982290
#[test]
22992291
fn validate_origin_validates_opaque_origins() {
23002292
let url = "moz-extension://8c7c4444-e29f-…cb8-1ade813dbd12/js/content.js:505";
2301-
let origin = not_err!(to_parsed_origin(&url));
2293+
let origin = not_err!(to_parsed_origin(url));
23022294
let allowed_origins = not_err!(parse_allowed_origins(&AllowedOrigins::some_regex(&[
23032295
"moz-extension://.*"
23042296
])));
@@ -2314,19 +2306,19 @@ mod tests {
23142306
)));
23152307

23162308
let url = "https://www.example-something123.com";
2317-
let origin = not_err!(to_parsed_origin(&url));
2309+
let origin = not_err!(to_parsed_origin(url));
23182310
not_err!(validate_origin(&origin, &allowed_origins));
23192311

23202312
let url = "https://www.acme.com";
2321-
let origin = not_err!(to_parsed_origin(&url));
2313+
let origin = not_err!(to_parsed_origin(url));
23222314
not_err!(validate_origin(&origin, &allowed_origins));
23232315
}
23242316

23252317
#[test]
23262318
#[should_panic(expected = "OriginNotAllowed")]
23272319
fn validate_origin_rejects_invalid_origin() {
23282320
let url = "https://www.acme.com";
2329-
let origin = not_err!(to_parsed_origin(&url));
2321+
let origin = not_err!(to_parsed_origin(url));
23302322
let allowed_origins = not_err!(parse_allowed_origins(&AllowedOrigins::some_exact(&[
23312323
"https://www.example.com"
23322324
])));
@@ -2489,7 +2481,7 @@ mod tests {
24892481
&AllOrSome::Some(
24902482
allowed_headers
24912483
.iter()
2492-
.map(|s| FromStr::from_str(*s).unwrap())
2484+
.map(|s| FromStr::from_str(s).unwrap())
24932485
.collect(),
24942486
),
24952487
));
@@ -2506,7 +2498,7 @@ mod tests {
25062498
&AllOrSome::Some(
25072499
allowed_headers
25082500
.iter()
2509-
.map(|s| FromStr::from_str(*s).unwrap())
2501+
.map(|s| FromStr::from_str(s).unwrap())
25102502
.collect(),
25112503
),
25122504
)

0 commit comments

Comments
 (0)