Giter VIP home page Giter VIP logo

Comments (5)

dcoufal avatar dcoufal commented on May 27, 2024

This is a good idea. I'm not 100% sure of the consequences for users that are still using plain old frameworks. I'm sure we'll all be using xcframework soon, but not sure of adoption curves.

If you are a user with strong opinions on this or insight into building a framework with this option on, please comment in this thread.

from mamba.

jonnybach avatar jonnybach commented on May 27, 2024

I've began the work to update the project build settings and look further into what this build setting actually will do.

When set to YES, an additional file is created (.swiftInterface) which is a non binary description of the public API for the module. This is what will ensure ABI compatibility across swift versions. Verified that there is no impact on building regular frameworks via building a dummy library with mamba as a dependency (with this setting modified).

from mamba.

jonnybach avatar jonnybach commented on May 27, 2024

This issue should now be resolved in both the develop and develop_1.x branches.

from mamba.

hoangduoc0603 avatar hoangduoc0603 commented on May 27, 2024

Hi @jonnybach. My framework is a fat framework so can it have module stability enabled or i need to build it as xcframework?? Thanks!!

from mamba.

jonnybach avatar jonnybach commented on May 27, 2024

@hoangduoc0603 sorry for the delayed response. I have recently changed jobs so I was not active on GitHub with this account for a few weeks.

You may have already received your answer, but you don't have to build your framework as an xcframework b/c module stability has been enabled. However, I'd recommend you start supporting packaging any binaries of your frameworks as xcframeworks because:

  1. this is required if you wish to make your framework available for use with Swift Package Manager but wish to distribute it as a binary (as opposed to allowing SPM to build from source)
  2. you will never be able to provide a FAT framework that includes architectures for both Intel and ARM64 (M1/M2 chip) based Macs. This applies not only for frameworks for running on a Mac itself, but also for iOS simulators on Macs.

Hope this is helpful.

from mamba.

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.