Coder Social home page Coder Social logo

Comments (13)

segiddins avatar segiddins commented on June 20, 2024

@mrackwitz / @neonichu could either of you please do this?

from guides.cocoapods.org.

neonichu avatar neonichu commented on June 20, 2024

I have to pass, because I am also not sure anymore about the reasons.

from guides.cocoapods.org.

AliSoftware avatar AliSoftware commented on June 20, 2024

According to @mrackwitz in Slack just now:

[It was] to avoid complexity, because there are situations, where you wouldn't be able to ensure that you can build it in that way, and we don't have the tooling in place to check if e.g. a vendored framework is static or dynamic

from guides.cocoapods.org.

AliSoftware avatar AliSoftware commented on June 20, 2024

I think we should also explain somewhere in the guides why a pod containing Swift must be compiled as a framework and can't be a static library. The reason being because of ABI compatibility issues, as the runtime is evolving (this can simply be a simple link to this Apple's blog post but it needs to be mentioned somewhere in CP guides anyway IMHO)

from guides.cocoapods.org.

drewcrawford avatar drewcrawford commented on June 20, 2024

So essentially the rant that originally inspired this issue's filing was correct on the facts. It's not impossible to support both, it's just a question of effort.

I think this isn’t done for a few reasons. One, it’s hard. It’s harder to write a tool that can [mix frameworks/libraries/etc.] then it is to do one.... This is all fair. The thing is, either it’s worth doing it to share code with each other or it’s not.

from guides.cocoapods.org.

scionwest avatar scionwest commented on June 20, 2024

Does this mean that you can not use a library like SSKeychain/AFNetworking with a framework like Alamofire on the same project via cocoapods?

from guides.cocoapods.org.

segiddins avatar segiddins commented on June 20, 2024

@scionwest no, since those libraries would be built as Frameworks :)

from guides.cocoapods.org.

scionwest avatar scionwest commented on June 20, 2024

Hmm, it's weird then why as soon as I add use_frameworks! the SSKeychain & LiveSDK (only two non-frameworks I have) can no longer have their types found. I get an 'identifier not found' compiler error. While AlamoFire works fire due to being a Swift framework. I remove use_frameworks! and AlamoFire can't be found but LiveSDK & SSKeychain can be.

from guides.cocoapods.org.

orta avatar orta commented on June 20, 2024

Probably worth making a stack overflow issue for this. As alamofire is a swift library it has to have use_frameworks.

from guides.cocoapods.org.

scionwest avatar scionwest commented on June 20, 2024

I actually do already have an issue on Stackoverflow for this. http://stackoverflow.com/q/31103831/1815321

from guides.cocoapods.org.

segiddins avatar segiddins commented on June 20, 2024

You should be using modular import statements with frameworks, that will probably solve your issue.

from guides.cocoapods.org.

neonichu avatar neonichu commented on June 20, 2024

Yep, only module imports work in the bridging header when using frameworks. Also, you might want to get rid of the bridging header entirely, as it is unnecessary when using frameworks, they can be imported directly in Swift.

from guides.cocoapods.org.

scionwest avatar scionwest commented on June 20, 2024

That solved my issue perfectly. Thanks for the help!

from guides.cocoapods.org.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.