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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Requests matching against the deny list are blocked #7

Closed
lfilho opened this issue Jun 11, 2020 · 4 comments 路 Fixed by #41
Closed

Requests matching against the deny list are blocked #7

lfilho opened this issue Jun 11, 2020 · 4 comments 路 Fixed by #41

Comments

@lfilho
Copy link
Owner

lfilho commented Jun 11, 2020

First real release of a usable extension! 馃帀

Acceptance criteria:

AAC, I want to access a site with a known tracker and not be tracked

Thoughts on performance

For this MVP we'll probably will go with a simple Set (<= O(n) as per javascript Set specification).
But for the future we need to consider the best data structure and matching algorithm for the deny / allow lists. Imaging they could get pretty huge, we need to consider performing cases like the ones below. But even then we should confirm those assumptions with load tests and some data gathering about how big those lists can realistically get.

  • Adding matched trackers to a memory cache -- it's likely a webpage might call a certain tracker endpoint more than once throught their session, so we could avoid parsing the whole deny list and start looking on the cache instead.
  • choosing a different data structure other than a set: maybe shard the trackers tld -> domain -> subdomain (similar to a dns lookup); maybe a BST; maybe a Trie?
@lfilho
Copy link
Owner Author

lfilho commented Jun 12, 2020

For reference: headless automated testing seems to be indeed impossible these days: microsoft/playwright#2172

@lfilho
Copy link
Owner Author

lfilho commented Jun 13, 2020

Lost some time in here trying to test things locally (both file:// and http:// until I discovered this:

image

Hence using the great https://itty.bitty.site/ for a quick https:// content provider :-)

@lfilho
Copy link
Owner Author

lfilho commented Jun 14, 2020

馃帀 This issue has been resolved in version 1.1.0 馃帀

The release is available on:

Your semantic-release bot 馃摝馃殌

lfilho pushed a commit that referenced this issue Jun 14, 2020
Resolves #7
Resolves #8
lfilho pushed a commit that referenced this issue Jun 14, 2020
Resolves #7
Resolves #8
lfilho pushed a commit that referenced this issue Jun 14, 2020
Resolves #7
Resolves #8
@lfilho lfilho mentioned this issue Jun 14, 2020
lfilho added a commit that referenced this issue Jun 14, 2020
* refactor: move list tests to correct location

* feat: allow lists

Resolves #7
Resolves #8

Co-authored-by: FutureDuck <iwonder@duckduckgo.com>
lfilho added a commit that referenced this issue Jun 14, 2020
* refactor: move list tests to correct location

* feat: allow lists

Resolves #7
Resolves #8

Co-authored-by: FutureDuck <iwonder@duckduckgo.com>
@lfilho
Copy link
Owner Author

lfilho commented Jun 14, 2020

馃帀 This issue has been resolved in version 1.2.0 馃帀

The release is available on:

Your semantic-release bot 馃摝馃殌

lfilho added a commit that referenced this issue Jul 26, 2020
* refactor: move list tests to correct location

* feat: allow lists

Resolves #7
Resolves #8

Co-authored-by: FutureDuck <iwonder@duckduckgo.com>
lfilho added a commit that referenced this issue Jul 26, 2020
* refactor: move list tests to correct location

* feat: allow lists

Resolves #7
Resolves #8

Co-authored-by: FutureDuck <iwonder@duckduckgo.com>
lfilho added a commit that referenced this issue Jul 26, 2020
* refactor: move list tests to correct location

* feat: allow lists

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

Successfully merging a pull request may close this issue.

1 participant