11use anyhow:: Context ;
22use crates_io:: models:: ApiToken ;
3- use crates_io:: tasks:: spawn_blocking;
43use crates_io:: util:: token:: HashedToken ;
54use crates_io:: { db, models:: User } ;
6- use diesel_async:: async_connection_wrapper:: AsyncConnectionWrapper ;
7- use diesel_async:: AsyncPgConnection ;
85
96#[ derive( clap:: Parser , Debug ) ]
107#[ command(
@@ -19,18 +16,13 @@ pub struct Opts {
1916}
2017
2118pub async fn run ( opts : Opts ) -> anyhow:: Result < ( ) > {
22- let conn = db:: oneoff_connection ( )
19+ let mut conn = db:: oneoff_connection ( )
2320 . await
2421 . context ( "Failed to connect to the database" ) ?;
2522
26- let mut conn = AsyncConnectionWrapper :: < AsyncPgConnection > :: from ( conn) ;
27-
28- spawn_blocking ( move || {
29- let token = HashedToken :: parse ( & opts. api_token ) ?;
30- let token = ApiToken :: find_by_api_token ( & mut conn, & token) ?;
31- let user = User :: find ( & mut conn, token. user_id ) ?;
32- println ! ( "The token belongs to user {}" , user. gh_login) ;
33- Ok ( ( ) )
34- } )
35- . await
23+ let token = HashedToken :: parse ( & opts. api_token ) ?;
24+ let token = ApiToken :: async_find_by_api_token ( & mut conn, & token) . await ?;
25+ let user = User :: async_find ( & mut conn, token. user_id ) . await ?;
26+ println ! ( "The token belongs to user {}" , user. gh_login) ;
27+ Ok ( ( ) )
3628}
0 commit comments