Giter VIP home page Giter VIP logo

Comments (7)

kiliankoe avatar kiliankoe commented on June 2, 2024 1

It does, thanks both of you! 😊

thanks

I've run into the problem of trying to make my frameworks available for every dependency manager out there a few times and have mostly resorted to throwing SPM out the door, I'd love to get that working though! 😄

from swiftplate.

kiliankoe avatar kiliankoe commented on June 2, 2024

Hmm, on second thought, possible subdependencies are possibly not compatible with one of the dependency managers or versioned differently throughout, making this even harder. Pulling the source directly and nailing them to that version might probably be the only way 😕

from swiftplate.

JohnSundell avatar JohnSundell commented on June 2, 2024

I actually think CocoaPods, Carthage and SPM all support defining dependencies for your framework. SwiftPlate only generates your project initially, how you choose to work with it after that is completely up to you - you can add a Podfile, Cartfile, etc. or specify dependencies in your Package.swift 🙂

from swiftplate.

kiliankoe avatar kiliankoe commented on June 2, 2024

A dependency would then have to be specified throughout all three though, wouldn't it? Otherwise my build will probably work with my tool of choice, but might not for someone else using something different, if I'm not mistaken.

What about that weird dance with the symlinked .xcodeproj for Carthage compatibility Cocoapods does when creating a new pod. Would something like that also be necessary here? 😕

from swiftplate.

JohnSundell avatar JohnSundell commented on June 2, 2024

Yeah exactly, you'd have to use dependencies that are available on all popular package managers, if you want to support all of them. Since I haven't used Cocoapods for dependencies in frameworks myself, I'm not sure how well they would play together. Maybe @zenangst knows? 😄

from swiftplate.

zenangst avatar zenangst commented on June 2, 2024

nma8lfs

So, at @hyperoslo, we haven't really jumped on the SPM just yet. What we do to support both Cocoapods and Carthage is to add a Xcode project in the root folder that runs handles tests. And then we use Cocoapods for all the examples projects that we add. Dependencies for Carthage is handled with the root Cartfile and dependencies for Cocoapods is handled using the podspec.

We haven't really run into any situation where one of our sub dependencies were not available by on either Carthage or Cocoapods, might have to do with us creating most of the sub dependencies ourselves.

Hope that helped to clear things up.

You can find our take on generating packages here: https://github.com/hyperoslo/swiftpackage </shameless self-promotion>

from swiftplate.

JohnSundell avatar JohnSundell commented on June 2, 2024

So doesn't sound like SwiftPlate needs to do anything specific to support this. @kiliankoe does that answer your question? 🙂

from swiftplate.

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.