Skip to content
This repository has been archived by the owner on Jun 20, 2021. It is now read-only.

Support for Swift #178

Closed
wants to merge 5 commits into from
Closed

Conversation

sinoru
Copy link

@sinoru sinoru commented Jan 7, 2015

Hi!

This tool is really nice that can distribute to many places or iTunes Connect directly.
BUT, It doesn't support when swift codes are in.

I really want to use iTunes Connect distribution with this tool even though using Swift.
So I'm looking into it.

I found that Xcode Command Line tools doesn't contains SwiftSupport folder when PackageApplication it.
And, SwiftSupport folder is located in Xcode Archive.

So this commits make shenzhen will do archive action and embed SwiftSupport folder directly.
With this, I uploaded app to iTunes Connect successfully, and can distribute it through TestFlight by Apple.

Thanks!

@KrauseFx
Copy link
Contributor

KrauseFx commented Jan 7, 2015

Wow, this looks really good. Does that mean, you didn't have to change anything for uploading the ipa file, but only have to update the way, the app is packed inside the ipa?

Some users experienced the same problem when using deliver: fastlane-old/deliver#42

Thanks for sharing your solution @sinoru 👍

@sinoru
Copy link
Author

sinoru commented Jan 7, 2015

@KrauseFx I just added last process that add SwiftSupport folder in ipa file. Never touch on {Application.app}.

Previous ipa structure looks like:

Payload/{Application.app}

After adding SwiftSupport ipa structure looks like:

Payload/{Application.app}
SwiftSupport/{SwiftLibraryFilesWhichUsedInApp.dylib}

After that, uploading this ipa to iTunes Connect, and it success.

But, I only found SwiftSupport folder in Xcode Archive.
So I add that process in ipa build, and change ipa build do archive aciton.

@DarthMike
Copy link

@sinoru Could you please merge master into this branch? I'm trying to test your changes in my app by referencing your fork/branch in my Gemfile, but then other dependencies complain because you don't have latest version in .gemspec.

Thanks!

@KrauseFx
Copy link
Contributor

@DarthMike The latest released version is 0.10.3. You mean, @sinoru should update the version.rb to 0.10.13 as well, to make use of it, right? If you're talking about fastlane, you can modify the fastlane.gemspec and change it to an earlier version to make it work temporary.

Only @mattt can merge pull requests into master

@DarthMike
Copy link

@KrauseFx Yes I meant what you describe: Update @sinoru's master from upstream, and merge master into the pull request branch. Regarding fastlane, I did exactly that for test purposes. Thanks!

@sinoru
Copy link
Author

sinoru commented Jan 13, 2015

I merged new 0.10.3 master to my branch. It might give some helps. I think.

@DarthMike
Copy link

Thanks!

@lvillani
Copy link
Contributor

JFYI: I'm working on a patch that works in a different way, is less slightly less intrusive than this one, works transparently regardless of whether or not the developer is building a Swift project and, most importantly, doesn't change the way the .ipa gets built.

I'll submit a pull request as soon as I confirm that it works fine for iTunes uploads.

@KrauseFx
Copy link
Contributor

@lvillani Looking forward to it, thanks for working on a fix 👍

@mattt
Copy link
Contributor

mattt commented Feb 27, 2015

Thanks for your work on this, @sinoru. I decided to go with the approach used with #192 to add Swift support, which is now in the latest version.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants