They will be able to set up everything needed to run the app’s code with a deterministic build command.īy specifying the exact dependencies you can re-trigger a build from 6 months ago, knowing that it will succeed as it will use the same version of Xcode, CocoaPods and Swift.
A new developer can check out the app’s codebase onto their development machine, requiring only the language runtime and dependency manager installed as prerequisites. The benefit of explicit dependency declaration is that it simplifies setup for developers new to the app, as well as having a reliable build system that is also able to run past builds again in a reproducible fashion. This includes the exact versions of Xcode, CocoaPods and fastlane. It declares all dependencies, completely and exactly via a dependency declaration manifest. Ideally, your build tools never rely on the implicit existence of system-wide packages. Explicitly declare and isolate dependencies