You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by st...@apache.org on 2014/09/25 00:52:38 UTC

[1/9] git commit: CB-7219: initial work for cordova.js platformVersion

Repository: cordova-lib
Updated Branches:
  refs/heads/master 3ead61c5e -> 8abfaf18c


CB-7219: initial work for cordova.js platformVersion


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/c90997f9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/c90997f9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/c90997f9

Branch: refs/heads/master
Commit: c90997f9d2f19f7e2041eaafd85bb15faedebbc3
Parents: c4ab88d
Author: Steven Gill <st...@gmail.com>
Authored: Mon Aug 11 15:00:45 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Mon Aug 11 15:00:45 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/c90997f9/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index ed2bdf9..6a776fb 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -62,10 +62,13 @@ function uninstallQueuedPlugins(platform_json, wwwDir) {
 function generateFinalBundle(platform, libraryRelease, outReleaseFile) {
 
     var outReleaseFileStream = fs.createWriteStream(outReleaseFile);
+    //TODO: Need to generate commitID
     var commitId = 'N/A';
     var time = new Date().valueOf();
+    //TODO: Need to generate platform version
+    var platformVersion = '3.6.0';
 
-    writeLicenseHeader(outReleaseFileStream, platform, commitId);
+    writeLicenseHeader(outReleaseFileStream, platform, commitId, platformVersion);
 
     var releaseBundle = libraryRelease.bundle();
 
@@ -110,7 +113,9 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
     if(!is_top_level) return;
 
     requireTr.platform = platform;
-    var libraryRelease = bundle(platform, false, 'N/A');
+    var platformVersion = '3.6.0';
+    var commitId = '10';
+    var libraryRelease = bundle(platform, false, commitId, platformVersion);
 
     platform_json = config_changes.get_platform_json(plugins_dir, platform);
     var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));


[5/9] git commit: CB-7219: initial work for cordova.js platformVersion

Posted by st...@apache.org.
CB-7219: initial work for cordova.js platformVersion


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/acb36924
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/acb36924
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/acb36924

Branch: refs/heads/master
Commit: acb3692402f7dfa32c67498f584f2a9198403430
Parents: 2aace45
Author: Steven Gill <st...@gmail.com>
Authored: Mon Aug 11 15:00:45 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Mon Sep 22 15:13:11 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/acb36924/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index ed2bdf9..6a776fb 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -62,10 +62,13 @@ function uninstallQueuedPlugins(platform_json, wwwDir) {
 function generateFinalBundle(platform, libraryRelease, outReleaseFile) {
 
     var outReleaseFileStream = fs.createWriteStream(outReleaseFile);
+    //TODO: Need to generate commitID
     var commitId = 'N/A';
     var time = new Date().valueOf();
+    //TODO: Need to generate platform version
+    var platformVersion = '3.6.0';
 
-    writeLicenseHeader(outReleaseFileStream, platform, commitId);
+    writeLicenseHeader(outReleaseFileStream, platform, commitId, platformVersion);
 
     var releaseBundle = libraryRelease.bundle();
 
@@ -110,7 +113,9 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
     if(!is_top_level) return;
 
     requireTr.platform = platform;
-    var libraryRelease = bundle(platform, false, 'N/A');
+    var platformVersion = '3.6.0';
+    var commitId = '10';
+    var libraryRelease = bundle(platform, false, commitId, platformVersion);
 
     platform_json = config_changes.get_platform_json(plugins_dir, platform);
     var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));


[9/9] git commit: Merge branch 'master' into cb-7219

Posted by st...@apache.org.
Merge branch 'master' into cb-7219


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/8abfaf18
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/8abfaf18
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/8abfaf18

Branch: refs/heads/master
Commit: 8abfaf18c0b410752b622a82a2f790405ddcf89a
Parents: 7c3842a 3ead61c
Author: Steven Gill <st...@gmail.com>
Authored: Wed Sep 24 15:51:48 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Wed Sep 24 15:51:48 2014 -0700

----------------------------------------------------------------------
 cordova-lib/package.json         |  1 +
 cordova-lib/src/cordova/serve.js | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+)
----------------------------------------------------------------------



[8/9] git commit: removed console.logs

Posted by st...@apache.org.
removed console.logs


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/7c3842a9
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/7c3842a9
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/7c3842a9

