From 7d03f8836de8f4dddb41ce1bf01f23bb683e3904 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Fri, 19 Mar 2021 15:47:59 +0100 Subject: chore: upgrade actix_web to version 3 --- Cargo.toml | 2 +- src/branch/routes.rs | 26 +++++++++++++------------- src/commit/routes.rs | 20 ++++++++++---------- src/email/routes.rs | 5 ++--- src/repository/routes.rs | 14 +++++++------- 5 files changed, 33 insertions(+), 34 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index cafe258..784c1a7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] actix-rt = "1.0.0" -actix-web = "2.0.0" +actix-web = "3.0.0" actix-http = "1.0.1" actix-service = "1.0.5" diff --git a/src/branch/routes.rs b/src/branch/routes.rs index e46d3ad..bd78f2b 100644 --- a/src/branch/routes.rs +++ b/src/branch/routes.rs @@ -26,9 +26,9 @@ async fn index(state: web::Data) -> impl Responder { // Endpoint used for getting branches of a repository async fn get_repo_branch( state: web::Data, - repo: web::Path<(String,)>, + repo: web::Path, ) -> impl Responder { - let uuid: Uuid = uuid_from_string(&repo.0); + let uuid: Uuid = uuid_from_string(&repo); info!(state.log, "GET /branch/repo/{}/", &uuid); let result = Branch::find_by_repo(state.pool.clone(), &uuid).await; @@ -42,12 +42,12 @@ async fn get_repo_branch( /// It is a String, casted in an Uuid format. async fn get_branch( state: web::Data, - id: web::Path<(String,)>, + id: web::Path, ) -> impl Responder { - let uuid: Uuid = uuid_from_string(&id.0); + let uuid: Uuid = uuid_from_string(&id); let result = Branch::find(state.pool.clone(), &uuid).await; - info!(state.log, "GET /branch/{}/", id.0); + info!(state.log, "GET /branch/{}/", id); // `map_err` is also used when repo is not found result @@ -60,15 +60,15 @@ async fn get_branch( async fn delete_branch( req: HttpRequest, state: web::Data, - id: web::Path<(String,)>, + id: web::Path, ) -> impl Responder { - let uuid: Uuid = uuid_from_string(&id.0); + let uuid: Uuid = uuid_from_string(&id); match req.headers().get(header::AUTHORIZATION) { Some(x) if x.to_str().unwrap() != env::var("SECRET_KEY").unwrap_or("".to_string()) => { - info!(state.log, "DELETE /branch/{}/ 401", id.0); + info!(state.log, "DELETE /branch/{}/ 401", id); return Err(AppError { error_type: AppErrorType::AuthorizationError, message: Some( @@ -79,13 +79,13 @@ async fn delete_branch( } Some(_) => {} None => { - info!(state.log, "DELETE /branch/{}/ 400", id.0); + info!(state.log, "DELETE /branch/{}/ 400", id); return Ok(HttpResponse::BadRequest().body("")); } }; let result = Branch::delete(state.pool.clone(), &uuid).await; - info!(state.log, "DELETE /branch/{}/", id.0); + info!(state.log, "DELETE /branch/{}/", id); result .map(|_| HttpResponse::NoContent().body("")) @@ -96,13 +96,13 @@ async fn delete_branch( pub fn config(cfg: &mut web::ServiceConfig) { cfg.service( web::scope("/branch") - .service(web::resource("{_:/?}").route(web::get().to(index))) + .service(web::resource("/").route(web::get().to(index))) .service( - web::resource("/repo/{repo_id}{_:/?}") + web::resource("/repo/{repo_id}/") .route(web::get().to(get_repo_branch)), ) .service( - web::resource("/{id}{_:/?}") + web::resource("/{id}/") .route(web::get().to(get_branch)) .route(web::delete().to(delete_branch)), ), diff --git a/src/commit/routes.rs b/src/commit/routes.rs index e49f698..95c0faa 100644 --- a/src/commit/routes.rs +++ b/src/commit/routes.rs @@ -23,11 +23,11 @@ async fn index(state: web::Data) -> impl Responder { // Endpoint used for getting one commit async fn get_commit( state: web::Data, - hash: web::Path<(String,)>, + hash: web::Path, ) -> impl Responder { - info!(state.log, "GET /commit/{}/", &hash.0); + info!(state.log, "GET /commit/{}/", &hash); - let result = Commit::find(state.pool.clone(), hash.0.clone()).await; + let result = Commit::find(state.pool.clone(), hash.clone()).await; result .map(|commit| HttpResponse::Ok().json(commit)) @@ -39,14 +39,14 @@ async fn get_commit( async fn delete_commit( req: HttpRequest, state: web::Data, - hash: web::Path<(String,)>, + hash: web::Path, ) -> impl Responder { match req.headers().get(header::AUTHORIZATION) { Some(x) if x.to_str().unwrap() != env::var("SECRET_KEY").unwrap_or("".to_string()) => { - info!(state.log, "DELETE /commit/{}/ 401", &hash.0); + info!(state.log, "DELETE /commit/{}/ 401", &hash); return Err(AppError { error_type: AppErrorType::AuthorizationError, message: Some( @@ -57,13 +57,13 @@ async fn delete_commit( } Some(_) => {} None => { - info!(state.log, "DELETE /commit/{}/ 400", &hash.0); + info!(state.log, "DELETE /commit/{}/ 400", &hash); return Ok(HttpResponse::BadRequest().body("")); } }; - let result = Commit::delete(state.pool.clone(), &hash.0).await; - info!(state.log, "DELETE /commit/{}/", &hash.0); + let result = Commit::delete(state.pool.clone(), &hash).await; + info!(state.log, "DELETE /commit/{}/", &hash); result .map(|_| HttpResponse::NoContent().body("")) @@ -74,9 +74,9 @@ async fn delete_commit( pub fn config(cfg: &mut web::ServiceConfig) { cfg.service( web::scope("/commit") - .service(web::resource("{_:/?}").route(web::get().to(index))) + .service(web::resource("/").route(web::get().to(index))) .service( - web::resource("/{hash}{_:/?}") + web::resource("/{hash}/") .route(web::get().to(get_commit)) .route(web::delete().to(delete_commit)), ), diff --git a/src/email/routes.rs b/src/email/routes.rs index 14299eb..003d01c 100644 --- a/src/email/routes.rs +++ b/src/email/routes.rs @@ -63,13 +63,12 @@ pub fn config(cfg: &mut web::ServiceConfig) { cfg.service( web::scope("/email") .service( - web::resource("{_:/?}") + web::resource("/") .route(web::get().to(index)) .route(web::post().to(create_email)), ) .service( - web::resource("/search{_:/?}") - .route(web::get().to(search_email)), + web::resource("/search/").route(web::get().to(search_email)), ), ); } diff --git a/src/repository/routes.rs b/src/repository/routes.rs index 32443b1..d189584 100644 --- a/src/repository/routes.rs +++ b/src/repository/routes.rs @@ -27,15 +27,15 @@ async fn index(state: web::Data) -> impl Responder { /// It is a String, casted in an Uuid format. async fn get_repo( state: web::Data, - id: web::Path<(String,)>, + id: web::Path, ) -> impl Responder { // I have to match the &id.0 because if it's not a valid Uuid, the server // must response "Repository not found". // If I pass a not valid Uuid to Repository::find() it raises an error. - let uuid: Uuid = uuid_from_string(&id.0); + let uuid: Uuid = uuid_from_string(&id); let result = Repository::find(state.pool.clone(), &uuid).await; - info!(state.log, "GET /repo/{}/", id.0); + info!(state.log, "GET /repo/{}/", id); // `map_err` is also used when repo is not found result @@ -48,9 +48,9 @@ async fn get_repo( async fn delete_repo( req: HttpRequest, state: web::Data, - id: web::Path<(String,)>, + id: web::Path, ) -> impl Responder { - let uuid: Uuid = uuid_from_string(&id.0); + let uuid: Uuid = uuid_from_string(&id); match req.headers().get(header::AUTHORIZATION) { Some(x) if x.to_str().unwrap() @@ -102,12 +102,12 @@ pub fn config(cfg: &mut web::ServiceConfig) { cfg.service( web::scope("/repo") .service( - web::resource("{_:/?}") + web::resource("/") .route(web::get().to(index)) .route(web::post().to(create_repo)), ) .service( - web::resource("/{id}{_:/?}") + web::resource("/{id}/") .route(web::get().to(get_repo)) .route(web::delete().to(delete_repo)), ), -- cgit v1.2.3-18-g5258