You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by fi...@apache.org on 2013/01/10 23:44:51 UTC
[2/2] git commit: Fixes CB-2075: cordova-cli has trouble with
projects under svn revision control. Added a "deleteSvnFolders" utility
method to help with this.
Updated Branches:
refs/heads/master 4f9eebe86 -> 161446a61
Updated Tags: refs/tags/2.3.4 [created] 161446a61
Fixes CB-2075: cordova-cli has trouble with projects under svn revision control. Added a "deleteSvnFolders" utility method to help with this.
Project: http://git-wip-us.apache.org/repos/asf/cordova-cli/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-cli/commit/161446a6
Tree: http://git-wip-us.apache.org/repos/asf/cordova-cli/tree/161446a6
Diff: http://git-wip-us.apache.org/repos/asf/cordova-cli/diff/161446a6
Branch: refs/heads/master
Commit: 161446a616044d53ff9bc1b597b1ab346553c5bf
Parents: e71881f
Author: Fil Maj <ma...@gmail.com>
Authored: Thu Jan 10 14:47:03 2013 -0800
Committer: Fil Maj <ma...@gmail.com>
Committed: Thu Jan 10 14:47:03 2013 -0800
----------------------------------------------------------------------
package.json | 2 +-
src/hooker.js | 4 +++-
src/metadata/android_parser.js | 11 +++++++++--
src/metadata/blackberry_parser.js | 2 ++
src/metadata/ios_parser.js | 5 ++++-
src/util.js | 12 ++++++++++++
6 files changed, 31 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index 990e043..9e5c25b 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "cordova",
- "version": "2.3.3",
+ "version": "2.3.4",
"preferGlobal": "true",
"description": "Cordova command line interface tool",
"main": "cordova",
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/src/hooker.js
----------------------------------------------------------------------
diff --git a/src/hooker.js b/src/hooker.js
index d7b2e0b..e78d19d 100644
--- a/src/hooker.js
+++ b/src/hooker.js
@@ -21,7 +21,9 @@ module.exports.prototype = {
// Fire script-based hooks
var contents = fs.readdirSync(dir);
contents.forEach(function(script) {
- var status = shell.exec(path.join(dir, script));
+ var fullpath = path.join(dir, script);
+ if (fs.statSync(fullpath).isDirectory()) return; // skip directories if they're in there.
+ var status = shell.exec(fullpath);
if (status.code != 0) throw 'Script "' + path.basename(script) + '"' + 'in the ' + hook + ' hook exited with non-zero status code. Aborting.';
});
return true;
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/src/metadata/android_parser.js
----------------------------------------------------------------------
diff --git a/src/metadata/android_parser.js b/src/metadata/android_parser.js
index 90b06b8..6723ff1 100644
--- a/src/metadata/android_parser.js
+++ b/src/metadata/android_parser.js
@@ -33,7 +33,7 @@ module.exports.prototype = {
manifest.getroot().attrib.package = pkg;
fs.writeFileSync(this.manifest, manifest.write({indent: 4}), 'utf-8');
var orig_pkgDir = path.join(this.path, 'src', path.join.apply(null, orig_pkg.split('.')));
- var orig_java_class = fs.readdirSync(orig_pkgDir)[0];
+ var orig_java_class = fs.readdirSync(orig_pkgDir).filter(function(f) {return f.indexOf('.svn') == -1;})[0];
var pkgDir = path.join(this.path, 'src', path.join.apply(null, pkg.split('.')));
shell.mkdir('-p', pkgDir);
var orig_javs = path.join(orig_pkgDir, orig_java_class);
@@ -61,9 +61,16 @@ module.exports.prototype = {
var projectRoot = util.isCordova(process.cwd());
var www = path.join(projectRoot, 'www');
var platformWww = path.join(this.path, 'assets');
+ // copy over all app www assets
shell.cp('-rf', www, platformWww);
+ platformWww = path.join(platformWww, 'www');
+
+ // write out android lib's cordova.js
var jsPath = path.join(util.libDirectory, 'cordova-android', 'framework', 'assets', 'js', 'cordova.android.js');
- fs.writeFileSync(path.join(platformWww, 'www', 'cordova.js'), fs.readFileSync(jsPath, 'utf-8'), 'utf-8');
+ fs.writeFileSync(path.join(platformWww, 'cordova.js'), fs.readFileSync(jsPath, 'utf-8'), 'utf-8');
+
+ // delete any .svn folders copied over
+ util.deleteSvnFolders(platformWww);
},
update_project:function(cfg) {
this.update_from_config(cfg);
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/src/metadata/blackberry_parser.js
----------------------------------------------------------------------
diff --git a/src/metadata/blackberry_parser.js b/src/metadata/blackberry_parser.js
index cafae97..5581cff 100644
--- a/src/metadata/blackberry_parser.js
+++ b/src/metadata/blackberry_parser.js
@@ -85,6 +85,8 @@ module.exports.prototype = {
var contents = fs.readFileSync(index, 'utf-8');
contents = contents.replace(/<script type="text\/javascript" src="cordova\.js"><\/script>/, '<script type="text/javascript" src="js/webworks.js"></script><script type="text/javascript" src="cordova.js"></script>');
fs.writeFileSync(index, contents, 'utf-8');
+
+ util.deleteSvnFolders(platformWww);
},
write_project_properties:function() {
// TODO: eventually support all blackberry sub-platforms
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/src/metadata/ios_parser.js
----------------------------------------------------------------------
diff --git a/src/metadata/ios_parser.js b/src/metadata/ios_parser.js
index 61b23e2..bda23c1 100644
--- a/src/metadata/ios_parser.js
+++ b/src/metadata/ios_parser.js
@@ -68,12 +68,15 @@ module.exports.prototype = {
update_www:function() {
var projectRoot = util.isCordova(process.cwd());
+ // copy over app www assets
var www = path.join(projectRoot, 'www');
shell.cp('-rf', www, this.path);
- //shell.cp('-f', path.join(www, 'config.xml'), path.join(this.cordovaproj, 'config.xml'));
var project_www = path.join(this.path, 'www');
+ // write out proper cordova.js
+ // TODO: this seems bad and brittle..
var js = fs.readdirSync(project_www).filter(function(e) { return e.match(/\.js$/i); })[0];
shell.mv('-f', path.join(project_www, js), path.join(project_www, 'cordova.js'));
+ util.deleteSvnFolders(project_www);
},
update_project:function(cfg, callback) {
var self = this;
http://git-wip-us.apache.org/repos/asf/cordova-cli/blob/161446a6/src/util.js
----------------------------------------------------------------------
diff --git a/src/util.js b/src/util.js
index 43583c3..ca2e7f0 100644
--- a/src/util.js
+++ b/src/util.js
@@ -120,5 +120,17 @@ module.exports = {
} else {
module.exports.extractCordovaLib(callback);
}
+ },
+ // Recursively deletes .svn folders from a target path
+ deleteSvnFolders:function(dir) {
+ var contents = fs.readdirSync(dir);
+ contents.forEach(function(entry) {
+ var fullpath = path.join(dir, entry);
+ if (fs.statSync(fullpath).isDirectory()) {
+ if (entry == '.svn') {
+ shell.rm('-rf', fullpath);
+ } else module.exports.deleteSvnFolders(fullpath);
+ }
+ });
}
};