Skip to content
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

Ad-blocking no longer works on Opera ("Error: Internal error" while updating DNR lists) #1554

Open
philipp-classen opened this issue Apr 22, 2024 · 3 comments
Assignees
Labels
Bug Something isn't working Opera Opera related issues v10 Applies to Ghostery Extension v10.x

Comments

@philipp-classen
Copy link
Member

TL;DR: If you are on Opera and Ad-Blocking does not work, try to uninstall and reinstall Ghostery.


On Opera, a profile can enter a corrupt state where the DNR lists cannot be enabled:

dnr.js:49 DNR - Error while updating lists: Error: Internal error.

This is the API call that fails:

await chrome.declarativeNetRequest.updateEnabledRulesets({

The internal error could be reproduced by this statement as well:

await chrome.declarativeNetRequest.updateEnabledRulesets({  enableRulesetIds: 'ads' });

It appears to be a bug in the browser. The only workaround that we have found is to uninstall the extension and reinstall it. The DNR rules are static rules (part of the release). Since we failed to reproduce it yet with a fresh profile, it might be triggered by an extension update.

Opera: 109.0.5097.45 (Arch Linux)

@philipp-classen philipp-classen added Bug Something isn't working v10 Applies to Ghostery Extension v10.x Opera Opera related issues labels Apr 22, 2024
@philipp-classen philipp-classen self-assigned this Apr 22, 2024
@philipp-classen philipp-classen pinned this issue Apr 22, 2024
@philipp-classen
Copy link
Member Author

philipp-classen commented Apr 22, 2024

Could be this bug: https://issues.chromium.org/issues/40285683 (fixed one month ago in Chrome Canary)

Note: Opera is a Chromium fork, so I assume it could be affected by the bug. On Chrome and Edge (the other Chromium platforms), Ghostery is still using Manifest V2. That is why it affects only Opera (and possibly Yandex?!) at the moment.

@philipp-classen
Copy link
Member Author

For those who are affected: until it is fixed in the browser, there is nothing that you can do instead of uninstalling and reinstalling the extension.

On a broken profile, I got now a situation where the page https://www.idealo.de/ is unusable (a modal dialog being over the whole page, making it non-interactive). But this problem does not occur on the other Opera profile, where I did reinstall the extension.

@philipp-classen
Copy link
Member Author

philipp-classen commented May 10, 2024

Since we just a release: on my broken, updating the adblocker engine forced a reset.

Based on that knowledge, I expect that if Opera ships the bugfix (from the Chromium code base), the problem should eventually vanish, even without user action.

(But to avoid confusion: I did not say that the problem is now solved. That my profile is working now only proves that it can recover from that corrupted state. However, as long as Opera has the bug, each extension update also risks to corrupt profiles. It is out of our control; but since it is fixed on Chromium now, I expect it to eventually become a non-issue.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working Opera Opera related issues v10 Applies to Ghostery Extension v10.x
Projects
None yet
Development

No branches or pull requests

1 participant