controllers/krate/owners: Convert remaining endpoints to async/await #10049
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
These were the last two API endpoints that were still using synchronous database operations. With this PR the two endpoints are now using
diesel-asyncqueries as well, allowing us to start the cleanup process of removing all of the duplicate sync functions.Here is what GitHub Copilot has to say about the PR: 😅
This pull request includes several changes to the
src/controllers/krate/owners.rs,src/models/crate_owner_invitation.rs,src/models/krate.rs,src/models/owner.rs,src/models/team.rs, andsrc/models/user.rsfiles to transition from synchronous to asynchronous database operations usingdiesel_async.Key changes include:
Transition to Asynchronous Database Operations:
src/controllers/krate/owners.rs: Replaced synchronousdiesel::RunQueryDslwithdiesel_async::RunQueryDsland removedspawn_blockingin favor of direct async calls.src/models/crate_owner_invitation.rs: Updated thecreatemethod and related transaction logic to use async/await patterns.src/models/krate.rs: Modifiedowner_addandowner_removemethods to be asynchronous.src/models/owner.rs: Convertedfind_or_create_by_loginto an async function.src/models/team.rs: Updatedcreate_or_updateandcreate_or_update_github_teammethods to use async/await.src/models/user.rs: Made theowningmethod asynchronous.