Skip to content

Commit 477c73c

Browse files
committed
Have version encode take an optional User that published the crate
Always pass None for the moment
1 parent 890afcc commit 477c73c

File tree

6 files changed

+12
-13
lines changed

6 files changed

+12
-13
lines changed

src/controllers/krate/metadata.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ pub fn show(req: &mut dyn Request) -> CargoResult<Response> {
148148
),
149149
versions: versions
150150
.into_iter()
151-
.map(|v| v.encodable(&krate.name))
151+
.map(|v| v.encodable(&krate.name, None))
152152
.collect(),
153153
keywords: kws.into_iter().map(|k| k.encodable()).collect(),
154154
categories: cats.into_iter().map(|k| k.encodable()).collect(),
@@ -189,7 +189,7 @@ pub fn versions(req: &mut dyn Request) -> CargoResult<Response> {
189189
versions.sort_by(|a, b| b.num.cmp(&a.num));
190190
let versions = versions
191191
.into_iter()
192-
.map(|v| v.encodable(crate_name))
192+
.map(|v| v.encodable(crate_name, None))
193193
.collect();
194194

195195
#[derive(Serialize)]
@@ -221,7 +221,7 @@ pub fn reverse_dependencies(req: &mut dyn Request) -> CargoResult<Response> {
221221
.select((versions::all_columns, crates::name))
222222
.load::<(Version, String)>(&*conn)?
223223
.into_iter()
224-
.map(|(version, krate_name)| version.encodable(&krate_name))
224+
.map(|(version, krate_name)| version.encodable(&krate_name, None))
225225
.collect();
226226

227227
#[derive(Serialize)]

src/controllers/user/me.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ pub fn updates(req: &mut dyn Request) -> CargoResult<Response> {
6868

6969
let versions = data
7070
.into_iter()
71-
.map(|((version, crate_name), _)| version.encodable(&crate_name))
71+
.map(|((version, crate_name), _)| version.encodable(&crate_name, None))
7272
.collect();
7373

7474
#[derive(Serialize)]

src/controllers/version/deprecated.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ pub fn index(req: &mut dyn Request) -> CargoResult<Response> {
2828
.filter(versions::id.eq(any(ids)))
2929
.load::<(Version, String)>(&*conn)?
3030
.into_iter()
31-
.map(|(version, crate_name)| version.encodable(&crate_name))
31+
.map(|(version, crate_name)| version.encodable(&crate_name, None))
3232
.collect();
3333

3434
#[derive(Serialize)]
@@ -56,6 +56,6 @@ pub fn show_by_id(req: &mut dyn Request) -> CargoResult<Response> {
5656
version: EncodableVersion,
5757
}
5858
Ok(req.json(&R {
59-
version: version.encodable(&krate.name),
59+
version: version.encodable(&krate.name, None),
6060
}))
6161
}

src/controllers/version/metadata.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,6 @@ pub fn show(req: &mut dyn Request) -> CargoResult<Response> {
7474
version: EncodableVersion,
7575
}
7676
Ok(req.json(&R {
77-
version: version.encodable(&krate.name),
77+
version: version.encodable(&krate.name, None),
7878
}))
7979
}

src/models/version.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use diesel::prelude::*;
55

66
use crate::util::{human, CargoResult};
77

8-
use crate::models::{Crate, Dependency};
8+
use crate::models::{Crate, Dependency, User};
99
use crate::schema::*;
1010
use crate::views::{EncodableVersion, EncodableVersionLinks};
1111

@@ -38,7 +38,7 @@ pub struct NewVersion {
3838
}
3939

4040
impl Version {
41-
pub fn encodable(self, crate_name: &str) -> EncodableVersion {
41+
pub fn encodable(self, crate_name: &str, published_by: Option<User>) -> EncodableVersion {
4242
let Version {
4343
id,
4444
num,
@@ -49,7 +49,6 @@ impl Version {
4949
yanked,
5050
license,
5151
crate_size,
52-
published_by,
5352
..
5453
} = self;
5554
let num = num.to_string();
@@ -71,7 +70,7 @@ impl Version {
7170
authors: format!("/api/v1/crates/{}/{}/authors", crate_name, num),
7271
},
7372
crate_size,
74-
published_by,
73+
published_by: published_by.map(|pb| pb.encodable_public()),
7574
}
7675
}
7776

src/views/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ pub struct EncodableVersion {
201201
pub license: Option<String>,
202202
pub links: EncodableVersionLinks,
203203
pub crate_size: Option<i32>,
204-
pub published_by: Option<i32>,
204+
pub published_by: Option<EncodablePublicUser>,
205205
}
206206

207207
#[derive(Serialize, Deserialize, Debug)]
@@ -305,7 +305,7 @@ mod tests {
305305
authors: "".to_string(),
306306
},
307307
crate_size: Some(1234),
308-
published_by: Some(1),
308+
published_by: None,
309309
};
310310
let json = serde_json::to_string(&ver).unwrap();
311311
assert!(json

0 commit comments

Comments
 (0)