Skip to content
This repository was archived by the owner on Sep 4, 2018. It is now read-only.
This repository was archived by the owner on Sep 4, 2018. It is now read-only.

Xcode 8 won't load plug-ins #475

@0xced

Description

@0xced
Contributor

Joe Groff tweet

@fzwob Xcode 8 uses library validation. It won't load in-process plugins anymore.

That’s very bad news for Alcatraz and the current plug-ins ecosystem. 😢

Activity

RobertGummesson

RobertGummesson commented on Jun 14, 2016

@RobertGummesson

Yep, looks like the era of Xcode plug-ins is over. 😥 I will personally be looking into porting my ones and hope the extensions are not too limited.

alanhamlett

alanhamlett commented on Jun 14, 2016

@alanhamlett
Contributor

I'm looking for docs on creating Xcode Source Editor Extensions... anyone find them yet?

Xcode 8 adds support for Xcode Source Editor Extensions: Application Extensions provide additional
commands in the Xcode Editor menu. These extensions can manipulate both text and selections. To
create them, use the new Xcode Source Editor Extension target template in the macOS Application
Extensions section when creating a project. (23194974)

I don't have the Xcode Source Editor Extension target template in my Xcode 8 Beta, and these headers are the only thing Google found on the subject:
https://gist.github.com/OdNairy/62de23d6627d518c38fed078a0581046

Also, this video about Using and Extending the Xcode Source Editor:
https://developer.apple.com/videos/play/wwdc2016/414/

0xced

0xced commented on Jun 14, 2016

@0xced
ContributorAuthor

To create an Xcode Source Editor Extension, you have to add a new target to a project. The Xcode Source Editor Extension template is not available when creating a project.

Unfortunately, as its name imply, a Source Editor Extension only has access to the source code editor part of Xcode. So only a few plug-ins can be rewritten with the new official extension API. 😢

fzwo

fzwo commented on Jun 14, 2016

@fzwo

In his tweets to me, Joe Groff asked for radars for missing functionality, implying that they are interested in giving us a powerful system. So I’d invite every dev whose plug-in is not supported under the new system to file radars.

f.

Am 14.06.2016 um 10:59 schrieb Cédric Luthi notifications@github.com:

To create an Xcode Source Editor Extension, you have to add a new target to a project.

Unfortunately, as its name imply, a Source Editor Extension only has access to the source code editor part of Xcode. So only a few plug-ins can be rewritten with the new official extension API. 😢


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub #475 (comment), or mute the thread https://github.com/notifications/unsubscribe/AA7w_Z84ugZq3rYCc18nhM4VVz1g9buXks5qLm17gaJpZM4I0xyf.

erikolofsson

erikolofsson commented on Jun 14, 2016

@erikolofsson

This is very unfortunate. For the plugins that I need I would suspect a very small portion of the functionality is feasible with the new plugin infrastructure.

A workaround is to remove the signature from Xcode.app. You can do this with https://github.com/steakknife/unsign

fzwo

fzwo commented on Jun 14, 2016

@fzwo

@neonichu tweets that the template shows up when adding a new target to an existing macOS project.

guillaumealgis

guillaumealgis commented on Jun 14, 2016

@guillaumealgis
Member

@erikolofsson I doubt this would solve the problem. Even if being itself unsigned, Xcode will probably refuse to load unsigned code.
Maybe you could tamper with the extension loading function once Xcode's signature is removed, but that would probably also implies disabling SIP... And well this doesn't seems like a good idea at all.

(Not to mention that we have not much to gain by irritating Apple on this kind of things, and everything to gain by playing nice and providing helpful feedback)

pdcgomes

pdcgomes commented on Jun 14, 2016

@pdcgomes

@guillaume-algis I tired it a couple of hours ago and it did work.

guillaumealgis

guillaumealgis commented on Jun 14, 2016

@guillaumealgis
Member

@pdcgomes you mean unsigning Xcode with https://github.com/steakknife/unsign to make it load arbitrary plugins?
To be honest I'm at work and I did not have time yet to play with the thing much. That was just random thoughts on the matter ;)

pdcgomes

pdcgomes commented on Jun 14, 2016

@pdcgomes

Yes, correct. But agreed, not the way forward. I'm just concerned with how fast they'll be able to push additional extension points. We shall see!

pdcgomes

pdcgomes commented on Jun 15, 2016

@pdcgomes

Managed to sit down with some of the Xcode engineers that are working on Xcode Extensions earlier today. As expected, anything that doesn't involve pure text manipulation can't really be achieved with the current extension point.
The good news is that this is just the beginning and they're very keen on getting as much feedback as they possibly can, so definitely submit radars with very clear use case cases.

Unfortunately there are no clear timelines, so who knows how long it'll take until we have a rich public API and more extension points.

And yes, they've confirmed that by removing code signing, existing plugins will work. Having that said, it adds even more friction to the whole process, so the average user will probably either opt out or just be completely unaware of it. The way forward is to definitely clearly document valid use cases and file radars.

Both sad and exciting times ahead.

67 remaining items

jurre

jurre commented on Sep 14, 2016

@jurre
Collaborator

Having to unsign xcode is not supported IMO :)

kaphacius

kaphacius commented on Sep 14, 2016

@kaphacius
Contributor

by whom?)

nrbrook

nrbrook commented on Sep 14, 2016

@nrbrook

I've found Xcode seems to hang a lot when saving files when it is unsigned, requiring a force quit. Saving can happen automatically, so it can just randomly hang. Pretty sure it is saving anyway. The file is actually saved thankfully.

nrbrook

nrbrook commented on Sep 14, 2016

@nrbrook

It hangs even with no plugins activated, just unsigned.

Sephiroth87

Sephiroth87 commented on Sep 14, 2016

@Sephiroth87

A plugin could probably fix that 🤔

chrisbirch

chrisbirch commented on Sep 14, 2016

@chrisbirch

This is indeed terrible news. How can they have done this to us..?

My once tolerable workflow lies broken and lifeless on the floor. Arghhh

AlexKvazos

AlexKvazos commented on Sep 14, 2016

@AlexKvazos

Should I have hope that Alcatraz will soon work with some patches? Or should I just give up and accept a miserable life since right now?

capnslipp

capnslipp commented on Sep 15, 2016

@capnslipp

Can we close this issue now?  The core issue “Xcode 8 won't load plug-ins” has now been fixed as best Alcatraz can fix it.  What remains is gripes about Apple's platform choices, which belong in rdars, on Twitter, and at WWDC conversations, not here.

andytriboletti

andytriboletti commented on Sep 15, 2016

@andytriboletti

I ran the install script with Xcode 8 installed. I don't see "Package Manager" in the Window menu. :(

guillaumealgis

guillaumealgis commented on Sep 15, 2016

@guillaumealgis
Member

@andytriboletti please read the thread.

kattrali

kattrali commented on Sep 15, 2016

@kattrali
Contributor

Let’s close this up now, per #488.

locked and limited conversation to collaborators on Sep 15, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @0xced@capnslipp@andytriboletti@lechium@kattrali

        Issue actions

          Xcode 8 won't load plug-ins · Issue #475 · alcatraz/Alcatraz