Search code examples
node.jsgitcordovaphonertc

PhoneRTC: git-submodule is broken


I'm using the Wiki guide to test the plugin.

When I perform the command:

cordova plugin add https://github.com/alongubkin/phonertc.git

the PC stucks few minutes then gives the error (from the log):

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Users\\Sandro\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install',
1 verbose cli   'https://github.com/alongubkin/phonertc.git',
1 verbose cli   '--save' ]
2 info using [email protected]
3 info using [email protected]
4 verbose npm-session e0fe9efdcc26a6c4
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 silly fetchPackageMetaData error for git+https://github.com/alongubkin/phonertc.git Command failed: c:\Program Files\Git\mingw64\libexec\git-core\git.EXE submodule update -q --init --recursive
7 silly fetchPackageMetaData fatal: 'submodule' appears to be a git command, but we were not
7 silly fetchPackageMetaData able to execute it. Maybe git-submodule is broken?
8 verbose stack Error: Command failed: c:\Program Files\Git\mingw64\libexec\git-core\git.EXE submodule update -q --init --recursive
8 verbose stack fatal: 'submodule' appears to be a git command, but we were not
8 verbose stack able to execute it. Maybe git-submodule is broken?
8 verbose stack
8 verbose stack     at ChildProcess.exithandler (child_process.js:270:12)
8 verbose stack     at emitTwo (events.js:125:13)
8 verbose stack     at ChildProcess.emit (events.js:213:7)
8 verbose stack     at maybeClose (internal/child_process.js:897:16)
8 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:208:5)
9 verbose cwd C:\Users\Sandro\AndroidStudioProjects\[PhoneGap]\phonertc_demo\node_modules
10 verbose Windows_NT 10.0.14393
11 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Sandro\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install" "https://github.com/alongubkin/phonertc.git" "--save"
12 verbose node v8.1.3
13 verbose npm  v5.1.0
14 error code 128
15 error Command failed: c:\Program Files\Git\mingw64\libexec\git-core\git.EXE submodule update -q --init --recursive
15 error fatal: 'submodule' appears to be a git command, but we were not
15 error able to execute it. Maybe git-submodule is broken?
16 verbose exit [ 1, true ]

Cordova, Node, Npm work well. Git also, I'm using Mingw64.

Trying from Mingw itself, raises another error:

Error: Failed to fetch plugin https://github.com/alongubkin/phonertc.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Error: cmd: Command failed with exit code 1 Error output:
npm ERR! cb() never called!

npm ERR! This is an error with npm itself. Please report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Sandro\AppData\Roaming\npm-cache\_logs\2017-07-10T11_26_43_415Z-debug.log

I already tried to launch everything from an Administrator console, same error.

Can't identify the problem. Any hint is welcome.


Solution

  • It seems that it is not possible to fetch this (and other) plugins using the new fetch logic. In order to make the add plugin work, you have to use the old one, adding the

    --nofetch

    flag. The command to add the plugin is:

    cordova plugin add https://github.com/alongubkin/phonertc.git --nofetch