Opened on 01/29/2019 at 04:56:23 AM
Closed on 03/05/2019 at 09:18:16 AM
Last modified on 03/12/2019 at 06:22:07 AM
#7243 closed change (fixed)
Update adblockpluscore dependency to hg:91cd83c4c272
Reported by: | mjethani | Assignee: | mjethani |
---|---|---|---|
Priority: | Unknown | Milestone: | Adblock-Plus-3.5-for-Chrome-Opera-Firefox |
Module: | Platform | Keywords: | |
Cc: | hfiguiere, amr, arthur | Blocked By: | |
Blocking: | Platform: | Unknown / Cross platform | |
Ready: | no | Confidential: | no |
Tester: | Unknown | Verified working: | yes |
Review URL(s): |
Description (last modified by mjethani)
Background
We have made a few more significant changes to the next branch of adblockpluscore since the last dependency update (#7054).
Here are the relevant changes:
- Issue 7067 - Allow $rewrite to internal resources
- Issue 7245 - Move protocol keyword to end of candidate list
- Issue 7244 - Maintain cache of domain-specific style sheets
- Issue 7179 - Add function to return all matching filters
- Issue 7235 - Added Korean easylist to default subscriptions
- Issue 7232 - Move third-party request check into adblockpluscore
- Issue 7209 - Treat patterns with trailing separators as literals
- Issue 7208 - Drop superfluous wildcards before processing pattern
- Issue 7202 - Add hasListeners method to EventEmitter
- Issue 7178 - Remove filter order randomization
What to change
Update the adblockpluscore dependency to hg:91cd83c4c272 git:0798938.
In lib/hitLogger.js, use the new hasListeners method of EventEmitter (#7202).
Use the isThirdParty function from adblockpluscore/lib/domain.js (#7232) in lib/*. Delete lib/tldjs.js and lib/publicSuffixList.js. Delete the third-party checks in qunit/tests/url.js.
In lib/csp.js, call the new search method of defaultMatcher (#7179) to get all the matching CSP filters and inject the corresponding headers into the response.
Notes for filter list authors
The order of filters is no longer randomized (#7178). If an existing filter is superseding your user-defined filter, restarting the extension is not going to change this. We are looking into ways to prioritize user-defined filters (#7248).
This has usually been an issue for CSP filters. After the changes here, all CSP filters that match a document are applied. All matching blocking CSP filters will also be logged in the DevTools panel.
The $rewrite filter option can now redirect to internal resources like blank HTML/CSS/JavaScript, 1x1 transparent (tracking) GIF/PNG, and so on (#7067), though this is currently experimental.
Hints for testers
See #7178, #7208, #7209, #7235, #7244, #7245, and #7067 for testing hints related to those changes in adblockpluscore.
For the additional changes here:
- Make sure the DevTools panel is working in general and that filter hits are getting logged as expected.
- For CSP filters, make sure all matching CSP filters are applied. For example, if there are two filters /foo/*$csp=script-src 'none' and /foo/*$csp=img-src 'none', then both scripts and images should be blocked entirely on a document whose URL matches the pattern /foo/*.
- Multiple CSP filter hits should get logged in the DevTools panel. If there are two filters /foo/*$csp=img-src 'none' and /bar/*$csp=img-src 'none', then on the document https://example.com/foo/bar/index.html both filters should get hit and both should get logged in the DevTools panel.
- In the case of whitelist CSP filters, only the first matching filter should get logged in the DevTools panel. For example, with @@/foo/*$csp and @@/bar/*$csp, only one of them should get hit and logged in the DevTools panel on the document https://example.com/foo/bar/index.html.
- Check that the $third-party filter option is working. If there's a filter like /foo/*$third-party then it should block a request to https://example.com/foo/bar/ only if the request is coming from a document not loaded from example.com. If the flag is flipped instead so that the filter looks like /foo/*$~third-party, then it should not block the request unless it is coming from example.com.
Attachments (0)
Change History (13)
comment:3 Changed on 01/29/2019 at 04:26:17 PM by hfiguiere
- Cc hfiguiere added
comment:4 Changed on 01/30/2019 at 07:12:44 PM by mjethani
- Description modified (diff)
- Summary changed from Update adblockpluscore dependency to hg:e26e122e0702 to Update adblockpluscore dependency to hg:91cd83c4c272
comment:6 Changed on 01/31/2019 at 04:29:19 AM by abpbot
comment:8 Changed on 01/31/2019 at 06:12:11 AM by mjethani
- Cc amr arthur added
comment:10 Changed on 01/31/2019 at 06:57:57 AM by mjethani
- Description modified (diff)
comment:11 Changed on 03/05/2019 at 09:18:16 AM by mjethani
- Milestone set to Adblock-Plus-3.5-for-Chrome-Opera-Firefox
- Resolution set to fixed
- Status changed from new to closed
comment:12 Changed on 03/05/2019 at 09:18:26 AM by mjethani
- Owner set to mjethani
comment:13 Changed on 03/12/2019 at 06:22:07 AM by rscott
- Verified working set
A commit referencing this issue has landed:
Issue 7243 - Update adblockpluscore dependency to hg:e26e122e0702