From b04748a8045e1df793838c5e1181a37a1f78d6a4 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Tue, 12 Dec 2023 15:36:56 +0100 Subject: [PATCH] cargo: bump rocket to v0.5 --- Cargo.lock | 69 ++++++++++++++++++++++++++++++------------------ Cargo.toml | 2 +- flake.nix | 2 +- src/signature.rs | 12 ++++----- 4 files changed, 52 insertions(+), 33 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 517b9d1..f2e4ce1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -153,9 +153,9 @@ dependencies = [ [[package]] name = "cookie" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" +checksum = "3cd91cf61412820176e137621345ee43b3f4423e589e7ae4e50d601d93e35ef8" dependencies = [ "percent-encoding", "time", @@ -238,6 +238,12 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + [[package]] name = "errno" version = "0.3.8" @@ -391,6 +397,12 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + [[package]] name = "hermit-abi" version = "0.3.3" @@ -477,7 +489,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" +dependencies = [ + "equivalent", + "hashbrown 0.14.3", "serde", ] @@ -725,7 +747,7 @@ checksum = "61a386cd715229d399604b50d1361683fe687066f42d56f54be995bc6868f71c" dependencies = [ "inlinable_string", "pear_codegen", - "yansi 1.0.0-rc.1", + "yansi", ] [[package]] @@ -783,7 +805,7 @@ dependencies = [ "quote", "syn", "version_check", - "yansi 1.0.0-rc.1", + "yansi", ] [[package]] @@ -891,9 +913,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "rocket" -version = "0.5.0-rc.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58734f7401ae5cfd129685b48f61182331745b357b96f2367f01aebaf1cc9cc9" +checksum = "9e7bb57ccb26670d73b6a47396c83139447b9e7878cab627fdfe9ea8da489150" dependencies = [ "async-stream", "async-trait", @@ -903,8 +925,7 @@ dependencies = [ "either", "figment", "futures", - "indexmap", - "is-terminal", + "indexmap 2.1.0", "log", "memchr", "multer", @@ -924,37 +945,38 @@ dependencies = [ "tokio-util", "ubyte", "version_check", - "yansi 0.5.1", + "yansi", ] [[package]] name = "rocket_codegen" -version = "0.5.0-rc.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7093353f14228c744982e409259fb54878ba9563d08214f2d880d59ff2fc508b" +checksum = "a2238066abf75f21be6cd7dc1a09d5414a671f4246e384e49fe3f8a4936bd04c" dependencies = [ "devise", "glob", - "indexmap", + "indexmap 2.1.0", "proc-macro2", "quote", "rocket_http", "syn", "unicode-xid", + "version_check", ] [[package]] name = "rocket_http" -version = "0.5.0-rc.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "936012c99162a03a67f37f9836d5f938f662e26f2717809761a9ac46432090f4" +checksum = "37a1663694d059fe5f943ea5481363e48050acedd241d46deb2e27f71110389e" dependencies = [ "cookie", "either", "futures", "http", "hyper", - "indexmap", + "indexmap 2.1.0", "log", "memchr", "pear", @@ -1060,7 +1082,7 @@ version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b" dependencies = [ - "indexmap", + "indexmap 1.9.3", "ryu", "serde", "yaml-rust", @@ -1149,9 +1171,9 @@ dependencies = [ [[package]] name = "state" -version = "0.5.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbe866e1e51e8260c9eed836a042a5e7f6726bb2b411dffeaa712e19c388f23b" +checksum = "2b8c4a4445d81357df8b1a650d0d0d6fbbbfe99d064aa5e02f3e4022061476d8" dependencies = [ "loom", ] @@ -1600,14 +1622,11 @@ dependencies = [ "linked-hash-map", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "yansi" version = "1.0.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1367295b8f788d371ce2dbc842c7b709c73ee1364d30351dd300ec2203b12377" +dependencies = [ + "is-terminal", +] diff --git a/Cargo.toml b/Cargo.toml index 31a76cd..0bfb88d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -24,7 +24,7 @@ serde_yaml = "0.8.17" sha2 = "0.9.3" [dependencies.rocket] -version = "0.5.0-rc.1" +version = "0.5.0" # don't need private-cookies default-features = false diff --git a/flake.nix b/flake.nix index 19c87ed..c5f771e 100644 --- a/flake.nix +++ b/flake.nix @@ -20,7 +20,7 @@ src = ./.; - cargoSha256 = "sha256-712J8squ4txjdKH5buKpCl7ss2NSNRYM/m548Z6RSzQ="; + cargoHash = "sha256-g9GWqZnO79j9VMndyRgx4FUBlsWqYo028tHegntxkgQ="; meta = with pkgs.lib; { description = "A Git mirroring tool"; diff --git a/src/signature.rs b/src/signature.rs index c062874..3f5cede 100644 --- a/src/signature.rs +++ b/src/signature.rs @@ -75,12 +75,12 @@ where async fn from_data(request: &'r Request<'_>, data: Data<'r>) -> Outcome<'r, Self> { let json_ct = ContentType::new("application", "json"); if request.content_type() != Some(&json_ct) { - return Outcome::Failure((Status::BadRequest, anyhow!("wrong content type"))); + return Outcome::Error((Status::BadRequest, anyhow!("wrong content type"))); } let signatures = request.headers().get(X_GITEA_SIGNATURE).collect::>(); if signatures.len() != 1 { - return Outcome::Failure(( + return Outcome::Error(( Status::BadRequest, anyhow!("request header needs exactly one signature"), )); @@ -91,24 +91,24 @@ where Ok(s) if s.is_complete() => s.into_inner(), Ok(_) => { let eof = io::ErrorKind::UnexpectedEof; - return Outcome::Failure(( + return Outcome::Error(( Status::PayloadTooLarge, io::Error::new(eof, "data limit exceeded").into(), )); } - Err(e) => return Outcome::Failure((Status::BadRequest, e.into())), + Err(e) => return Outcome::Error((Status::BadRequest, e.into())), }; let signature = signatures[0]; let secret = request.guard::<&State>().await.unwrap(); if !validate_signature(&secret.0, signature, &content) { - return Outcome::Failure((Status::BadRequest, anyhow!("couldn't verify signature"))); + return Outcome::Error((Status::BadRequest, anyhow!("couldn't verify signature"))); } match Self::from_str(local_cache!(request, content)) { Ok(content) => Outcome::Success(content), - Err(e) => Outcome::Failure((Status::BadRequest, e)), + Err(e) => Outcome::Error((Status::BadRequest, e)), } } }