Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- CLI:
- Cross-platform modules:
- Android Runtime:
- iOS Runtime:
- Plugin(s):
Describe the bug
When a plugin requires a different version of MaterialComponents than tns-core-modules-widgets there is an error on pod install step in the build proces.
To Reproduce
1 Create new project
2 Add /App_Resources/iOS/Podfile with content pod 'MaterialComponents/Tabs', '< 84.4'
Expected behavior
To have a way to resolve such conflicts without plugin modification.
Solution
A property overridePods has been introduced in nsconfig.json. This property will cause all plugin pods to be overridden by the pods in the /App_Resources/iOS/Podfile.
Acceptance Criteria
- 1. Change of overridePods in nsconfig.json should regenerate platforms/ios/Podfile
- 2. Add or remove of pod in /App_Resources/iOS/Podfile should comment/uncomment a pod that is defined in a plugin in the final Podfile in platforms/ios/Podfile (when overridePods is enabled).
- 3. Newly added plugin should have the pods that match the ones in /App_Resources/iOS/Podfile commented in the final podfile platforms/ios/Podfile (when overridePods is enabled).
- 4. If there is a conflict in versions a Tip with a reference to article should be printed by the CLI.
- 5. Check plugin add and nsconfig.json change between runs.
- 6. Project should work when overridePods is true and Podfile missing in /App-Resources/iOS/ folder
To cause a CocoaPod conflict use the attached to the issue plugin.
plugin.zip
Reactions are currently unavailable
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
Describe the bug
When a plugin requires a different version of MaterialComponents than tns-core-modules-widgets there is an error on pod install step in the build proces.
To Reproduce
1 Create new project
2 Add /App_Resources/iOS/Podfile with content pod 'MaterialComponents/Tabs', '< 84.4'
Expected behavior
To have a way to resolve such conflicts without plugin modification.
Solution
A property overridePods has been introduced in nsconfig.json. This property will cause all plugin pods to be overridden by the pods in the /App_Resources/iOS/Podfile.
Acceptance Criteria
To cause a CocoaPod conflict use the attached to the issue plugin.
plugin.zip