7 ms·
We only need CocoaPods, because Apple couldn't build a proper package manager for XCode. And I am quite sure event Apple uses CocoaPods internally. CocoaPods i
by mcraiha 6y ago
We only need CocoaPods, because Apple couldn't build a proper package manager for XCode. And I am quite sure event Apple uses CocoaPods internally.
CocoaPods itself is quite problematic: You need Ruby to run it. Definitions aren't strict enough (you can use too old CocoaPods binary for package that doesn't support it). Pods can cause build conflicts/issues that might only be visible when you run your app.
- danpalmer 6y agoI think the success and rapid adoption of Swift Package Manager as it has become a viable solution speaks to this deep desire in the community to have an Apple provided solution to it. CocoaPods was a hugely important part of the iOS ecosystem and will be for years to come, but SPM is a great next step.
- Duckton 6y agoI think you overestimate how long CocoaPods will be used, all third party libraries I’ve used in the last 6-12 months supports SPM
- throw14082020 6y agoPseudo-counter point: SPM for firebase iOS SDK is in beta, and was released 2 weeks ago. Before this, you couldn't use SPM. The readme recommended (defaulted) to Cocoapods, with "experimental instructions for carthage". Therefore Cocoapods is likely used by most iOS apps with firebase.
- username_my1 6y agoOur app is in objC and we’re not planning a rewrite anytime soon.
- RandallBrown 6y agoAnd none of the ones I use support SPM.
- dep_b 6y agoSo apparently a lot of them do support SPM even when it doesn't say so in the README. Confusing, annoying. Out of a project with 10 dependencies I thought only 4 supported SPM by reading the README but in the end only one (which was my own...) Cocoapad didn't have SPM support.
- lyptt 6y agoSwift Package Manager is the official package manager for Xcode. It's been available for a few years now and a lot of third party iOS/macOS projects support it. I haven't had to touch CocoaPods in many years. For the past 5 years I've been using Carthage, and more recently everything is SPM.
- saagarjha 6y agoSadly, the existence of Swift Package Manager has pretty much taken all the wind out of the sails of third-party package managers, and it has done so far too early.
- dcow 6y agoWhy is it too early? We’ve had great success with SPM even if it’s not at feature parity with some of the 3rd party package managers. Now if only Apple actually accepted contributions on github rather than linking you to the swift jira then we might get more community involvement with SPM.
- saagarjha 6y agoSPM is missing a lot of things that a package manager typically lets you do–it's very focused on a handful of specific cases and falls down if you try to diverge from that.
- jquery 6y ago> I am quite sure event Apple uses CocoaPods internally. I’d be very surprised if Apple wasn’t dogfooding their own tool chain
- dep_b 6y agoApple probably uses SPM for new projects. But existing projects are probably not switching to SPM soon.
- marcusbuffett 6y agoCan confirm Apple iOS projects use CocoaPods internally, at least the couple I was aware of when I worked there.
- saagarjha 6y agoThey do, although Apple doesn't use third party libraries very often and when they do they tend to vendor them.
- jonas21 6y agoNot to mention that things like stats (useful for assessing quality) and search ranking have been broken for years [1]. This isn't meant as a criticism of the CocoaPods team, who seem to be doing the best they can given that they're working on a volunteer basis and even had to pay for infrastructure costs out of pocket. It just amazes me that Apple couldn't donate a little bit to help out such a critical part of their developer ecosystem. [1] https://github.com/CocoaPods/cocoapods-stats/issues/32 https://github.com/CocoaPods/cocoapods-stats/issues/32
- Steltek 6y agoBrew, CocoaPods, who else is carrying Apple's water? It seems to me that Apple never sold a Unix-like dev machine, they provided hardware and a kernel for others to do so for free.