[ 
https://issues.apache.org/jira/browse/CB-10673?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15170796#comment-15170796
 ] 

ASF GitHub Bot commented on CB-10673:
-------------------------------------

GitHub user bso-intel opened a pull request:

    https://github.com/apache/cordova-windows/pull/154

    CB-10673 CB-10673 fixed conflicting plugin install issue with overlapped 
<source-tag>

    The problem is that copyNewFile is too strict for <source-file> tag.
    You will never know which two plugins will write the library to the same 
target-dir of the source-file.
    We should let it copy the library to the same location.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/bso-intel/cordova-windows CB-10673

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cordova-windows/pull/154.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #154
    
----
commit fb18ccd50e25246d039ffdcbae59db9ce0cff316
Author: Byoungro So <[email protected]>
Date:   2016-02-27T06:34:29Z

    CB-10673 fixed conflicting plugin install issue with overlapped 
<source-file> tag

commit 73da0e419fedd15595d348b0953f18f334732a21
Author: Byoungro So <[email protected]>
Date:   2016-02-28T01:48:06Z

    CB--10673 fixed jshint error

----


> overlapped <source-file> target-dir from two different plugins causes a 
> failure.
> --------------------------------------------------------------------------------
>
>                 Key: CB-10673
>                 URL: https://issues.apache.org/jira/browse/CB-10673
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android, iOS, Windows
>            Reporter: Byoungro So
>            Assignee: Byoungro So
>
> Cordova-android makes sure the target-dir of the <source-file> tag is unique 
> for no reason.
> It is always possible that two different plugin could have overlapped 
> target-dir path.
> For example, cordova-sqlite-storage has the following in its plugin.xml.
> {code}
>         <source-file src="src/android/libs/armeabi/libsqlc-native-driver.so" 
> target-dir="libs/armeabi"/>
> {code}
> com.intel.security has the following in its plugin.xml.
> {code}
>       <source-file src="src/android/armeabi"  target-dir="libs" />
> {code}
> When adding two plugins, cordova-android throws an exception.
> {code}
> [t6.0.1] cordova plugin add [email protected]
> Fetching plugin "[email protected]" via npm
> Installing "cordova-sqlite-storage" for android
> Installing "cordova-sqlite-storage" for ios
> [t6.0.1] cordova plugin add https://github.com/01org/AppSecurityApi.git#v1.4.1
> Fetching plugin "https://github.com/01org/AppSecurityApi.git"; via git clone
> Repository "https://github.com/01org/AppSecurityApi.git"; checked out to git 
> ref "v1.4.1".
> Installing "com.intel.security" for android
> Failed to install 'com.intel.security':CordovaError: Uh oh!
> "/Users/bso/cordova/test/t6.0.1/platforms/android/libs/armeabi" already 
> exists!
>     at copyNewFile 
> (/Users/bso/cordova/test/t6.0.1/platforms/android/cordova/lib/pluginHandlers.js:212:15)
>     at handlers.source-file.install 
> (/Users/bso/cordova/test/t6.0.1/platforms/android/cordova/lib/pluginHandlers.js:34:13)
>     at Object.ActionStack.process 
> (/Users/bso/cordova/test/t6.0.1/platforms/android/cordova/node_modules/cordova-common/src/ActionStack.js:56:25)
>     at Api.addPlugin 
> (/Users/bso/cordova/test/t6.0.1/platforms/android/cordova/Api.js:205:20)
>     at handleInstall 
> (/Users/bso/cordova/bso-cordova-lib/cordova-lib/src/plugman/install.js:598:6)
>     at 
> /Users/bso/cordova/bso-cordova-lib/cordova-lib/src/plugman/install.js:396:28
>     at _fulfilled 
> (/Users/bso/cordova/bso-cordova-lib/cordova-lib/node_modules/q/q.js:787:54)
>     at self.promiseDispatch.done 
> (/Users/bso/cordova/bso-cordova-lib/cordova-lib/node_modules/q/q.js:816:30)
>     at Promise.promise.promiseDispatch 
> (/Users/bso/cordova/bso-cordova-lib/cordova-lib/node_modules/q/q.js:749:13)
>     at 
> /Users/bso/cordova/bso-cordova-lib/cordova-lib/node_modules/q/q.js:509:49
> Error: Uh oh!
> "/Users/bso/cordova/test/t6.0.1/platforms/android/libs/armeabi" already 
> exists!
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to