You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As of September 2021, we have two implementations of declarativeNetRequest - Chrome and Safari. Sadly those implementations are quite different. This issue focuses on the Rules only.
Big issue for content blockers is a format in which the block rule condition should be expressed. Chrome seem to favor urlFilter but Safari only allows regexFilter. regexFilter on the other hand is heavily limited on Chrome to just a 1000 rules specified by MAX_NUMBER_OF_REGEX_RULES (this is likely due to poor performance of Chrome's blocking engine).
For that reason, content blockers have to generate two sets of rules sets, one for Chrome and one for Safari, which is another difference and add up to the cost extension developers have to pay due to the enforcement of declarativeNetRequest.
The text was updated successfully, but these errors were encountered:
Changed the title from "standardize" to "specify" as standardization is outside this group's charter. We can discuss, align on, and even produce technical reports that specify these rules, but standardization is explicitly outside our purview.
As of September 2021, we have two implementations of
declarativeNetRequest
- Chrome and Safari. Sadly those implementations are quite different. This issue focuses on the Rules only.References:
Big issue for content blockers is a format in which the block rule condition should be expressed. Chrome seem to favor
urlFilter
but Safari only allowsregexFilter
.regexFilter
on the other hand is heavily limited on Chrome to just a 1000 rules specified by MAX_NUMBER_OF_REGEX_RULES (this is likely due to poor performance of Chrome's blocking engine).For that reason, content blockers have to generate two sets of rules sets, one for Chrome and one for Safari, which is another difference and add up to the cost extension developers have to pay due to the enforcement of
declarativeNetRequest
.The text was updated successfully, but these errors were encountered: