CocoaPods should re-process podspec-based pins on CocoaPods upgrades
#9314 aperta il 2 nov 2019
Metriche repository
- Star
- (14.815 stelle)
- Metriche merge PR
- (Nessuna PR mergiata in 30 g)
Descrizione
🌈
- I've read and understood the CONTRIBUTING guidelines and have done my best effort to follow.
Report
What did you do?
Upgrade CocoaPods from 1.7.x to 1.8.x.
What did you expect to happen?
CI would successfully pod install after upgrading CocoaPods for pods that point at a specific ruby podspec file (i.e. pod '<name>', podspec: 'path_to_spec').
What happened instead?
If you do a fresh pod install after removing your Pods directory, CocoaPods is forced to regenerated the local podspec.json files for the ruby podspecs referred to explicitly in the Podfile, which results in new checksums for those pods. Our CI environment caches the Pods directory, so committing such changes results in pod install failures because checksums for those pods in the Podfile.lock no longer match the Manifest.
CocoaPods Environment
Happy to provide in CP slack if requested, but would prefer not to reveal here.
Project that demonstrates the issue
If needed, I can produce one.
Proposed solution
Because upgrading CocoaPods can result in changes in the way it generates json podspecs, which are also cached in the Pods directory, upgrades should attempt to regenerate these.