
Safari Extensions JS - bangonkeyboard
https://developer.apple.com/documentation/safariextensions
======
slowmovintarget
"Safari Extensions" have been deprecated in favor of "Safari App Extensions".
Not sure what the major differences are, but a quick site surf turned this up:
[https://developer.apple.com/documentation/safariservices/saf...](https://developer.apple.com/documentation/safariservices/safari_app_extensions/converting_a_safari_extension_to_a_safari_app_extension)

hmm... "distributed through the app store".

~~~
bangonkeyboard
Safari App Extensions are less capable in various ways than Safari Extensions,
and many currently available and widely used JS extensions cannot be converted
to them.

As an example: uBlock Origin is a Safari Extension that simply could not
function as an App Extension due to lack of APIs. It is present in the Safari
Extensions Gallery, which is deprecated in Safari 12. However, the current
version of uBlock Origin is broken. The only fix at this time is to install an
older, developer-signed release from the homepage, which is physically
impossible in Safari 12.

------
bangonkeyboard
The title was changed from _" Apple Deprecates Safari Extensions in Safari 12
and macOS 10.14 Mojave"_.

Using the original page title buries this news.

------
bjornstar
This makes me sad. It was relatively easy to maintain a cross-browser
extension that supported Chrome, Firefox, Opera and Safari. All browsers
roughly supported the same WebExtension like format and I could use the same
code with relatively few browser specific paths.

I don't understand the move towards requiring xcode instead of going full
WebExtension support. I'm scared that I will be unable to support Safari users
without a macbook in the future.

------
ethansinjin
In my opinion, this move makes a lot of sense. The Safari Extensions Gallery
was laughably outdated, similar to the Dashboard Widgets Gallery:
[https://www.apple.com/downloads/dashboard/](https://www.apple.com/downloads/dashboard/)

Switching to App Extensions brings Safari Extensions closer to how they behave
on iOS.

------
sctb
We've updated the link from
[https://developer.apple.com/library/archive/documentation/To...](https://developer.apple.com/library/archive/documentation/Tools/Conceptual/SafariExtensionGuide/Introduction/Introduction.html)
to this, which has more detail.

