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

Safari support? #92

Open
bdougherty opened this issue Jan 13, 2021 · 6 comments
Open

Safari support? #92

bdougherty opened this issue Jan 13, 2021 · 6 comments
Assignees
Labels
missing API The required API is missing

Comments

@bdougherty
Copy link

Now that Safari supports the WebExtension API, do you think it would be possible to offer a Safari version? Happy to help if I can.

@finngaida
Copy link

If you have Xcode installed you can create a Safari extension quite easily yourself by running

xcrun safari-web-extension-converter Addon

There are some more detailed instructions here https://bartsolutions.github.io/2020/11/20/safari-extension/

@adammenges
Copy link

Great idea. Would be sweet to get this in and listed.

@Joilence
Copy link

Joilence commented May 6, 2021

Unfortunately, the current latest Safari 14.1 does not support WebRequestBlocking. It seems to be not possible to convert. Saw this issue in other extensions that try to move to Safari, too.

@KevinRoebert
Copy link
Member

Unfortunately, the current latest Safari 14.1 does not support WebRequestBlocking. It seems to be not possible to convert. Saw this issue in other extensions that try to move to Safari, too.

Yes, that's right. Unfortunately, the WebRequestBlocking is the core API required by ClearURLs. We have to wait until Apple will implement this.

@rakleed
Copy link

rakleed commented Jun 11, 2021

@KevinRoebert Safari 15 will add support for declarativeNetRequest. Can this help you?

@KevinRoebert
Copy link
Member

@KevinRoebert Safari 15 will add support for declarativeNetRequest. Can this help you?

Unfortunately, this does not help. This is Chrome's webRequestBlocking replacement for the WebExtentensions v3 API. This only allows you to create restricted filter lists that no longer allow individual treatment. So you can no longer remove (or add) elements from a URL, just block a request entirely. However, this is useless for ClearURLs (and also many other add-ons like uBlock or NoScript). We don't want to discard an entire request due to a (restricted) filter but process this request to remove possible "harmful" content from it.

This topic was also covered on Reddit by gorhill: https://www.reddit.com/r/uBlockOrigin/comments/hdz0bo/will_ublock_origin_back_to_macos_big_sur/fvoc7wk/

This may also make it impossible to use addons like ClearURLs, uBlock, or NoScript in future versions of Chrome.

We can only hope that Apple will implement the webRequestBlocking API. Until that happens, I can't provide the addon for Safari.

Another problem would be the exorbitant costs for developers. 99€ per year to deploy a free!!! addon. But that would be a problem that could be addressed once/if Apple provides the necessary API.

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

No branches or pull requests

6 participants