Skip to content

Commit 96904dd

Browse files
committed
EncodableApiTokenWithToken: Add crate/endpoint_scopes fields
1 parent 3c7cebe commit 96904dd

4 files changed

+16
-0
lines changed

src/tests/routes/me/tokens/snapshots/all__routes__me__tokens__create__create_token_success.snap

+2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ source: src/tests/routes/me/tokens/create.rs
33
expression: response.into_json()
44
---
55
api_token:
6+
crate_scopes: ~
67
created_at: "[datetime]"
8+
endpoint_scopes: ~
79
id: "[id]"
810
last_used_at: "[datetime]"
911
name: bar

src/tests/routes/me/tokens/snapshots/all__routes__me__tokens__create__create_token_with_null_scopes.snap

+2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ source: src/tests/routes/me/tokens/create.rs
33
expression: response.into_json()
44
---
55
api_token:
6+
crate_scopes: ~
67
created_at: "[datetime]"
8+
endpoint_scopes: ~
79
id: "[id]"
810
last_used_at: "[datetime]"
911
name: bar

src/tests/routes/me/tokens/snapshots/all__routes__me__tokens__create__create_token_with_scopes.snap

+5
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,12 @@ source: src/tests/routes/me/tokens/create.rs
33
expression: response.into_json()
44
---
55
api_token:
6+
crate_scopes:
7+
- tokio
8+
- tokio-*
69
created_at: "[datetime]"
10+
endpoint_scopes:
11+
- publish-update
712
id: "[id]"
813
last_used_at: "[datetime]"
914
name: bar

src/views.rs

+7
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ use chrono::NaiveDateTime;
22
use url::Url;
33

44
use crate::github;
5+
use crate::models::token::{CrateScope, EndpointScope};
56
use crate::models::{
67
Category, Crate, CrateOwnerInvitation, CreatedApiToken, Dependency, DependencyKind, Keyword,
78
Owner, ReverseDependency, Team, TopVersions, User, Version, VersionDownload,
@@ -477,6 +478,10 @@ pub struct EncodableApiTokenWithToken {
477478
pub created_at: NaiveDateTime,
478479
#[serde(with = "rfc3339::option")]
479480
pub last_used_at: Option<NaiveDateTime>,
481+
/// `None` or a list of crate scope patterns (see RFC #2947)
482+
pub crate_scopes: Option<Vec<CrateScope>>,
483+
/// A list of endpoint scopes or `None` for the `legacy` endpoint scope (see RFC #2947)
484+
pub endpoint_scopes: Option<Vec<EndpointScope>>,
480485
}
481486

482487
impl From<CreatedApiToken> for EncodableApiTokenWithToken {
@@ -488,6 +493,8 @@ impl From<CreatedApiToken> for EncodableApiTokenWithToken {
488493
revoked: token.model.revoked,
489494
created_at: token.model.created_at,
490495
last_used_at: token.model.last_used_at,
496+
crate_scopes: token.model.crate_scopes,
497+
endpoint_scopes: token.model.endpoint_scopes,
491498
}
492499
}
493500
}

0 commit comments

Comments
 (0)