You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ag...@apache.org on 2014/04/24 21:17:18 UTC

[1/2] git commit: Enforse working directory to be sibling of cordova-coho

Repository: cordova-coho
Updated Branches:
  refs/heads/master 608e06d93 -> b8f3a0f98


Enforse working directory to be sibling of cordova-coho


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

Branch: refs/heads/master
Commit: 73630d295919d6ddc10aa25758450518151943c5
Parents: 608e06d
Author: Andrew Grieve <ag...@chromium.org>
Authored: Thu Apr 24 14:05:09 2014 -0400
Committer: Andrew Grieve <ag...@chromium.org>
Committed: Thu Apr 24 14:05:09 2014 -0400

----------------------------------------------------------------------
 src/apputil.js | 12 +++++++++++-
 src/main.js    |  8 ++++++++
 2 files changed, 19 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/73630d29/src/apputil.js
----------------------------------------------------------------------
diff --git a/src/apputil.js b/src/apputil.js
index ec158a4..2c6d492 100644
--- a/src/apputil.js
+++ b/src/apputil.js
@@ -21,6 +21,16 @@ var path = require('path');
 
 var origWorkingDir = process.cwd();
 
+exports.initWorkingDir = function() {
+    var curDir = path.resolve(origWorkingDir);
+    var newDir = path.resolve(path.join(__dirname), '..', '..');
+    if (curDir != newDir) {
+        console.log('Running from ' + newDir);
+        process.chdir(newDir);
+        origWorkingDir = newDir;
+    }
+}
+
 exports.fatal = function() {
     console.error.apply(console, arguments);
     process.exit(1);
@@ -31,7 +41,7 @@ exports.print = function() {
     // Prefix any prints() to distinguish them from command output.
     if (newArgs.length > 1 || newArgs[0]) {
         var curDir = path.relative(origWorkingDir, process.cwd());
-        var prefix = curDir ? './' + curDir + '/ =' : './ =';
+        var prefix = curDir ? curDir + '/ =' : './ =';
         var PREFIX_LEN = 30;
         if (prefix.length < PREFIX_LEN) {
             prefix += new Array(PREFIX_LEN - prefix.length + 1).join('=');

http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/73630d29/src/main.js
----------------------------------------------------------------------
diff --git a/src/main.js b/src/main.js
index 4b3f4db..f69c37a 100644
--- a/src/main.js
+++ b/src/main.js
@@ -17,6 +17,7 @@ specific language governing permissions and limitations
 under the License.
 */
 
+var path = require('path');
 try {
     var co = require('co');
     var optimist = require('optimist');
@@ -24,6 +25,7 @@ try {
     console.log('Please run "npm install" from this directory:\n\t' + __dirname);
     process.exit(2);
 }
+var apputil = require('./apputil');
 
 module.exports = function() {
     var repoCommands = [
@@ -131,6 +133,9 @@ module.exports = function() {
         .usage(usage)
         .check(function(argv) {
             command = argv._[0];
+            if (command == 'foreach') {
+                argv._[0] = command = 'for-each';
+            }
             if (!command) {
                 throw 'No command specified.';
             }
@@ -139,6 +144,9 @@ module.exports = function() {
             }
         }).argv;
 
+    // Change directory to be a sibling of coho.
+    apputil.initWorkingDir();
+
     var entry = commandMap[command].entryPoint;
     co(entry)();
 }


[2/2] git commit: Unbreak the -r auto flag. Fix for-each command's arg handling

Posted by ag...@apache.org.
Unbreak the -r auto flag. Fix for-each command's arg handling


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

Branch: refs/heads/master
Commit: b8f3a0f9899e9543d9270e1031dd585105d382bf
Parents: 73630d2
Author: Andrew Grieve <ag...@chromium.org>
Authored: Thu Apr 24 15:14:04 2014 -0400
Committer: Andrew Grieve <ag...@chromium.org>
Committed: Thu Apr 24 15:16:51 2014 -0400

----------------------------------------------------------------------
 src/apputil.js         |  6 +++---
 src/cadance-release.js |  1 +
 src/for-each.js        |  9 +++++----
 src/main.js            | 16 ++++++++++------
 src/repoutil.js        | 14 +++++++-------
 5 files changed, 26 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/b8f3a0f9/src/apputil.js
----------------------------------------------------------------------
diff --git a/src/apputil.js b/src/apputil.js
index 2c6d492..c172abb 100644
--- a/src/apputil.js
+++ b/src/apputil.js
@@ -21,14 +21,14 @@ var path = require('path');
 
 var origWorkingDir = process.cwd();
 
-exports.initWorkingDir = function() {
+exports.initWorkingDir = function(chdir) {
     var curDir = path.resolve(origWorkingDir);
-    var newDir = path.resolve(path.join(__dirname), '..', '..');
+    var newDir = chdir ? path.resolve(path.join(__dirname), '..', '..') : curDir;
     if (curDir != newDir) {
-        console.log('Running from ' + newDir);
         process.chdir(newDir);
         origWorkingDir = newDir;
     }
+    console.log('Running from ' + newDir);
 }
 
 exports.fatal = function() {

http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/b8f3a0f9/src/cadance-release.js
----------------------------------------------------------------------
diff --git a/src/cadance-release.js b/src/cadance-release.js
index b068bb7..8d8056f 100644
--- a/src/cadance-release.js
+++ b/src/cadance-release.js
@@ -208,6 +208,7 @@ exports.tagReleaseBranchCommand = function*(argv) {
                'Usage: $0 tag-release --version=2.8.0-rc1')
         .options('pretend', {
             desc: 'Don\'t actually run git commands, just print out what would be run.',
+            type: 'boolean'
          })
     );
     var repos = flagutil.computeReposFromFlag(argv.r);

http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/b8f3a0f9/src/for-each.js
----------------------------------------------------------------------
diff --git a/src/for-each.js b/src/for-each.js
index fcea16e..0ec6c71 100644
--- a/src/for-each.js
+++ b/src/for-each.js
@@ -23,13 +23,13 @@ var executil = require('./executil');
 var flagutil = require('./flagutil');
 var repoutil = require('./repoutil');
 
-module.exports = function*(argv) {
+module.exports = function*() {
     var opt = flagutil.registerRepoFlag(optimist)
     opt = flagutil.registerHelpFlag(opt);
     var argv = opt
         .usage('Performs the supplied shell command in each repo directory.\n' +
                '\n' +
-               'Usage: $0 foreach "shell command"')
+               'Usage: $0 for-each "shell command"')
         .argv;
 
     if (argv.h) {
@@ -37,9 +37,10 @@ module.exports = function*(argv) {
         process.exit(1);
     }
     var repos = flagutil.computeReposFromFlag(argv.r);
-    var cmd = argv._[1];
+    var cmd = [process.env['SHELL'] || 'sh', '-c', argv._[1]];
+
     yield repoutil.forEachRepo(repos, function*(repo) {
-         yield executil.execHelper(argv._.slice(1), false, true);
+         yield executil.execHelper(cmd, false, true);
     });
 }
 

http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/b8f3a0f9/src/main.js
----------------------------------------------------------------------
diff --git a/src/main.js b/src/main.js
index f69c37a..58d4ffa 100644
--- a/src/main.js
+++ b/src/main.js
@@ -108,6 +108,8 @@ module.exports = function() {
     repoCommands.forEach(addToCommandMap);
     releaseCommands.forEach(addToCommandMap);
     otherCommands.forEach(addToCommandMap);
+    // aliases:
+    commandMap['foreach'] = commandMap['for-each'];
 
     var usage = 'Usage: $0 command [options]\n\n';
     function addCommandUsage(cmd) {
@@ -124,18 +126,20 @@ module.exports = function() {
     usage += 'Some examples:\n';
     usage += '    ./cordova-coho/coho repo-clone -r plugins -r mobile-spec -r android -r ios -r cli\n';
     usage += '    ./cordova-coho/coho repo-update\n';
-    usage += '    ./cordova-coho/coho foreach -r plugins "git checkout master"\n';
-    usage += '    ./cordova-coho/coho foreach -r plugins "git clean -fd"\n';
+    usage += '    ./cordova-coho/coho for-each -r plugins "git checkout master"\n';
+    usage += '    ./cordova-coho/coho for-each -r plugins "git clean -fd"\n';
     usage += '    ./cordova-coho/coho last-week --me';
 
     var command;
     var argv = optimist
         .usage(usage)
+        .options('chdir', {
+            desc: 'Use --no-chdir to run in your CWD instead of the parent of cordova-coho/',
+            type: 'boolean',
+            default: true
+         })
         .check(function(argv) {
             command = argv._[0];
-            if (command == 'foreach') {
-                argv._[0] = command = 'for-each';
-            }
             if (!command) {
                 throw 'No command specified.';
             }
@@ -145,7 +149,7 @@ module.exports = function() {
         }).argv;
 
     // Change directory to be a sibling of coho.
-    apputil.initWorkingDir();
+    apputil.initWorkingDir(argv.chdir);
 
     var entry = commandMap[command].entryPoint;
     co(entry)();

http://git-wip-us.apache.org/repos/asf/cordova-coho/blob/b8f3a0f9/src/repoutil.js
----------------------------------------------------------------------
diff --git a/src/repoutil.js b/src/repoutil.js
index fad3067..6e6ce99 100644
--- a/src/repoutil.js
+++ b/src/repoutil.js
@@ -360,15 +360,8 @@ var otherRepos = [
 
 var allRepos = platformRepos.concat(nonPlatformRepos).concat(pluginRepos).concat(otherRepos);
 
-function computeExistingRepos() {
-    return allRepos.filter(function(repo) {
-        return fs.existsSync(repo.repoName);
-    });
-}
-
 var repoGroups = {
     'all': allRepos,
-    'auto': computeExistingRepos(),
     'platform': platformRepos,
     'plugins': pluginRepos,
     'active-platform': platformRepos.filter(function(r) { return !r.inactive }),
@@ -376,6 +369,13 @@ var repoGroups = {
 };
 repoGroups['cadence'] = repoGroups['active-platform'].concat([getRepoById('cli'), getRepoById('js'), getRepoById('mobile-spec'), getRepoById('app-hello-world'), getRepoById('docs')]);
 
+repoGroups.__defineGetter__('auto', function() {
+    return allRepos.filter(function(repo) {
+        return fs.existsSync(repo.repoName);
+    });
+});
+
+
 exports.repoGroups = repoGroups;
 
 function getRepoById(id, opt_repos) {