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
Support for Frameworks / Swift #2835
Conversation
I think a lot of people will want to do thanks and +1s etc, please move that to twitter and show @mrackwitz some love. In the meantime, I've tried installing this locally using Bundler. I've extended my Gemfile in the eidolon project to include the following:
Running with this on eidolon and doing a
|
The old |
Yes, there is. Framework base names (determined by |
Not a specific problem with CocoaPods, but some Swift code will crash the compiler if it has any SWIFT_OPTIMIZATION_LEVEL is not set to "None". We may want to figure a way to make changing that easy. Or it has to go in specific podspecs. ( Offtopic, but this is one reason that the Eidolon app has to ship entirely unoptimized ) |
module Generator | ||
class EmbedFrameworksScript | ||
# @return [TargetDefinition] The target definition, whose label will be | ||
# used to locate the target specific build products. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
target-specific
This let lint use frameworks to install the given spec.
Thanks @segiddins.
This reverts commit a23a07e.
…ermine_dependency_product_types
💥 |
Support Requests
Please make issues on this repo: https://github.com/CocoaPods/swift
Pull Request
Please make support requests around Swift CocoaPods on this repo: https://github.com/CocoaPods/swift
This Pull-Request makes first steps to bring the long-awaited Swift support by supporting Frameworks. Along the way it keeps full backwards-compatibility with CocoaPods 0.35 and tries to break as few stuff as needed.
This PR supersedes #2222. See this for some of the original discussions.
Steps
To make that all happen, the following path was taken, described here very roughly:
by underlying clang modules
Auto opt-in OS X targets and iOS 8+ targets to dynamic frameworks (to be discussed in a separate issue, at the moment possibly more helpful for feedback)What has happened so far:
All the steps described above. See the commits below. That's already a very condensed history, which was the result of a lot of trial-and-error and has been squashed to a reasonable length.
Checkout:
To get as much feedback as possible, feel encouraged to check out this branch in your local clone of Rainforest. If you use bundler's local gem feature, make sure that you checkout the right branches on the linked repos. (See below Dependencies for reference.) Make sure to run
bundle install
. You may want to make sure, that you install it to a gemset, you can use for the projects, you want to develop with. Right after that you should be able to install the CocoaPods gem withrake install
to your current gemset.If you use it and you mention a serve problem, like a crash appears or your xcodebuild fails:
+1
, if not explicitly asked for it. We will try to solve all problems anyway.[Frameworks]
and provide a reference to this Pull-Request on your newly created issue by referencing its number#2835
.Open Todos:
The following things are still open to do:
pod spec lint
Dependencies:
This depends on the following PRs:
Related issues:
/c @CocoaPods/core