From 3b76c556ac69717bbfd402aed126ccef92a25948 Mon Sep 17 00:00:00 2001 From: Jon Gjengset Date: Sun, 5 Jan 2025 04:27:23 -0500 Subject: [PATCH] adopt axum 0.8 (#215) --- server/Cargo.lock | 34 +++++++++++----------------------- server/Cargo.toml | 4 ++-- server/src/main.rs | 14 +++++++------- 3 files changed, 20 insertions(+), 32 deletions(-) diff --git a/server/Cargo.lock b/server/Cargo.lock index 82885d1..0392c87 100644 --- a/server/Cargo.lock +++ b/server/Cargo.lock @@ -48,17 +48,6 @@ dependencies = [ "syn", ] -[[package]] -name = "async-trait" -version = "0.1.84" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1244b10dcd56c92219da4e14caa97e312079e185f04ba3eea25061561dc0a0" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -396,9 +385,9 @@ dependencies = [ [[package]] name = "aws_lambda_events" -version = "0.15.1" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7319a086b79c3ff026a33a61e80f04fd3885fbb73237981ea080d21944e1cb1c" +checksum = "52ddb91585253ccc85be3f2e0d5635529efdeadaf8a1da3230b433d3bbe43648" dependencies = [ "base64 0.22.1", "bytes", @@ -412,13 +401,13 @@ dependencies = [ [[package]] name = "axum" -version = "0.7.9" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" +checksum = "6d6fd624c75e18b3b4c6b9caf42b1afe24437daaee904069137d8bab077be8b8" dependencies = [ - "async-trait", "axum-core", "bytes", + "form_urlencoded", "futures-util", "http 1.2.0", "http-body 1.0.1", @@ -446,11 +435,10 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.4.5" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" +checksum = "df1362f362fd16024ae199c1970ce98f9661bf5ef94b9808fee734bc3698b733" dependencies = [ - "async-trait", "bytes", "futures-util", "http 1.2.0", @@ -1173,9 +1161,9 @@ dependencies = [ [[package]] name = "lambda_http" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67fe279be7f89f5f72c97c3a96f45c43db8edab1007320ecc6a5741273b4d6db" +checksum = "68b470cea1ec37b96e9543870a33c1f4b9e243754fe5892668efa3125ea12784" dependencies = [ "aws_lambda_events", "base64 0.22.1", @@ -1282,9 +1270,9 @@ dependencies = [ [[package]] name = "matchit" -version = "0.7.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" [[package]] name = "memchr" diff --git a/server/Cargo.toml b/server/Cargo.toml index 44d7d97..03a1e13 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -9,11 +9,11 @@ aws-sdk-dynamodb = "1.1.0" aws-smithy-types = "1.0.1" aws-smithy-runtime-api = "1.0.0" aws-smithy-http = "0.60" -axum = "0.7.5" +axum = "0.8.1" http = "1.0" http-body-util = "0.1.1" hyper = { version = "1.0.1", features = ["server", "http1", "http2"] } -lambda_http = { version = "0.13.0", default-features = false, features = ["apigw_http"] } +lambda_http = { version = "0.14.0", default-features = false, features = ["apigw_http"] } lambda_runtime = "0.13.0" rand = "0.8" serde = { version = "1", features = ["derive"] } diff --git a/server/src/main.rs b/server/src/main.rs index bb1c680..a616f4d 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -259,16 +259,16 @@ async fn main() -> Result<(), Error> { let app = Router::new() .route("/api/event", post(new::new)) - .route("/api/event/:eid", post(ask::ask)) - .route("/api/event/:eid", get(event::event)) - .route("/api/event/:eid/questions", get(list::list)) - .route("/api/event/:eid/questions/:secret", get(list::list_all)) + .route("/api/event/{eid}", post(ask::ask)) + .route("/api/event/{eid}", get(event::event)) + .route("/api/event/{eid}/questions", get(list::list)) + .route("/api/event/{eid}/questions/{secret}", get(list::list_all)) .route( - "/api/event/:eid/questions/:secret/:qid/toggle/:property", + "/api/event/{eid}/questions/{secret}/{qid}/toggle/{property}", post(toggle::toggle), ) - .route("/api/vote/:qid/:updown", post(vote::vote)) - .route("/api/questions/:qids", get(questions::questions)) + .route("/api/vote/{qid}/{updown}", post(vote::vote)) + .route("/api/questions/{qids}", get(questions::questions)) .layer(RequestBodyLimitLayer::new(1024)) .with_state(backend);