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

When allowing "All" the requests for a site, there are still requests that get blocked #510

Closed
Mikey1993 opened this issue Jul 19, 2015 · 6 comments

Comments

@Mikey1993
Copy link
Contributor

Steps to reproduce:

  1. Enter: http://sitexw.fr/fuckadblock/
  2. Allow the global (doesn't matter if allowing per site) "All" cell (mark with green) and block (mark the cell with red) all the "3rd-party scripts" globally (also doesn' matter is toggled per site).
  3. Observe that there are still some request blocked.

An important note: If then (after following step 2 above) marking the per site 3rd-party scripts a no-op, there are still requests that get blocked, which should not happen if I understant the "All" row correctly.

Seems like the "All" row isn't getting the right importance in the blocking pipeline.

Reproduced on uBlock 0.9.9.3 and 1.0.0.0 with both Chrome and Firefox.

@Mikey1993
Copy link
Contributor Author

@gwarser So how would you explain that when marking the per site "3rd-party scripts" with a no-op (when the global "3rd-party scripts" is marked red), combined with the "All" cell marked green, I still get some requests going in? per site rules should always take precedence.

So, to recap, the "All" row is the least important in the Dynamic Filtering rules, I get that, but it should not be inferior to the static rules... right?

@gorhill
Copy link
Owner

gorhill commented Jul 19, 2015

  1. Observe that there are still some request blocked.

By design. The 3rd-party scripts cell is more specific, so its rule overrides broader all cell.

So how would you explain that when marking the per site "3rd-party scripts" with a no-op (when the global "3rd-party scripts" is marked red), combined with the "All" cell marked green, I still get some requests going in?

What does "requests going in" mean? I noop'ed the local 3rd-party scripts cell after step 3, and the 3rd-party scripts on the page where neither allowed or blocked through dynamic filtering rules. google-analytics.com got blocked by a static filter.

In the following picture:

a

Bottom part is your step 1-3:

  • * * * allow
  • * * 3p-script block

Top part is when locally noop'ing 3rd-party scripts:

  • sitexw.fr * 3p-script noop

@Mikey1993
Copy link
Contributor Author

Mikey1993 commented Jul 20, 2015

@gorhill You are right.. the 3rd-party scripts get allowed/disabled as it should per no-op'ing, my bad..
But why is the "All" row isn't affecting the static rules? I would expect it to do so..

@gorhill
Copy link
Owner

gorhill commented Jul 20, 2015

But why is the "All" row isn't affecting the static rules?

It is, unless a narrower rule says to disregard dynamic filtering, which is what noop is about.

@Mikey1993
Copy link
Contributor Author

Yes, I see how it all fits now.
Sorry for bothering for nothing.

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

No branches or pull requests

3 participants