Skip to content

Commit ef9ffb2

Browse files
committed
controllers/krate/publish: Simplify match statement via map_err()
1 parent 3ce70e7 commit ef9ffb2

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/controllers/krate/publish.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -373,16 +373,16 @@ pub async fn publish(app: AppState, req: BytesRequest) -> AppResult<Json<GoodCra
373373
.bin_names(bin_names.as_slice())
374374
.build();
375375

376-
let version = match new_version.save(conn, &verified_email_address) {
377-
Err(diesel::result::Error::DatabaseError(diesel::result::DatabaseErrorKind::UniqueViolation, _)) => {
378-
return Err(bad_request(format_args!(
376+
let version = new_version.save(conn, &verified_email_address).map_err(|error| {
377+
use diesel::result::{Error, DatabaseErrorKind};
378+
match error {
379+
Error::DatabaseError(DatabaseErrorKind::UniqueViolation, _) => bad_request(format_args!(
379380
"crate version `{}` is already uploaded",
380381
new_version.num_no_build
381-
)));
382-
},
383-
Err(error) => return Err(error.into()),
384-
Ok(version) => version,
385-
};
382+
)),
383+
error => error.into(),
384+
}
385+
})?;
386386

387387
insert_version_owner_action(
388388
conn,

0 commit comments

Comments
 (0)