[ 
https://issues.apache.org/jira/browse/CB-12963?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Haitao Huo updated CB-12963:
----------------------------
    Description: 
The latest 
[npm-link.js|https://github.com/apache/cordova-coho/blob/2296887cfcd0de95b38e6a1900eabf68d9731fe4/src/npm-link.js#L71-L91]
 code as below.

{code}
    npmLinkOut("cordova-js");
    npmLinkIn("cordova-js", "cordova-lib");

    npmLinkOut("cordova-common");
    npmLinkIn("cordova-common", "cordova-fetch");
    npmLinkIn("cordova-common", "cordova-create");
    npmLinkIn("cordova-common", "cordova-lib");
    npmLinkIn("cordova-common", "cordova-cli");

    npmLinkOut("cordova-fetch");
    npmLinkIn("cordova-fetch", "cordova-lib");

    npmLinkOut("cordova-create");
    npmLinkIn("cordova-create", "cordova-lib");

    npmLinkOut("cordova-serve");
    npmLinkIn("cordova-serve", "cordova-lib");

    npmLinkOut("cordova-lib");
    npmLinkIn("cordova-lib", "cordova-plugman");
    npmLinkIn("cordova-lib", "cordova-cli");
{code}

If we looked dependencies like plugman, only cordova-lib is listed, actually 
cordova-common, cordova-create, cordova-fetch, cordova-js, cordova-lib, and 
cordova-serve are all in the dependency.  The partial dependency will cause 
part use official code, part use master code. 

  was:
Error when executing npm link under latest cordova-fetch dir 
[de5f439|https://github.com/apache/cordova-fetch/commit/de5f4395f09c3868c88f909ed52f6a34729f7a3e]

{code}
cd cordova-fetch
npm link
[...]
4228 verbose stack Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4228 verbose stack     at C:\Program 
Files\nodejs\node_modules\npm\lib\install\action\move.js:86:7
4228 verbose stack     at C:\Program 
Files\nodejs\node_modules\npm\node_modules\iferr\index.js:13:50
4228 verbose stack     at C:\Program 
Files\nodejs\node_modules\npm\lib\utils\rename.js:13:14
4228 verbose stack     at CB (C:\Program 
Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:93:17)
4228 verbose stack     at FSReqWrap.oncomplete (fs.js:123:15)
4228 verbose stack
4228 verbose stack Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4228 verbose stack     at Error (native)
4229 verbose cwd C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch
4230 error Windows_NT 10.0.14393
4231 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program 
Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "link"
4232 error node v6.10.2
4233 error npm  v3.10.10
4234 error path 
C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli
4235 error code EPERM
4236 error errno -4048
4237 error syscall rename
4238 error Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\lib\install\action\move.js:86:7
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\node_modules\iferr\index.js:13:50
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\lib\utils\rename.js:13:14
4238 error     at CB (C:\Program 
Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:93:17)
4238 error     at FSReqWrap.oncomplete (fs.js:123:15)
4238 error
4238 error Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4238 error     at Error (native)
4238 error  { Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\lib\install\action\move.js:86:7
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\node_modules\iferr\index.js:13:50
4238 error     at C:\Program 
Files\nodejs\node_modules\npm\lib\utils\rename.js:13:14
4238 error     at CB (C:\Program 
Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:93:17)
4238 error     at FSReqWrap.oncomplete (fs.js:123:15)
4238 error
4238 error Error: EPERM: operation not permitted, rename 
'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cordova-common\node_modules\cli'
 -> 'C:\Users\hhuo\work\Cordova\upstream-dev\cordova-fetch\node_modules\cli'
4238 error     at Error (native) parent: 'cordova-fetch' }
4239 error Please try running this command again as root/Administrator.
{code}

    Component/s:     (was: cordova-fetch)
                 cordova-coho
        Summary: npm-link should resolve all dependencies as master  (was: 
npm-link fail to run)

> npm-link should resolve all dependencies as master
> --------------------------------------------------
>
>                 Key: CB-12963
>                 URL: https://issues.apache.org/jira/browse/CB-12963
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: cordova-coho
>            Reporter: Haitao Huo
>
> The latest 
> [npm-link.js|https://github.com/apache/cordova-coho/blob/2296887cfcd0de95b38e6a1900eabf68d9731fe4/src/npm-link.js#L71-L91]
>  code as below.
> {code}
>     npmLinkOut("cordova-js");
>     npmLinkIn("cordova-js", "cordova-lib");
>     npmLinkOut("cordova-common");
>     npmLinkIn("cordova-common", "cordova-fetch");
>     npmLinkIn("cordova-common", "cordova-create");
>     npmLinkIn("cordova-common", "cordova-lib");
>     npmLinkIn("cordova-common", "cordova-cli");
>     npmLinkOut("cordova-fetch");
>     npmLinkIn("cordova-fetch", "cordova-lib");
>     npmLinkOut("cordova-create");
>     npmLinkIn("cordova-create", "cordova-lib");
>     npmLinkOut("cordova-serve");
>     npmLinkIn("cordova-serve", "cordova-lib");
>     npmLinkOut("cordova-lib");
>     npmLinkIn("cordova-lib", "cordova-plugman");
>     npmLinkIn("cordova-lib", "cordova-cli");
> {code}
> If we looked dependencies like plugman, only cordova-lib is listed, actually 
> cordova-common, cordova-create, cordova-fetch, cordova-js, cordova-lib, and 
> cordova-serve are all in the dependency.  The partial dependency will cause 
> part use official code, part use master code. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to