Branch: refs/heads/master
Commit: 7c3842a98f83ecbcf24c0a6d55ad96064138c55b
Parents: 97c8939
Author: Steven Gill <st...@gmail.com>
Authored: Tue Sep 23 18:44:33 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Tue Sep 23 18:44:33 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 17 +++--------------
 1 file changed, 3 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/7c3842a9/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index 000b9bb..5e4c81b 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -80,8 +80,7 @@ function generateFinalBundle(platform, libraryRelease, outReleaseFile, commitId,
 
     outReleaseFileStream.on('error', function(err) {
         var newtime = new Date().valueOf() - time;
-        console.log('error while generating cordova_b.js');
-        plugman.emit('verbose', 'error while generating cordova.js');
+        events.emit('log', 'error while generating cordova.js');
     });
 
 }
@@ -112,26 +111,16 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
 
     requireTr.platform = platform;
     var platformVersion;
-    //console.log(project_dir);
     computeCommitId(function(commitId) { 
         //run version script for each platform to get platformVersion
         var versionPath = path.join(project_dir, '/cordova/version');
-        if(!fs.existsSync(versionPath)) {
-            //non cli project
-            console.log('non cli'); 
-            console.log(project_dir);
-            versionPath = path.join(project_dir, '/cordova/version'); 
-            console.log(platform);
-        }
         childProcess.exec(versionPath, function(err, stdout, stderr) {
-            console.log(versionPath);
             if (err) {
                 platformVersion = 'N/A';
-                console.log('Error running platform version script');
-                console.log(err);
+                events.emit('log', 'Error running platform version script');
+                events.emit('log', err);
             } else {
                 platformVersion = stdout.trim();
-                console.log('platformVersion: ' + platformVersion);
                 
                 var libraryRelease = bundle(platform, false, commitId, platformVersion);
 


[7/9] git commit: computeCommitId for browserify workflow fixed to handle cli and non cli workflows:q

Posted by st...@apache.org.
computeCommitId for browserify workflow fixed to handle cli and non cli workflows:q


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/97c89398
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/97c89398
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/97c89398

Branch: refs/heads/master
Commit: 97c893986b764d99d0973f3447a1ae605a307286
Parents: 744b272
Author: Steven Gill <st...@gmail.com>
Authored: Tue Sep 23 18:34:49 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Tue Sep 23 18:34:49 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/97c89398/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index e537856..000b9bb 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -112,12 +112,23 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
 
     requireTr.platform = platform;
     var platformVersion;
+    //console.log(project_dir);
     computeCommitId(function(commitId) { 
         //run version script for each platform to get platformVersion
-        childProcess.exec(path.join(process.cwd(), 'platforms/' + platform + '/cordova/version'), function(err, stdout, stderr) {
+        var versionPath = path.join(project_dir, '/cordova/version');
+        if(!fs.existsSync(versionPath)) {
+            //non cli project
+            console.log('non cli'); 
+            console.log(project_dir);
+            versionPath = path.join(project_dir, '/cordova/version'); 
+            console.log(platform);
+        }
+        childProcess.exec(versionPath, function(err, stdout, stderr) {
+            console.log(versionPath);
             if (err) {
                 platformVersion = 'N/A';
                 console.log('Error running platform version script');
+                console.log(err);
             } else {
                 platformVersion = stdout.trim();
                 console.log('platformVersion: ' + platformVersion);


[4/9] git commit: CB-7219 prepare-browserify now supports commitId and platformVersion for cordovajs

Posted by st...@apache.org.
CB-7219 prepare-browserify now supports commitId and platformVersion for cordovajs


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/f39e93fb
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/f39e93fb
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/f39e93fb

Branch: refs/heads/master
Commit: f39e93fbdad02272cc22130520c65a9701ac5904
Parents: acb3692
Author: Steven Gill <st...@gmail.com>
Authored: Tue Aug 12 17:25:36 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Mon Sep 22 15:13:11 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 187 +++++++++++----------
 1 file changed, 98 insertions(+), 89 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/f39e93fb/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index 6a776fb..e537856 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -30,6 +30,7 @@ var platform_modules   = require('./platforms'),
     windows            = require('./platforms/windows'),
     common             = require('./platforms/common'),
     fs                 = require('fs'),
+    childProcess       = require('child_process'),
     shell              = require('shelljs'),
     util               = require('util'),
     events             = require('../events'),
@@ -38,7 +39,8 @@ var platform_modules   = require('./platforms'),
     prepareNamespace   = require('./util/prepare-namespace'),
     bundle             = require('cordova-js/tasks/lib/bundle-browserify'),
     requireTr          = require('cordova-js/tasks/lib/require-tr'),
-    writeLicenseHeader = require('cordova-js/tasks/lib/write-license-header');
+    writeLicenseHeader = require('cordova-js/tasks/lib/write-license-header'),
+    computeCommitId    = require('cordova-js/tasks/lib/compute-commit-id');
 
 function uninstallQueuedPlugins(platform_json, wwwDir) {
     // Check if there are any plugins queued for uninstallation, and if so, remove any of their plugin web assets loaded in
@@ -59,14 +61,10 @@ function uninstallQueuedPlugins(platform_json, wwwDir) {
     }
 }
 
-function generateFinalBundle(platform, libraryRelease, outReleaseFile) {
+function generateFinalBundle(platform, libraryRelease, outReleaseFile, commitId, platformVersion) {
 
     var outReleaseFileStream = fs.createWriteStream(outReleaseFile);
-    //TODO: Need to generate commitID
-    var commitId = 'N/A';
     var time = new Date().valueOf();
-    //TODO: Need to generate platform version
-    var platformVersion = '3.6.0';
 
     writeLicenseHeader(outReleaseFileStream, platform, commitId, platformVersion);
 
@@ -113,90 +111,101 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
     if(!is_top_level) return;
 
     requireTr.platform = platform;
-    var platformVersion = '3.6.0';
-    var commitId = '10';
-    var libraryRelease = bundle(platform, false, commitId, platformVersion);
-
-    platform_json = config_changes.get_platform_json(plugins_dir, platform);
-    var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));
-    events.emit('verbose', 'Iterating over installed plugins:', plugins);
-
-    plugins && plugins.forEach(function(plugin) {
-        var pluginDir = path.join(plugins_dir, plugin),
-            pluginXML = path.join(pluginDir, 'plugin.xml');
-        if (!fs.existsSync(pluginXML)) {
-            plugman.emit('warn', 'Missing file: ' + pluginXML);
-            return;
-        }
-        var xml = xml_helpers.parseElementtreeSync(pluginXML);
-
-        var plugin_id = xml.getroot().attrib.id;
-
-        // add the plugins dir to the platform's www.
-        var platformPluginsDir = path.join(wwwDir, 'plugins');
-        // XXX this should not be here if there are no js-module. It leaves an empty plugins/ directory
-        shell.mkdir('-p', platformPluginsDir);
-
-        var jsModules = xml.findall('./js-module');
-        var assets = xml.findall('asset');
-        var platformTag = xml.find(util.format('./platform[@name="%s"]', platform));
-
-        if (platformTag) {
-            assets = assets.concat(platformTag.findall('./asset'));
-            jsModules = jsModules.concat(platformTag.findall('./js-module'));
-        }
-
-        // Copy www assets described in <asset> tags.
-        assets = assets || [];
-        assets.forEach(function(asset) {
-            common.asset.install(asset, pluginDir, wwwDir);
-        });
-        jsModules.forEach(function(module) {
-            // Copy the plugin's files into the www directory.
-            // NB: We can't always use path.* functions here, because they will use platform slashes.
-            // But the path in the plugin.xml and in the cordova_plugins.js should be always forward slashes.
-            var pathParts = module.attrib.src.split('/');
-
-            var fsDirname = path.join.apply(path, pathParts.slice(0, -1));
-            var fsDir = path.join(platformPluginsDir, plugin_id, fsDirname);
-            shell.mkdir('-p', fsDir);
-
-            // Read in the file, prepend the cordova.define, and write it back out.
-            var moduleName = plugin_id + '.';
-            if (module.attrib.name) {
-                moduleName += module.attrib.name;
+    var platformVersion;
+    computeCommitId(function(commitId) { 
+        //run version script for each platform to get platformVersion
+        childProcess.exec(path.join(process.cwd(), 'platforms/' + platform + '/cordova/version'), function(err, stdout, stderr) {
+            if (err) {
+                platformVersion = 'N/A';
+                console.log('Error running platform version script');
             } else {
-                moduleName += path.basename(module.attrib.src, '.js');
-            }
-
-            var fsPath = path.join.apply(path, pathParts);
-            var scriptPath = path.join(pluginDir, fsPath);
-
-            requireTr.addModule({symbol: moduleName, path: scriptPath});
-
-            module.getchildren().forEach(function(child) {
-                if (child.tag.toLowerCase() == 'clobbers') {
-                    fs.appendFileSync(scriptPath,
-                      prepareNamespace(child.attrib.target, 'c'),
-                      'utf-8');
-                } else if (child.tag.toLowerCase() == 'merges') {
-                    fs.appendFileSync(scriptPath,
-                      prepareNamespace(child.attrib.target, 'm'),
-                      'utf-8');
-                }
-            });
-            scripts.push(scriptPath);
+                platformVersion = stdout.trim();
+                console.log('platformVersion: ' + platformVersion);
+                
+                var libraryRelease = bundle(platform, false, commitId, platformVersion);
+
+                platform_json = config_changes.get_platform_json(plugins_dir, platform);
+                var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));
+                events.emit('verbose', 'Iterating over installed plugins:', plugins);
+
+                plugins && plugins.forEach(function(plugin) {
+                    var pluginDir = path.join(plugins_dir, plugin),
+                        pluginXML = path.join(pluginDir, 'plugin.xml');
+                    if (!fs.existsSync(pluginXML)) {
+                        plugman.emit('warn', 'Missing file: ' + pluginXML);
+                        return;
+                    }
+                    var xml = xml_helpers.parseElementtreeSync(pluginXML);
+
+                    var plugin_id = xml.getroot().attrib.id;
+
+                    // add the plugins dir to the platform's www.
+                    var platformPluginsDir = path.join(wwwDir, 'plugins');
+                    // XXX this should not be here if there are no js-module. It leaves an empty plugins/ directory
+                    shell.mkdir('-p', platformPluginsDir);
+
+                    var jsModules = xml.findall('./js-module');
+                    var assets = xml.findall('asset');
+                    var platformTag = xml.find(util.format('./platform[@name="%s"]', platform));
+
+                    if (platformTag) {
+                        assets = assets.concat(platformTag.findall('./asset'));
+                        jsModules = jsModules.concat(platformTag.findall('./js-module'));
+                    }
+
+                    // Copy www assets described in <asset> tags.
+                    assets = assets || [];
+                    assets.forEach(function(asset) {
+                        common.asset.install(asset, pluginDir, wwwDir);
+                    });
+                    jsModules.forEach(function(module) {
+                        // Copy the plugin's files into the www directory.
+                        // NB: We can't always use path.* functions here, because they will use platform slashes.
+                        // But the path in the plugin.xml and in the cordova_plugins.js should be always forward slashes.
+                        var pathParts = module.attrib.src.split('/');
+
+                        var fsDirname = path.join.apply(path, pathParts.slice(0, -1));
+                        var fsDir = path.join(platformPluginsDir, plugin_id, fsDirname);
+                        shell.mkdir('-p', fsDir);
+
+                        // Read in the file, prepend the cordova.define, and write it back out.
+                        var moduleName = plugin_id + '.';
+                        if (module.attrib.name) {
+                            moduleName += module.attrib.name;
+                        } else {
+                            moduleName += path.basename(module.attrib.src, '.js');
+                        }
+
+                        var fsPath = path.join.apply(path, pathParts);
+                        var scriptPath = path.join(pluginDir, fsPath);
+
+                        requireTr.addModule({symbol: moduleName, path: scriptPath});
+
+                        module.getchildren().forEach(function(child) {
+                            if (child.tag.toLowerCase() == 'clobbers') {
+                                fs.appendFileSync(scriptPath,
+                                  prepareNamespace(child.attrib.target, 'c'),
+                                  'utf-8');
+                            } else if (child.tag.toLowerCase() == 'merges') {
+                                fs.appendFileSync(scriptPath,
+                                  prepareNamespace(child.attrib.target, 'm'),
+                                  'utf-8');
+                            }
+                        });
+                        scripts.push(scriptPath);
+                    });
+                });
+
+                libraryRelease.transform(requireTr.transform);
+
+                scripts.forEach(function(script) {
+                    libraryRelease.add(script);
+                });
+
+                var outReleaseFile = path.join(wwwDir, 'cordova.js');
+
+                generateFinalBundle(platform, libraryRelease, outReleaseFile, commitId, platformVersion);
+            } 
         });
     });
-
-    libraryRelease.transform(requireTr.transform);
-
-    scripts.forEach(function(script) {
-        libraryRelease.add(script);
-    });
-
-    var outReleaseFile = path.join(wwwDir, 'cordova.js');
-
-    generateFinalBundle(platform, libraryRelease, outReleaseFile);
-
 };


[6/9] git commit: Merge branch 'cb-7219' of https://git-wip-us.apache.org/repos/asf/cordova-lib into cb-7219

Posted by st...@apache.org.
Merge branch 'cb-7219' of https://git-wip-us.apache.org/repos/asf/cordova-lib into cb-7219


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/744b2727
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/744b2727
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/744b2727

Branch: refs/heads/master
Commit: 744b2727f5c5176bf24c01cbd9267aa24bd7a3f0
Parents: f39e93f 1c0c4f0
Author: Steven Gill <st...@gmail.com>
Authored: Mon Sep 22 15:15:31 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Mon Sep 22 15:15:31 2014 -0700

----------------------------------------------------------------------

----------------------------------------------------------------------



[2/9] git commit: CB-7219 prepare-browserify now supports commitId and platformVersion for cordovajs

Posted by st...@apache.org.
CB-7219 prepare-browserify now supports commitId and platformVersion for cordovajs


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/6b358cac
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/6b358cac
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/6b358cac

Branch: refs/heads/master
Commit: 6b358cac2783ada3a10c78d4fd91924f837db1d1
Parents: c90997f
Author: Steven Gill <st...@gmail.com>
Authored: Tue Aug 12 17:25:36 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Tue Aug 12 17:25:36 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 187 +++++++++++----------
 1 file changed, 98 insertions(+), 89 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/6b358cac/cordova-lib/src/plugman/prepare-browserify.js
----------------------------------------------------------------------
diff --git a/cordova-lib/src/plugman/prepare-browserify.js b/cordova-lib/src/plugman/prepare-browserify.js
index 6a776fb..e537856 100644
--- a/cordova-lib/src/plugman/prepare-browserify.js
+++ b/cordova-lib/src/plugman/prepare-browserify.js
@@ -30,6 +30,7 @@ var platform_modules   = require('./platforms'),
     windows            = require('./platforms/windows'),
     common             = require('./platforms/common'),
     fs                 = require('fs'),
+    childProcess       = require('child_process'),
     shell              = require('shelljs'),
     util               = require('util'),
     events             = require('../events'),
@@ -38,7 +39,8 @@ var platform_modules   = require('./platforms'),
     prepareNamespace   = require('./util/prepare-namespace'),
     bundle             = require('cordova-js/tasks/lib/bundle-browserify'),
     requireTr          = require('cordova-js/tasks/lib/require-tr'),
-    writeLicenseHeader = require('cordova-js/tasks/lib/write-license-header');
+    writeLicenseHeader = require('cordova-js/tasks/lib/write-license-header'),
+    computeCommitId    = require('cordova-js/tasks/lib/compute-commit-id');
 
 function uninstallQueuedPlugins(platform_json, wwwDir) {
     // Check if there are any plugins queued for uninstallation, and if so, remove any of their plugin web assets loaded in
@@ -59,14 +61,10 @@ function uninstallQueuedPlugins(platform_json, wwwDir) {
     }
 }
 
-function generateFinalBundle(platform, libraryRelease, outReleaseFile) {
+function generateFinalBundle(platform, libraryRelease, outReleaseFile, commitId, platformVersion) {
 
     var outReleaseFileStream = fs.createWriteStream(outReleaseFile);
-    //TODO: Need to generate commitID
-    var commitId = 'N/A';
     var time = new Date().valueOf();
-    //TODO: Need to generate platform version
-    var platformVersion = '3.6.0';
 
     writeLicenseHeader(outReleaseFileStream, platform, commitId, platformVersion);
 
@@ -113,90 +111,101 @@ module.exports = function handlePrepare(project_dir, platform, plugins_dir, www_
     if(!is_top_level) return;
 
     requireTr.platform = platform;
-    var platformVersion = '3.6.0';
-    var commitId = '10';
-    var libraryRelease = bundle(platform, false, commitId, platformVersion);
-
-    platform_json = config_changes.get_platform_json(plugins_dir, platform);
-    var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));
-    events.emit('verbose', 'Iterating over installed plugins:', plugins);
-
-    plugins && plugins.forEach(function(plugin) {
-        var pluginDir = path.join(plugins_dir, plugin),
-            pluginXML = path.join(pluginDir, 'plugin.xml');
-        if (!fs.existsSync(pluginXML)) {
-            plugman.emit('warn', 'Missing file: ' + pluginXML);
-            return;
-        }
-        var xml = xml_helpers.parseElementtreeSync(pluginXML);
-
-        var plugin_id = xml.getroot().attrib.id;
-
-        // add the plugins dir to the platform's www.
-        var platformPluginsDir = path.join(wwwDir, 'plugins');
-        // XXX this should not be here if there are no js-module. It leaves an empty plugins/ directory
-        shell.mkdir('-p', platformPluginsDir);
-
-        var jsModules = xml.findall('./js-module');
-        var assets = xml.findall('asset');
-        var platformTag = xml.find(util.format('./platform[@name="%s"]', platform));
-
-        if (platformTag) {
-            assets = assets.concat(platformTag.findall('./asset'));
-            jsModules = jsModules.concat(platformTag.findall('./js-module'));
-        }
-
-        // Copy www assets described in <asset> tags.
-        assets = assets || [];
-        assets.forEach(function(asset) {
-            common.asset.install(asset, pluginDir, wwwDir);
-        });
-        jsModules.forEach(function(module) {
-            // Copy the plugin's files into the www directory.
-            // NB: We can't always use path.* functions here, because they will use platform slashes.
-            // But the path in the plugin.xml and in the cordova_plugins.js should be always forward slashes.
-            var pathParts = module.attrib.src.split('/');
-
-            var fsDirname = path.join.apply(path, pathParts.slice(0, -1));
-            var fsDir = path.join(platformPluginsDir, plugin_id, fsDirname);
-            shell.mkdir('-p', fsDir);
-
-            // Read in the file, prepend the cordova.define, and write it back out.
-            var moduleName = plugin_id + '.';
-            if (module.attrib.name) {
-                moduleName += module.attrib.name;
+    var platformVersion;
+    computeCommitId(function(commitId) { 
+        //run version script for each platform to get platformVersion
+        childProcess.exec(path.join(process.cwd(), 'platforms/' + platform + '/cordova/version'), function(err, stdout, stderr) {
+            if (err) {
+                platformVersion = 'N/A';
+                console.log('Error running platform version script');
             } else {
-                moduleName += path.basename(module.attrib.src, '.js');
-            }
-
-            var fsPath = path.join.apply(path, pathParts);
-            var scriptPath = path.join(pluginDir, fsPath);
-
-            requireTr.addModule({symbol: moduleName, path: scriptPath});
-
-            module.getchildren().forEach(function(child) {
-                if (child.tag.toLowerCase() == 'clobbers') {
-                    fs.appendFileSync(scriptPath,
-                      prepareNamespace(child.attrib.target, 'c'),
-                      'utf-8');
-                } else if (child.tag.toLowerCase() == 'merges') {
-                    fs.appendFileSync(scriptPath,
-                      prepareNamespace(child.attrib.target, 'm'),
-                      'utf-8');
-                }
-            });
-            scripts.push(scriptPath);
+                platformVersion = stdout.trim();
+                console.log('platformVersion: ' + platformVersion);
+                
+                var libraryRelease = bundle(platform, false, commitId, platformVersion);
+
+                platform_json = config_changes.get_platform_json(plugins_dir, platform);
+                var plugins = Object.keys(platform_json.installed_plugins).concat(Object.keys(platform_json.dependent_plugins));
+                events.emit('verbose', 'Iterating over installed plugins:', plugins);
+
+                plugins && plugins.forEach(function(plugin) {
+                    var pluginDir = path.join(plugins_dir, plugin),
+                        pluginXML = path.join(pluginDir, 'plugin.xml');
+                    if (!fs.existsSync(pluginXML)) {
+                        plugman.emit('warn', 'Missing file: ' + pluginXML);
+                        return;
+                    }
+                    var xml = xml_helpers.parseElementtreeSync(pluginXML);
+
+                    var plugin_id = xml.getroot().attrib.id;
+
+                    // add the plugins dir to the platform's www.
+                    var platformPluginsDir = path.join(wwwDir, 'plugins');
+                    // XXX this should not be here if there are no js-module. It leaves an empty plugins/ directory
+                    shell.mkdir('-p', platformPluginsDir);
+
+                    var jsModules = xml.findall('./js-module');
+                    var assets = xml.findall('asset');
+                    var platformTag = xml.find(util.format('./platform[@name="%s"]', platform));
+
+                    if (platformTag) {
+                        assets = assets.concat(platformTag.findall('./asset'));
+                        jsModules = jsModules.concat(platformTag.findall('./js-module'));
+                    }
+
+                    // Copy www assets described in <asset> tags.
+                    assets = assets || [];
+                    assets.forEach(function(asset) {
+                        common.asset.install(asset, pluginDir, wwwDir);
+                    });
+                    jsModules.forEach(function(module) {
+                        // Copy the plugin's files into the www directory.
+                        // NB: We can't always use path.* functions here, because they will use platform slashes.
+                        // But the path in the plugin.xml and in the cordova_plugins.js should be always forward slashes.
+                        var pathParts = module.attrib.src.split('/');
+
+                        var fsDirname = path.join.apply(path, pathParts.slice(0, -1));
+                        var fsDir = path.join(platformPluginsDir, plugin_id, fsDirname);
+                        shell.mkdir('-p', fsDir);
+
+                        // Read in the file, prepend the cordova.define, and write it back out.
+                        var moduleName = plugin_id + '.';
+                        if (module.attrib.name) {
+                            moduleName += module.attrib.name;
+                        } else {
+                            moduleName += path.basename(module.attrib.src, '.js');
+                        }
+
+                        var fsPath = path.join.apply(path, pathParts);
+                        var scriptPath = path.join(pluginDir, fsPath);
+
+                        requireTr.addModule({symbol: moduleName, path: scriptPath});
+
+                        module.getchildren().forEach(function(child) {
+                            if (child.tag.toLowerCase() == 'clobbers') {
+                                fs.appendFileSync(scriptPath,
+                                  prepareNamespace(child.attrib.target, 'c'),
+                                  'utf-8');
+                            } else if (child.tag.toLowerCase() == 'merges') {
+                                fs.appendFileSync(scriptPath,
+                                  prepareNamespace(child.attrib.target, 'm'),
+                                  'utf-8');
+                            }
+                        });
+                        scripts.push(scriptPath);
+                    });
+                });
+
+                libraryRelease.transform(requireTr.transform);
+
+                scripts.forEach(function(script) {
+                    libraryRelease.add(script);
+                });
+
+                var outReleaseFile = path.join(wwwDir, 'cordova.js');
+
+                generateFinalBundle(platform, libraryRelease, outReleaseFile, commitId, platformVersion);
+            } 
         });
     });
-
-    libraryRelease.transform(requireTr.transform);
-
-    scripts.forEach(function(script) {
-        libraryRelease.add(script);
-    });
-
-    var outReleaseFile = path.join(wwwDir, 'cordova.js');
-
-    generateFinalBundle(platform, libraryRelease, outReleaseFile);
-
 };


[3/9] git commit: CB-7219 prepare-browserify computes commitId and platformVersion

Posted by st...@apache.org.
CB-7219 prepare-browserify computes commitId and platformVersion


Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/1c0c4f00
Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/1c0c4f00
Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/1c0c4f00

Branch: refs/heads/master
Commit: 1c0c4f00d5ceac6fd62f00089ff350c1c3768862
Parents: 13fe6b0 6b358ca
Author: Steven Gill <st...@gmail.com>
Authored: Tue Aug 12 17:32:03 2014 -0700
Committer: Steven Gill <st...@gmail.com>
Committed: Tue Aug 12 17:32:03 2014 -0700

----------------------------------------------------------------------
 cordova-lib/src/plugman/prepare-browserify.js | 184 +++++++++++----------
 1 file changed, 99 insertions(+), 85 deletions(-)
----------------------------------------------------------------------