Skip to content

Conversation

@AndyScherzinger
Copy link
Member

@AndyScherzinger AndyScherzinger commented Dec 8, 2025

Summary

Previously, the chain of functions involved in the "update all apps" routine were not properly setup up with regards to asynchronism:

  • The promises generated by updateAll() were not awaited or managed properly
  • The update function fed to p-limit's limit() utility was returning void and not a promise, as it expects (see docs)

This was causing the mechanism driving the updates to potentially end prematurely.

This PR fixes this by:

  • Properly using async/await and Promises.all in updateAll() to ensure all promises generated by p-limit are awaited and executed completely before the function finishes.
  • Making update() return the promises it involves

This would prevent the function from exiting prematurely and ensure all updates are processed automatically.

Checklist

@AndyScherzinger AndyScherzinger added this to the Nextcloud 33 milestone Dec 8, 2025
@AndyScherzinger AndyScherzinger requested a review from a team as a code owner December 8, 2025 15:46
@AndyScherzinger AndyScherzinger added the 3. to review Waiting for reviews label Dec 8, 2025
@AndyScherzinger AndyScherzinger requested review from nfebe, sorbaugh and szaimen and removed request for a team December 8, 2025 15:46
@szaimen
Copy link
Contributor

szaimen commented Dec 8, 2025

@AndyScherzinger DCO is red. Can we still merge this?

@AndyScherzinger
Copy link
Member Author

@szaimen I fixed the DCO 👍

Signed-off-by: nextcloud-command <[email protected]>
Copy link
Contributor

@szaimen szaimen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🐘

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review Waiting for reviews

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Update all button only updates a single app

5 participants