7
7
use crate :: controllers:: frontend_prelude:: * ;
8
8
9
9
use crate :: models:: VersionOwnerAction ;
10
- use crate :: views:: { EncodableDependency , EncodablePublicUser , EncodableVersion } ;
10
+ use crate :: views:: { EncodableDependency , EncodableVersion } ;
11
11
12
12
use super :: { extract_crate_name_and_semver, version_and_crate} ;
13
13
@@ -26,32 +26,20 @@ pub fn dependencies(req: &mut dyn RequestExt) -> EndpointResult {
26
26
let deps = deps
27
27
. into_iter ( )
28
28
. map ( |( dep, crate_name) | EncodableDependency :: from_dep ( dep, & crate_name) )
29
- . collect ( ) ;
29
+ . collect :: < Vec < _ > > ( ) ;
30
30
31
- #[ derive( Serialize ) ]
32
- struct R {
33
- dependencies : Vec < EncodableDependency > ,
34
- }
35
- Ok ( req. json ( & R { dependencies : deps } ) )
31
+ Ok ( req. json ( & json ! ( { "dependencies" : deps } ) ) )
36
32
}
37
33
38
34
/// Handles the `GET /crates/:crate_id/:version/authors` route.
39
35
pub fn authors ( req : & mut dyn RequestExt ) -> EndpointResult {
40
36
// Currently we return the empty list.
41
37
// Because the API is not used anymore after RFC https://github.com/rust-lang/rfcs/pull/3052.
42
- #[ derive( Serialize ) ]
43
- struct R {
44
- users : Vec < EncodablePublicUser > ,
45
- meta : Meta ,
46
- }
47
- #[ derive( Serialize ) ]
48
- struct Meta {
49
- names : Vec < String > ,
50
- }
51
- Ok ( req. json ( & R {
52
- users : vec ! [ ] ,
53
- meta : Meta { names : vec ! [ ] } ,
54
- } ) )
38
+
39
+ Ok ( req. json ( & json ! ( {
40
+ "users" : [ ] ,
41
+ "meta" : { "names" : [ ] } ,
42
+ } ) ) )
55
43
}
56
44
57
45
/// Handles the `GET /crates/:crate/:version` route.
@@ -65,11 +53,6 @@ pub fn show(req: &mut dyn RequestExt) -> EndpointResult {
65
53
let published_by = version. published_by ( & conn) ;
66
54
let actions = VersionOwnerAction :: by_version ( & conn, & version) ?;
67
55
68
- #[ derive( Serialize ) ]
69
- struct R {
70
- version : EncodableVersion ,
71
- }
72
- Ok ( req. json ( & R {
73
- version : EncodableVersion :: from ( version, & krate. name , published_by, actions) ,
74
- } ) )
56
+ let version = EncodableVersion :: from ( version, & krate. name , published_by, actions) ;
57
+ Ok ( req. json ( & json ! ( { "version" : version } ) ) )
75
58
}
0 commit comments