Skip to content

Commit 449a716

Browse files
authored
Merge pull request #12051 from Turbo87/select-returning
Add missing `.select()` and `.returning()` calls
1 parent bc99b78 commit 449a716

File tree

13 files changed

+29
-6
lines changed

13 files changed

+29
-6
lines changed

crates/crates_io_database/src/models/action.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,10 @@ pub struct VersionOwnerAction {
5454

5555
impl VersionOwnerAction {
5656
pub async fn all(conn: &mut AsyncPgConnection) -> QueryResult<Vec<Self>> {
57-
version_owner_actions::table.load(conn).await
57+
version_owner_actions::table
58+
.select(Self::as_select())
59+
.load(conn)
60+
.await
5861
}
5962

6063
pub fn by_version<'a>(
@@ -100,6 +103,7 @@ impl NewVersionOwnerAction {
100103
pub async fn insert(&self, conn: &mut AsyncPgConnection) -> QueryResult<VersionOwnerAction> {
101104
diesel::insert_into(version_owner_actions::table)
102105
.values(self)
106+
.returning(VersionOwnerAction::as_select())
103107
.get_result(conn)
104108
.await
105109
}

crates/crates_io_database/src/models/category.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ impl Category {
5555
async move {
5656
let categories: Vec<Category> = categories::table
5757
.filter(categories::slug.eq_any(slugs))
58+
.select(Category::as_select())
5859
.load(conn)
5960
.await?;
6061

@@ -400,6 +401,7 @@ mod tests {
400401
.unwrap();
401402

402403
let cat: Category = Category::by_slug("cat1::sub1")
404+
.select(Category::as_select())
403405
.first(&mut conn)
404406
.await
405407
.unwrap();

crates/crates_io_database/src/models/cloudfront_invalidation_queue.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ impl CloudFrontInvalidationQueueItem {
3939
cloudfront_invalidation_queue::table
4040
.order(cloudfront_invalidation_queue::created_at.asc())
4141
.limit(limit)
42+
.select(Self::as_select())
4243
.load(conn)
4344
.await
4445
}

crates/crates_io_database/src/models/keyword.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ impl Keyword {
3232
pub async fn find_by_keyword(conn: &mut AsyncPgConnection, name: &str) -> QueryResult<Keyword> {
3333
keywords::table
3434
.filter(keywords::keyword.eq(lower(name)))
35+
.select(Keyword::as_select())
3536
.first(conn)
3637
.await
3738
}
@@ -55,6 +56,7 @@ impl Keyword {
5556

5657
keywords::table
5758
.filter(keywords::keyword.eq_any(&lowercase_names))
59+
.select(Keyword::as_select())
5860
.load(conn)
5961
.await
6062
}

crates/crates_io_database/src/models/team.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ impl NewTeam<'_> {
4545
.on_conflict(teams::github_id)
4646
.do_update()
4747
.set(self)
48+
.returning(Team::as_returning())
4849
.get_result(conn)
4950
.await
5051
}

crates/crates_io_database/src/models/trustpub/gitlab_config.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ mod tests {
7373
// Retrieve the config
7474
let retrieved_config = trustpub_configs_gitlab::table
7575
.filter(trustpub_configs_gitlab::id.eq(inserted_config.id))
76+
.select(GitLabConfig::as_select())
7677
.first::<GitLabConfig>(&mut conn)
7778
.await
7879
.unwrap();

src/controllers/category.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,10 @@ pub async fn find_category(
9797
) -> AppResult<Json<GetResponse>> {
9898
let mut conn = state.db_read().await?;
9999

100-
let cat: Category = Category::by_slug(&slug).first(&mut conn).await?;
100+
let cat: Category = Category::by_slug(&slug)
101+
.select(Category::as_select())
102+
.first(&mut conn)
103+
.await?;
101104
let (subcats, parents) = tokio::try_join!(
102105
cat.subcategories(&mut conn),
103106
cat.parent_categories(&mut conn).boxed(),

src/controllers/crate_owner_invitation.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,8 @@ async fn prepare_list(
196196
crate_owner_invitations::invited_user_id,
197197
))
198198
// We fetch one element over the page limit to then detect whether there is a next page.
199-
.limit(pagination.per_page + 1);
199+
.limit(pagination.per_page + 1)
200+
.select(CrateOwnerInvitation::as_select());
200201

201202
// Load and paginate the results.
202203
let mut raw_invitations: Vec<CrateOwnerInvitation> = match pagination.page {

src/controllers/keyword.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ pub async fn list_keywords(
5353
) -> AppResult<Json<ListResponse>> {
5454
use crate::schema::keywords;
5555

56-
let mut query = keywords::table.into_boxed();
56+
let mut query = keywords::table.select(Keyword::as_select()).into_boxed();
5757

5858
query = match &params.sort {
5959
Some(sort) if sort == "crates" => query.order(keywords::crates_cnt.desc()),

src/controllers/summary.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ pub async fn get_summary(state: AppState) -> AppResult<Json<SummaryResponse>> {
118118
keywords::table
119119
.order(keywords::crates_cnt.desc())
120120
.limit(10)
121+
.select(Keyword::as_select())
121122
.load(&mut conn)
122123
.boxed(),
123124
)?;

0 commit comments

Comments
 (0)