[ https://issues.apache.org/jira/browse/CB-13797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16361808#comment-16361808 ]
Darryl Pogue commented on CB-13797: ----------------------------------- After your comment, I thought maybe one of my tools was to blame, but it turns out I can still reproduce this even with cordova from npm. I put together a test case here: https://github.com/dpogue/cb-13797 > Fetch failing to install plugin dependencies > -------------------------------------------- > > Key: CB-13797 > URL: https://issues.apache.org/jira/browse/CB-13797 > Project: Apache Cordova > Issue Type: Bug > Components: cordova-fetch > Environment: cordova@8.0.0 > cordova-common@2.2.1 > cordova-lib@8.0.0 > cordova-fetch@1.3.0 > npm@5.6.0 > node@9.4.0 > > Reporter: Darryl Pogue > Priority: Critical > > I'm currently unable to install Microsoft's cordova-plugin-code-push due to > some incredibly confusing errors when installing the plugin dependencies. > The plugin [lists 3 > dependencies|https://github.com/Microsoft/cordova-plugin-code-push/blob/e828a5eacd42dcd81bacf121a3e62735c3500227/plugin.xml#L10-L12] > in plugin.xml. > Cordova successfully installs the first (code-push) dependency. > Cordova attempts to install the second (cordova-plugin-device) dependency. It > appears that the npm install is successful. > At the end of the npm install, cordova-fetch [attempts to > discover|https://github.com/apache/cordova-fetch/blob/master/index.js#L100] > what was just installed. Rather than finding "cordova-plugin-device", it > finds "code-push" for a second time. > Then it fails with the following confusing error message: > {noformat} > Failed to install 'cordova-plugin-code-push': Error: Expected plugin to have > ID "cordova-plugin-dialogs" but got "code-push".{noformat} > The full verbose output from {{cordova prepare}} is below: > {noformat} > Discovered plugin "cordova-plugin-code-push" in config.xml. Adding it to the > project > No scripts found for hook "before_plugin_add". > Calling plugman.fetch on plugin "cordova-plugin-code-push@^1.11.2" > Running command: npm install cordova-plugin-code-push@^1.11.2 --production > --no-save > Command finished with error code 0: npm > install,cordova-plugin-code-push@^1.11.2,--production,--no-save > Copying plugin "/PROJECT/node_modules/cordova-plugin-code-push" => > "/PROJECT/plugins/cordova-plugin-code-push" > Calling plugman.install on plugin "/PROJECT/plugins/cordova-plugin-code-push" > for platform "android > Installing "cordova-plugin-code-push" for android > Running command: /PROJECT/platforms/android/cordova/version > Command finished with error code 0: > /PROJECT/platforms/android/cordova/version > Dependencies detected, iterating through them... > Requesting plugin "code-push@2.0.4". > Plugin dependency "code-push" not fetched, retrieving then installing. > Running command: npm install code-push@2.0.4 --production --no-save > Command finished with error code 0: npm > install,code-push@2.0.4,--production,--no-save > Copying plugin "/PROJECT/node_modules/code-push" => > "/PROJECT/plugins/code-push" > Installing "code-push" for android > Finding scripts for "before_plugin_install" hook from plugin code-push on > android platform only. > No scripts found for hook "before_plugin_install". > Install start for "code-push" on android. > Beginning processing of action stack for android project... > Action stack processing complete. > Install complete for code-push on android. > Finding scripts for "after_plugin_install" hook from plugin code-push on > android platform only. > No scripts found for hook "after_plugin_install". > Requesting plugin "cordova-plugin-dialogs@>=1.1.1". > Plugin dependency "cordova-plugin-dialogs" not fetched, retrieving then > installing. > Running command: npm install cordova-plugin-dialogs@>=1.1.1 --production > --no-save > Command finished with error code 0: npm > install,cordova-plugin-dialogs@>=1.1.1,--production,--no-save > Copying plugin "/PROJECT/node_modules/code-push" => > "/PROJECT/plugins/code-push" > Failed to install 'cordova-plugin-code-push': Error: Expected plugin to have > ID "cordova-plugin-dialogs" but got "code-push". > at checkID (/PROJECT/node_modules/cordova-lib/src/plugman/fetch.js:215:15) > at /PROJECT/node_modules/cordova-lib/src/plugman/fetch.js:199:9 > at _fulfilled (/PROJECT/node_modules/cordova-lib/node_modules/q/q.js:787:54) > at self.promiseDispatch.done > (/PROJECT/node_modules/cordova-lib/node_modules/q/q.js:816:30) > at Promise.promise.promiseDispatch > (/PROJECT/node_modules/cordova-lib/node_modules/q/q.js:749:13) > at /PROJECT/node_modules/cordova-lib/node_modules/q/q.js:557:44 > at flush (/PROJECT/node_modules/cordova-lib/node_modules/q/q.js:108:17) > at process._tickCallback (internal/process/next_tick.js:150:11) > Failed to restore plugin "cordova-plugin-code-push" from config.xml. You > might need to try adding it again. Error: Error: Expected plugin to have ID > "cordova-plugin-dialogs" but got "code-push".{noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org