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

Use plaintext list adblock components #25363

Closed
antonok-edm opened this issue Sep 13, 2022 · 0 comments · Fixed by brave/brave-core#15077
Closed

Use plaintext list adblock components #25363

antonok-edm opened this issue Sep 13, 2022 · 0 comments · Fixed by brave/brave-core#15077
Assignees
Labels
dev-concern enhancement feature/components feature/shields/adblock Blocking ads & trackers with Shields feature/shields The overall Shields feature in Brave. OS/Android Fixes related to Android browser functionality OS/Desktop QA/No release-notes/include

Comments

@antonok-edm
Copy link
Collaborator

antonok-edm commented Sep 13, 2022

It's impossible to properly mutate a compiled adblock DAT, which limits the ability for filter lists to be merged into one engine. Generally, the engine should be treated as a "write-once" data structure. Thus, as part of progress towards #5461, lists will need to be shipped in plaintext form. They can still use the component updater as a FiltersProvider backend.

The component updater gained support for plaintext components in brave/brave-core-crx-packager#460.

Brief analysis reveals that the plaintext format is much more compact than the compiled DAT, even after compression, which will provide significant bandwidth savings. This also gives us the ability to roll out new adblock features faster, because backwards compatibility of the serialized format will no longer be a concern.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dev-concern enhancement feature/components feature/shields/adblock Blocking ads & trackers with Shields feature/shields The overall Shields feature in Brave. OS/Android Fixes related to Android browser functionality OS/Desktop QA/No release-notes/include
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants