
Xcode multiple commands produce Patch#
Since you might not know what could break with the resource_bundles patch on its Podspec. xcode 12 New Build System warns multiple commands produce Assets.car xcode reactnative cocoapod If you are experiencing error with the xcode 12 New Build System as such: In this case, one explanation is that your Copy Resources build phase contains one (or more). This is bearable short term wise, until official fix is done on the Pod. If the Pod does not have a latter version that come with this fix, you might have to Fork the repo and do the fix yourself.
Xcode multiple commands produce update#
(5) The most proper way to resolve this is to identify the Pods that use the deprecated resources in its Podspec, update them to resource_bundles instead. Updated: You may encounter App Icon not displayed issue and in-stability with other image assets. This seems to be much elegant, by separating the copying steps into different phases stop xcode New Build system from yelling. Then the library won't make Assets.car from *.xcassets files when building, instead, cocoapods copies the *.xcassets to your main project which imports the lib, and the main project builds all *.xcassets into a single Assets.car file.

(4) In your library project, open Targets' "Build Phases", create a predefined phase named "Copy Files", then drag your *.xcassets to the new phase. Yet this is a hacky and how long do you plan to stick this in here and wait for xcode or cocoapod to solve it? Adding extra overhead to build doesn't seem optimal, and leads to bad experience during local App development.Įnter fullscreen mode Exit fullscreen mode (2) Place disable_input_output_paths: true in Podfile, to skip optimisation and always download resources from Pods cleanly every time, since it is not copying bundled assets during build. Your App still works but someday Apple decided to end the legacy build system you will be in trouble. However, this doesn't solve the problem but avoids it. (1) Quick and dirty way is to fallback to Legacy Build System (File -> Workplace Settings). Which one shall win? Which of these two files shall end up in the final application? And what about other steps that depend on this file? After which of the build steps do they have to run? This is a serious problem that Xcode cannot resolve.

Yet if you integrate other Pod and some Pods also has an asset catalog, exactly the same thing will happen and a second Assets.car file is created and now Xcode has a problem: Two build steps both say they create an Assets.car file. Xcode won't just copy these bundles, instead it will combine them, convert and optimize their content, and create a file called Assets.car that contains the content of all the assets catalogs in your project. In this case, one explanation is that your Copy Resources build phase contains one (or more). If you are experiencing error with the xcode 12 New Build System as such:
