Will Xcode 8 support plugins (-> Alcatraz)

2020-02-16 12:29发布

Apple introduced Xcode source editor extensions with Xcode 8. Will Xcode 8 still support plugins served via Alcatraz?

标签: xcode8
6条回答
【Aperson】
2楼-- · 2020-02-16 12:33

Xcode 8 prohibits code injection (the way plugins used to load) for security reasons. You can circumvent this by removing the code signing on Xcode. Both of these tools are capable of simplifying that:

https://github.com/inket/update_xcode_plugins

https://github.com/fpg1503/MakeXcodeGr8Again

To work on Xcode 8+ without removing the code signing, plugins will have to be rewritten as Xcode Source Editor Extensions. Unfortunately, the APIs for these extensions only allow for text replacement at the moment, so they are not an adequate replacement.

查看更多
对你真心纯属浪费
3楼-- · 2020-02-16 12:43

There is no support and we can't expect any. Apple decides to shut down the ecosystem around the Alcatraz package manager before they have an api ready (extensions) that is able to do what the plugins were doing before. The extensions are currently limited to the text frame which does not allow to do much.

The main reason announced by apple is security and we can now disable code signing with effort to get back the most important features that were missing in Xcode. Bad day for the community, bad decision from apple.

I also recommend the discussion on Alcatraz here: https://github.com/alcatraz/Alcatraz/issues/475 Most importantly if you want to support Alcatraz file a bug at http://bugreport.apple.com to make them aware that many people are suffering with this change

I did the same (openradar.appspot.com/28423208):

Xcode is a primary tool for the development on all Apple platforms. People can either love or hate it, the fact is it's still the most powerful development tool around.

Lots of its power and usefulness has been achieved by 3rd-party plugins, later covered by the Alcatraz project, which is the number one extension management system for Xcode, as vital and needed as for example npm is needed for Node.js. It's all based on a fair, aware community developing its helpful open-source extras and publishing them on GitHub. It's not a code-injecting ghetto targeting infecting stuff. It's a community within a community.

Xcode 8 tends to drop support for these plugins, most often being narrated as a security step in favour of preventing distribution of injected stuff. This is false; you simply can't prevent that 'cause there's always someone who finds the way. This step simply makes Xcode was less usable, complicated and not that feature-rich. There are many important plugins which developers love, contribute and move forward to make Xcode even better, tell yourself honestly, mostly even better than you could in a short period.

The community needs powerful stuff. Way more powerful than basic source-editing magic. Please reconsider this step in a spirit of community and support to your developers.

In last years, there's a move towards closing your platform. First shutting down Spotlight plugins and its great Flashlight plugins manager, which is simply great and now I need to disable Rootless to use it. Now it's Xcode plugins. You're doing more and more to make developers and power users feel sad and not having their computing device in their hands.

There's a detailed discussion on Alcatraz repo, it says everything: github.com/alcatraz/Alcatraz/issues/475

I'm attaching a list of great plugins I simply can't spend a day without: AutoHighlightSymbol - Add highlights to the currently selected token ClangFormat – code formatter DerivedData Exterminator – daily need getting rid or bad stuff FuzzyAutocomplete – name says it all, still more powerful than Xcode completion KZLinkedConsole - be able to click on a link in the console to open the relevant file and be faster to debug PreciseCoverage - nicer gui than xcode provides to view the coverage XcodeColors - shows colors in the console depending on log level (how else should a console be used?)

Most of them are not source code-related, thus deserve having a way to be loaded and working like a charm again.

If you do not make a fast step to support your community i'm sure we will find another platform to work with.

查看更多
Explosion°爆炸
4楼-- · 2020-02-16 12:43

Seems like this should work. Found some answers here: https://github.com/alcatraz/Alcatraz/issues/475 The key seems to be to removing code signing in order to get existing plugins to work.

查看更多
走好不送
5楼-- · 2020-02-16 12:49

I've filed a report on rdar, do not hesitate to express your mind as well:

Xcode is a primary tool for the development on all Apple platforms. People can either love or hate it, the fact is it's still the most powerful development tool around.

Lots of its power and usefulness has been achieved by 3rd-party plugins, later covered by the Alcatraz project, which is the number one extension management system for Xcode, as vital and needed as for example npm is needed for Node.js. It's all based on a fair, aware community developing its helpful open-source extras and publishing them on GitHub. It's not a code-injecting ghetto targeting infecting stuff. It's a community within a community.

Xcode 8 tends to drop support for these plugins, most often being narrated as a security step in favour of preventing distribution of injected stuff. This is false; you simply can't prevent that 'cause there's always someone who finds the way. This step simply makes Xcode was less usable, complicated and not that feature-rich. There are many important plugins which developers love, contribute and move forward to make Xcode even better, tell yourself honestly, mostly even better than you could in a short period.

The community needs powerful stuff. Way more powerful than basic source-editing magic. Please reconsider this step in a spirit of community and support to your developers.

In last years, there's a move towards closing your platform. First shutting down Spotlight plugins and its great Flashlight plugins manager, which is simply great and now I need to disable Rootless to use it. Now it's Xcode plugins. You're doing more and more to make developers and power users feel sad and not having their computing device in their hands.

There's a detailed discussion on Alcatraz repo, it says everything: https://github.com/alcatraz/Alcatraz/issues/475

I'm attaching a list of great plugins I simply can't spend a day without:

AxeMode – Xcode issues patching Backlight – active line highlighting ClangFormat – code formatter DerivedData Exterminator – daily need getting rid or bad stuff FuzzyAutocomplete – name says it all, still more powerful than Xcode completion HighlightSelectedString MCLog – console log filtering, including regexes OMColorSense Polychromatic – variables colouring, cute stuff RSImageOptimPlugin – processing PNG files before committing SCXcodeMinimap – love this SublimeText-thingy! XCFixin_FindFix – fixing Find features XcodeRefactoringPlus – patching Refactor functionality, still buggy, but less than Xcode without plugin XToDo – TODOs collection ZLGotoSandbox – 'cause dealing with your folders would be a hell without it

Most of them are not source code-related, thus deserve having a way to be loaded and working like a charm again.

查看更多
Viruses.
6楼-- · 2020-02-16 12:50

You can certainly load all your plugins by recode signing Xcode 8.0. All credits to the XVim team. They seemed to solve this problem. https://github.com/XVimProject/XVim/blob/master/INSTALL_Xcode8.md The Most Important Step From The Solution

查看更多
家丑人穷心不美
7楼-- · 2020-02-16 13:00

Apparently not :'(

https://github.com/alcatraz/Alcatraz/issues/475

We have to wait until someone convert the plugins into the new Xcode Extensions

查看更多
登录 后发表回答