NativeScript / nativescript-cli

Command-line interface for building NativeScript apps
https://www.npmjs.com/package/nativescript
Apache License 2.0
1.03k stars 195 forks source link

References of removed dependencies are not deleted from Podfile #5153

Open Fatme opened 5 years ago

Fatme commented 5 years ago

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 dependency is uninstalled, its reference is not deleted from Podfile in platforms and that leads to the error when trying to run the application on device.

To Reproduce

  1. tns create myApp --js
  2. tns prepare ios
  3. npm i tns-core-modules@6.1.0
  4. tns prepare ios
  5. You will see the following log in the output:

    
    [!] CocoaPods could not find compatible versions for pod "MaterialComponents/Tabs":
    In snapshot (Podfile.lock):
    MaterialComponents/Tabs (= 92.4.0, ~> 92.3)
    
    In Podfile:
    MaterialComponents/Tabs (~> 84.4)
    
    MaterialComponents/Tabs (~> 92.3)

None of your spec sources contain a spec satisfying the dependencies: MaterialComponents/Tabs (~> 92.3), MaterialComponents/Tabs (~> 84.4), MaterialComponents/Tabs (= 92.4.0, ~> 92.3).

You have either:

Note: as of CocoaPods 1.0, pod repo update does not happen on pod install by default.

[!] There are duplicate dependencies on MaterialComponents/Tabs in Podfile:

use_frameworks!

target "newPodfileIssue" do
# NativeScriptPlatformSection /Users/myuser/Work/nativescript-cli/scratch/newPodfileIssue/node_modules/@nativescript/core/platforms/ios/Podfile with 9.0
platform :ios, '9.0'
# End NativeScriptPlatformSection

# Begin Podfile - /Users/myuser/Work/nativescript-cli/scratch/newPodfileIssue/node_modules/@nativescript/core/platforms/ios/Podfile
# platform :ios, '9.0'
use_frameworks!

pod 'MaterialComponents/Tabs', '~> 92.3'
# End Podfile

# Begin Podfile - /Users/myuser/Work/nativescript-cli/scratch/newPodfileIssue/node_modules/tns-core-modules/platforms/ios/Podfile
# platform :ios, '9.0'
use_frameworks!

pod 'MaterialComponents/Tabs', '~> 84.4'
# End Podfile

Expected behavior

It should work and the reference to /Users/myuser/Work/nativescript-cli/scratch/newPodfileIssue/node_modules/@nativescript/core/platforms/ios/Podfile should be deleted from Podfile.

Siafu commented 4 years ago

I am having the exact issue as well.

Fatme commented 4 years ago

@Siafu,

One (not recommend) way to workaround this problem is to delete platforms directory -> rm -rf platforms.