cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-8499) 'cordova platform save' : should save all installed platforms to config.xml
Date Fri, 20 Feb 2015 19:38:12 GMT

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

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

Github user vladimir-kotikov commented on a diff in the pull request:

    https://github.com/apache/cordova-lib/pull/170#discussion_r25096560
  
    --- Diff: cordova-lib/src/cordova/platform_metadata.js ---
    @@ -0,0 +1,113 @@
    +/**
    +    Licensed to the Apache Software Foundation (ASF) under one
    +    or more contributor license agreements.  See the NOTICE file
    +    distributed with this work for additional information
    +    regarding copyright ownership.  The ASF licenses this file
    +    to you under the Apache License, Version 2.0 (the
    +    "License"); you may not use this file except in compliance
    +    with the License.  You may obtain a copy of the License at
    +
    +    http://www.apache.org/licenses/LICENSE-2.0
    +
    +    Unless required by applicable law or agreed to in writing,
    +    software distributed under the License is distributed on an
    +    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    +    KIND, either express or implied.  See the License for the
    +    specific language governing permissions and limitations
    +    under the License.
    +*/
    +
    +
    +var path         = require('path'),
    +    cordova_util = require('./util'),
    +    fs           = require('fs'),
    +    Q            = require('q'),
    +    shelljs      = require('shelljs'),
    +    events       = require('../events');
    +
    +
    +// Retrieves the platforms and their versions from the platforms.json file
    +// Returns an array of {platform: platform, version: version} ...
    +// ... where version could be '3.4.0', '/path/to/platform' or 'git://...'
    +function getVersions(projectRoot) {
    +    var platformsDir = path.join(projectRoot, 'platforms');
    +    var platformsJsonFile = path.join(platformsDir, 'platforms.json');
    +
    +    // If the platforms.json file doesn't exist, retrieve versions installed
    +    // In this case, we won't be able to know what source the platform came from
    +    return Q.nfcall(fs.exists, platformsJsonFile).then(function(exists){
    +        if(exists){
    +            return getPlatVersionsFromFile(platformsJsonFile);
    +        }        
    +        return getPlatVersionsFromFileSystem(projectRoot);
    +    });
    +}
    +
    +// Returns a promise
    +function getPlatVersionsFromFile(platformsJsonFile){
    +    var platformData = getJson(platformsJsonFile);
    +    var platformVersions = [];
    +    
    +    platformVersions = Object.keys(platformData).map(function(p){
    +        return {platform: p, version: platformData[p]};
    +    });
    +
    +    return Q(platformVersions);
    +}
    +
    +// Returns a promise
    +function getPlatVersionsFromFileSystem(projectRoot){
    +    var platformVersions = [];
    +    var platforms_on_fs = cordova_util.listPlatforms(projectRoot);
    +    platforms_on_fs.map(function(platform){
    --- End diff --
    
    `map` vs `forEach` again


> 'cordova platform save' : should save all installed platforms to config.xml
> ---------------------------------------------------------------------------
>
>                 Key: CB-8499
>                 URL: https://issues.apache.org/jira/browse/CB-8499
>             Project: Apache Cordova
>          Issue Type: New Feature
>            Reporter: Omar Mefire
>            Assignee: Omar Mefire
>
> In addition to using 'cordova platform add android --save' to both add and save a platform
to config.xml, It would be useful to have a way to 'mass save' already installed platforms
to config.xml.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org


Mime
View raw message