cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Grebnov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-5192) Plugman engine check fails on Windows
Date Thu, 24 Oct 2013 06:12:01 GMT

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

Sergey Grebnov commented on CB-5192:
------------------------------------

Proposed solution
1. remove .bat extension from other script locations to be consistent - see cordova-wp8 above
as an example, 
2.  Remove check for the file location on Windows before executing script since .exec or .spawn
cmd /c will be able to run it just fine

       if(fs.existsSync(engine.scriptSrc)){
                fs.chmodSync(engine.scriptSrc, '755');
                var d = Q.defer();
                child_process.exec(engine.scriptSrc, function(error, stdout, stderr) {

> Plugman engine check fails on Windows
> -------------------------------------
>
>                 Key: CB-5192
>                 URL: https://issues.apache.org/jira/browse/CB-5192
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Plugman
>         Environment: Windows
>            Reporter: Sergey Grebnov
>
> Right now the simplest (and also the most correct IMO) way to specify plugin restrictions
to specific cordova version is the following:
> plugin.xml:
>  <engines>
>    <engine name="cordova" version=">=2.7.0" />  
> </engines>
> But in this case as per plugman current implementation and engines definition(plugman/src/util/default-engines.js)
plugman won't be able to resove script because on Windows the script named 'version.bat',
not just 'version'.
> module.exports = function(project_dir){
>     return {
>         'cordova': 
>             { 'platform':'*', 'scriptSrc': path.join(project_dir,'cordova','version')
}, <- works in general, but NOT for WP7/8 
> 	 ...
>         'cordova-wp8': 
>             { 'platform':'wp8', 'scriptSrc': path.join(project_dir,'cordova','version.bat')
}, <- correct location, not used in case of example above
> child_process.exec should correctly resolve this case (missing cmd file extension) but
plugman check for file location so it fails to find it.
> This should affect all platforms which are supported on Windows and use .bat files (WP7/8,
BlackBerry, Android)



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message