Skip to content

Expose APIs for updating a list of CRX components #37370

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
antonok-edm opened this issue Apr 5, 2024 · 4 comments · Fixed by brave/brave-core#23169
Closed

Expose APIs for updating a list of CRX components #37370

antonok-edm opened this issue Apr 5, 2024 · 4 comments · Fixed by brave/brave-core#23169
Assignees

Comments

@antonok-edm
Copy link
Collaborator

During development of brave/brave-core#21868, it was determined that Chromium doesn't expose any APIs for updating a set of CRX components in a single request.

As described in brave/brave-core#21868 (comment), we want to have something like CrxUpdateService::OnDemandUpdateMultipleIds. We'll need the ability to change priority between BACKGROUND and FOREGROUND, as well: these APIs will be used both for user-initiated update checks (e.g. brave/brave-core#22881) and automatic background update checks.

@diracdeltas
Copy link
Member

is this just for updating our internal crx's? if it can be used to update user-installed extensions then that's a fingerprinting risk since it can be unique.

@ShivanKaul
Copy link
Collaborator

The intention was only Brave-pushed components.

@mherrmann
Copy link

it was determined that Chromium doesn't expose any APIs for updating a set of CRX components in a single request.

I'm not sure if there's a difference between on-demand and background updates. But the last time I worked with the code, upstream absolutely did have an API for updating multiple components in the background with a single request. See SequentialUpdateChecker in our code. Maybe it's different for on-demand updates.

@mherrmann
Copy link

@goodov mentioned here now that upstream has APIs for batch updates for background update checks, but not for on-demand update checks. However, we disable batching with a class called SequentialUpdateChecker. I implemented this some years ago and explained the reasoning in comments in the source code.

I wonder if we really need batch update checks for on-demand updates. And maybe we can find an alternative to the SequentialUpdateChecker solution that gives us batch update checks for background updates. I outline such an alternative in brave/brave-core#23169 (review).

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

Successfully merging a pull request may close this issue.

6 participants