Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-14102

Support setting custom npm binary for cordova-fetch

    XMLWordPrintableJSON

    Details

    • Type: Wish
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 8.0.0
    • Fix Version/s: 8.0.0
    • Component/s: cordova-fetch
    • Labels:
      None

      Description

      The cordova platform/plugin add commands use cordova-fetch to get the relevant files. It does this by using npm.

      However, npm@5.6.x has an issue when installing modules from Github.
      npm modules installed from a Github URL will be removed after installing other npm modules.
      The issue is on npm’s Github: https://github.com/npm/npm/issues/17379

      For example, using node v9.5.0, npm v5.6.0 and cordova 8.0, run

      $ cordova plugin add https://github.com/knight9999/HelloWorldPlugin.git

      This adds helloworldplugin into the node_modules directory, as shown below:

      $ ls node_modules/
      fs-extra helloworldplugin jsonfile universalify
      graceful-fs install npm

      If we add further plugins like so:

      $ cordova plugin add cordova-plugin-camera

      The previous modules in node_modules directory disappear.

      $ ls node_modules/
      cordova-plugin-camera

      This is fixed in npm@5.7.1, as mentioned in the issue link above.

      It is possible that the user cannot update their global npm version due to some other dependencies. I suggest that we add a way for the user to override the npm executable which is used by Cordova. For example, we could add an environment variable as below, which would be used instead of the global npm:

      CORDOVA_NPM=/home/user/bin/npm

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                knaito Ken Naito
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: