You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by bh...@apache.org on 2014/04/13 03:08:26 UTC

[44/53] [abbrv] [partial] CB-6440 create - use shelljs rather than custom copy function

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/package.json
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/package.json b/blackberry10/node_modules/jake/package.json
deleted file mode 100644
index cc27a71..0000000
--- a/blackberry10/node_modules/jake/package.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
-  "name": "jake",
-  "description": "JavaScript build tool, similar to Make or Rake",
-  "keywords": [
-    "build",
-    "cli",
-    "make",
-    "rake"
-  ],
-  "version": "0.5.16",
-  "author": {
-    "name": "Matthew Eernisse",
-    "email": "mde@fleegix.org",
-    "url": "http://fleegix.org"
-  },
-  "bin": {
-    "jake": "./bin/cli.js"
-  },
-  "main": "./lib/jake.js",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/mde/jake.git"
-  },
-  "preferGlobal": true,
-  "dependencies": {
-    "minimatch": "0.2.x",
-    "utilities": "0.0.x"
-  },
-  "devDependencies": {},
-  "engines": {
-    "node": "*"
-  },
-  "readme": "### Jake -- JavaScript build tool for Node.js\n\n### Installing with [NPM](http://npmjs.org/)\n\nInstall globally with:\n\n    npm install -g jake\n\nOr you may also install it as a development dependency in a package.json file:\n\n    // package.json\n    \"devDependencies\": {\n      \"jake\": \"latest\"\n    }\n\nThen install it with `npm install`\n\nNote Jake is intended to be mostly a command-line tool, but lately there have been\nchanges to it so it can be either embedded, or run from inside your project.\n\n### Installing from source\n\nPrerequisites: Jake requires [Node.js](<http://nodejs.org/>), and the\n[utilities](https://npmjs.org/package/utilities) and\n[minimatch](https://npmjs.org/package/minimatch) modules.\n\nGet Jake:\n\n    git clone git://github.com/mde/jake.git\n\nBuild Jake:\n\n    cd jake && make && sudo make install\n\nEven if you're installing Jake from source, you'll still need NPM for installing\nthe few modules Jake depends on. `make install`
  will do this automatically for\nyou.\n\nBy default Jake is installed in \"/usr/local.\" To install it into a different\ndirectory (e.g., one that doesn't require super-user privilege), pass the PREFIX\nvariable to the `make install` command.  For example, to install it into a\n\"jake\" directory in your home directory, you could use this:\n\n    make && make install PREFIX=~/jake\n\nIf do you install Jake somewhere special, you'll need to add the \"bin\" directory\nin the install target to your PATH to get access to the `jake` executable.\n\n### Windows, installing from source\n\nFor Windows users installing from source, there are some additional steps.\n\n*Assumed: current directory is the same directory where node.exe is present.*\n\nGet Jake:\n\n    git clone git://github.com/mde/jake.git node_modules/jake\n\nCopy jake.bat and jake to the same directory as node.exe\n\n    copy node_modules/jake/jake.bat jake.bat\n    copy node_modules/jake/jake jake\n\nAdd the directory of node.
 exe to the environment PATH variable.\n\n### Basic usage\n\n    jake [options ...] [env variables ...] target\n\n### Description\n\n    Jake is a simple JavaScript build program with capabilities similar to the\n    regular make or rake command.\n\n    Jake has the following features:\n        * Jakefiles are in standard JavaScript syntax\n        * Tasks with prerequisites\n        * Namespaces for tasks\n        * Async task execution\n\n### Options\n\n    -V/v\n    --version                   Display the Jake version.\n\n    -h\n    --help                      Display help message.\n\n    -f *FILE*\n    --jakefile *FILE*           Use FILE as the Jakefile.\n\n    -C *DIRECTORY*\n    --directory *DIRECTORY*     Change to DIRECTORY before running tasks.\n\n    -q\n    --quiet                     Do not log messages to standard output.\n\n    -J *JAKELIBDIR*\n    --jakelibdir *JAKELIBDIR*   Auto-import any .jake files in JAKELIBDIR.\n                                (default is 'jake
 lib')\n\n    -B\n    --always-make               Unconditionally make all targets.\n\n    -t\n    --trace                     Enable full backtrace.\n\n    -T/ls\n    --tasks                     Display the tasks (matching optional PATTERN)\n                                with descriptions, then exit.\n\n### Jakefile syntax\n\nA Jakefile is just executable JavaScript. You can include whatever JavaScript\nyou want in it.\n\n## API Docs\n\nAPI docs [can be found here](http://mde.github.com/jake/doc/).\n\n## Tasks\n\nUse `task` to define tasks. It has one required argument, the task-name, and\nthree optional arguments:\n\n```javascript\ntask(name, [prerequisites], [action], [opts]);\n```\n\nThe `name` argument is a String with the name of the task, and `prerequisites`\nis an optional Array arg of the list of prerequisite tasks to perform first.\n\nThe `action` is a Function defininng the action to take for the task. (Note that\nObject-literal syntax for name/prerequisites in a single 
 argument a la Rake is\nalso supported, but JavaScript's lack of support for dynamic keys in Object\nliterals makes it not very useful.) The action is invoked with the Task object\nitself as the execution context (i.e, \"this\" inside the action references the\nTask object).\n\nThe `opts` argument is the normal JavaScript-style 'options' object. When a\ntask's operations are asynchronous, the `async` property should be set to\n`true`, and the task must call `complete()` to signal to Jake that the task is\ndone, and execution can proceed. By default the `async` property is `false`.\n\nTasks created with `task` are always executed when asked for (or are a\nprerequisite). Tasks created with `file` are only executed if no file with the\ngiven name exists or if any of its file-prerequisites are more recent than the\nfile named by the task. Also, if any prerequisite is a regular task, the file\ntask will always be executed.\n\nUse `desc` to add a string description of the task.\n\nHere's a
 n example:\n\n```javascript\ndesc('This is the default task.');\ntask('default', function (params) {\n  console.log('This is the default task.');\n});\n\ndesc('This task has prerequisites.');\ntask('hasPrereqs', ['foo', 'bar', 'baz'], function (params) {\n  console.log('Ran some prereqs first.');\n});\n```\n\nAnd here's an example of an asynchronous task:\n\n```javascript\ndesc('This is an asynchronous task.');\ntask('asyncTask', {async: true}, function () {\n  setTimeout(complete, 1000);\n});\n```\n\nA Task is also an EventEmitter which emits the 'complete' event when it is\nfinished. This allows asynchronous tasks to be run from within other asked via\neither `invoke` or `execute`, and ensure they will complete before the rest of\nthe containing task executes. See the section \"Running tasks from within other\ntasks,\" below.\n\n### File-tasks\n\nCreate a file-task by calling `file`.\n\nFile-tasks create a file from one or more other files. With a file-task, Jake\nchecks both that
  the file exists, and also that it is not older than the files\nspecified by any prerequisite tasks. File-tasks are particularly useful for\ncompiling something from a tree of source files.\n\n```javascript\ndesc('This builds a minified JS file for production.');\nfile('foo-minified.js', ['bar', 'foo-bar.js', 'foo-baz.js'], function () {\n  // Code to concat and minify goes here\n});\n```\n\n### Directory-tasks\n\nCreate a directory-task by calling `directory`.\n\nDirectory-tasks create a directory for use with for file-tasks. Jake checks for\nthe existence of the directory, and only creates it if needed.\n\n```javascript\ndesc('This creates the bar directory for use with the foo-minified.js file-task.');\ndirectory('bar');\n```\n\nThis task will create the directory when used as a prerequisite for a file-task,\nor when run from the command-line.\n\n### Namespaces\n\nUse `namespace` to create a namespace of tasks to perform. Call it with two arguments:\n\n```javascript\nnamespace(na
 me, namespaceTasks);\n```\n\nWhere is `name` is the name of the namespace, and `namespaceTasks` is a function\nwith calls inside it to `task` or `desc` definining all the tasks for that\nnamespace.\n\nHere's an example:\n\n```javascript\ndesc('This is the default task.');\ntask('default', function () {\n  console.log('This is the default task.');\n});\n\nnamespace('foo', function () {\n  desc('This the foo:bar task');\n  task('bar', function () {\n    console.log('doing foo:bar task');\n  });\n\n  desc('This the foo:baz task');\n  task('baz', ['default', 'foo:bar'], function () {\n    console.log('doing foo:baz task');\n  });\n\n});\n```\n\nIn this example, the foo:baz task depends on the the default and foo:bar tasks.\n\n### Passing parameters to jake\n\nParameters can be passed to Jake two ways: plain arguments, and environment\nvariables.\n\nTo pass positional arguments to the Jake tasks, enclose them in square braces,\nseparated by commas, after the name of the task on the comma
 nd-line. For\nexample, with the following Jakefile:\n\n```javascript\ndesc('This is an awesome task.');\ntask('awesome', function (a, b, c) {\n  console.log(a, b, c);\n});\n```\n\nYou could run `jake` like this:\n\n    jake awesome[foo,bar,baz]\n\nAnd you'd get the following output:\n\n    foo bar baz\n\nNote that you *cannot* uses spaces between the commas separating the parameters.\n\nAny parameters passed after the Jake task that contain an equals sign (=) will\nbe added to process.env.\n\nWith the following Jakefile:\n\n```javascript\ndesc('This is an awesome task.');\ntask('awesome', function (a, b, c) {\n  console.log(a, b, c);\n  console.log(process.env.qux, process.env.frang);\n});\n```\n\nYou could run `jake` like this:\n\n    jake awesome[foo,bar,baz] qux=zoobie frang=asdf\n\nAnd you'd get the following output:\n\n    foo bar baz\n    zoobie asdf\nRunning `jake` with no arguments runs the default task.\n\n__Note for zsh users__ : you will need to escape the brackets or wra
 p in single\nquotes like this to pass parameters :\n\n    jake 'awesome[foo,bar,baz]'\n\nAn other solution is to desactivate permannently file-globbing for the `jake`\ncommand. You can do this by adding this line to your `.zshrc` file :\n\n    alias jake=\"noglob jake\"\n\n### Cleanup after all tasks run, jake 'complete' event\n\nThe base 'jake' object is an EventEmitter, and fires a 'complete' event after\nrunning all tasks.\n\nThis is sometimes useful when a task starts a process which keeps the Node\nevent-loop running (e.g., a database connection). If you know you want to stop\nthe running Node process after all tasks have finished, you can set a listener\nfor the 'complete' event, like so:\n\n```javascript\njake.addListener('complete', function () {\n  process.exit();\n});\n```\n\n### Running tasks from within other tasks\n\nJake supports the ability to run a task from within another task via the\n`invoke` and `execute` methods.\n\nThe `invoke` method will run the desired task,
  along with its prerequisites:\n\n```javascript\ndesc('Calls the foo:bar task and its prerequisites.');\ntask('invokeFooBar', function () {\n  // Calls foo:bar and its prereqs\n  jake.Task['foo:bar'].invoke();\n});\n```\n\nThe `invoke` method will only run the task once, even if you call it repeatedly.\n\n```javascript\ndesc('Calls the foo:bar task and its prerequisites.');\ntask('invokeFooBar', function () {\n  // Calls foo:bar and its prereqs\n  jake.Task['foo:bar'].invoke();\n  // Does nothing\n  jake.Task['foo:bar'].invoke();\n});\n```\n\nThe `execute` method will run the desired task without its prerequisites:\n\n```javascript\ndesc('Calls the foo:bar task without its prerequisites.');\ntask('executeFooBar', function () {\n  // Calls foo:bar without its prereqs\n  jake.Task['foo:baz'].execute();\n});\n```\n\nCalling `execute` repeatedly will run the desired task repeatedly.\n\n```javascript\ndesc('Calls the foo:bar task without its prerequisites.');\ntask('executeFooBar', funct
 ion () {\n  // Calls foo:bar without its prereqs\n  jake.Task['foo:baz'].execute();\n  // Can keep running this over and over\n  jake.Task['foo:baz'].execute();\n  jake.Task['foo:baz'].execute();\n});\n```\n\nIf you want to run the task and its prerequisites more than once, you can use\n`invoke` with the `reenable` method.\n\n```javascript\ndesc('Calls the foo:bar task and its prerequisites.');\ntask('invokeFooBar', function () {\n  // Calls foo:bar and its prereqs\n  jake.Task['foo:bar'].invoke();\n  // Does nothing\n  jake.Task['foo:bar'].invoke();\n  // Only re-runs foo:bar, but not its prerequisites\n  jake.Task['foo:bar'].reenable();\n  jake.Task['foo:bar'].invoke();\n});\n```\n\nThe `reenable` method takes a single Boolean arg, a 'deep' flag, which reenables\nthe task's prerequisites if set to true.\n\n```javascript\ndesc('Calls the foo:bar task and its prerequisites.');\ntask('invokeFooBar', function () {\n  // Calls foo:bar and its prereqs\n  jake.Task['foo:bar'].invoke();\n
   // Does nothing\n  jake.Task['foo:bar'].invoke();\n  // Re-runs foo:bar and all of its prerequisites\n  jake.Task['foo:bar'].reenable(true);\n  jake.Task['foo:bar'].invoke();\n});\n```\n\nIt's easy to pass params on to a sub-task run via `invoke` or `execute`:\n\n```javascript\ndesc('Passes params on to other tasks.');\ntask('passParams', function () {\n  var t = jake.Task['foo:bar'];\n  // Calls foo:bar, passing along current args\n  t.invoke.apply(t, arguments);\n});\n```\n\n### Managing asynchrony without prereqs (e.g., when using `invoke`)\n\nYou can mix sync and async without problems when using normal prereqs, because\nthe Jake execution loop takes care of the difference for you. But when you call\n`invoke` or `execute`, you have to manage the asynchrony yourself.\n\nHere's a correct working example:\n\n```javascript\ntask('async1', ['async2'], {async: true}, function () {\n    console.log('-- async1 start ----------------');\n    setTimeout(function () {\n        console.lo
 g('-- async1 done ----------------');\n        complete();\n    }, 1000);\n});\n\ntask('async2', {async: true}, function () {\n    console.log('-- async2 start ----------------');\n    setTimeout(function () {\n        console.log('-- async2 done ----------------');\n        complete();\n    }, 500);\n});\n\ntask('init', ['async1', 'async2'], {async: true}, function () {\n    console.log('-- init start ----------------');\n    setTimeout(function () {\n        console.log('-- init done ----------------');\n        complete();\n    }, 100);\n});\n\ntask('default', {async: true}, function () {\n  console.log('-- default start ----------------');\n  var init = jake.Task.init;\n  init.addListener('complete', function () {\n    console.log('-- default done ----------------');\n    complete();\n  });\n  init.invoke();\n});\n```\n\nYou have to declare the \"default\" task as asynchronous as well, and call\n`complete` on it when \"init\" finishes. Here's the output:\n\n    -- default start 
 ----------------\n    -- async2 start ----------------\n    -- async2 done ----------------\n    -- async1 start ----------------\n    -- async1 done ----------------\n    -- init start ----------------\n    -- init done ----------------\n    -- default done ----------------\n\nYou get what you expect -- \"default\" starts, the rest runs, and finally\n\"default\" finishes.\n\n### Evented tasks\n\nTasks are EventEmitters. They can fire 'complete' and 'error' events.\n\nIf a task called via `invoke` is asynchronous, you can set a listener on the\n'complete' event to run any code that depends on it.\n\n```javascript\ndesc('Calls the async foo:baz task and its prerequisites.');\ntask('invokeFooBaz', {async: true}, function () {\n  var t = jake.Task['foo:baz'];\n  t.addListener('complete', function () {\n    console.log('Finished executing foo:baz');\n    // Maybe run some other code\n    // ...\n    // Complete the containing task\n    complete();\n  });\n  // Kick off foo:baz\n  t.invo
 ke();\n});\n```\n\nIf you want to handle the errors in a task in some specific way, you can set a\nlistener for the 'error' event, like so:\n\n```javascript\nnamespace('vronk', function () {\n  task('groo', function () {\n    var t = jake.Task['vronk:zong'];\n    t.addListener('error', function (e) {\n      console.log(e.message);\n    });\n    t.invoke();\n  });\n\n  task('zong', function () {\n    throw new Error('OMFGZONG');\n  });\n});\n```\n\nIf no specific listener is set for the \"error\" event, errors are handled by\nJake's generic error-handling.\n\n### Aborting a task\n\nYou can abort a task by calling the `fail` function, and Jake will abort the\ncurrently running task. You can pass a customized error message to `fail`:\n\n```javascript\ndesc('This task fails.');\ntask('failTask', function () {\n  fail('Yikes. Something back happened.');\n});\n```\n\nYou can also pass an optional exit status-code to the fail command, like so:\n\n```javascript\ndesc('This task fails with a
 n exit-status of 42.');\ntask('failTaskQuestionCustomStatus', function () {\n  fail('What is the answer?', 42);\n});\n```\n\nThe process will exit with a status of 42.\n\nUncaught errors will also abort the currently running task.\n\n### Showing the list of tasks\n\nPassing `jake` the -T or --tasks flag will display the full list of tasks\navailable in a Jakefile, along with their descriptions:\n\n    $ jake -T\n    jake default       # This is the default task.\n    jake asdf          # This is the asdf task.\n    jake concat.txt    # File task, concating two files together\n    jake failure       # Failing task.\n    jake lookup        # Jake task lookup by name.\n    jake foo:bar       # This the foo:bar task\n    jake foo:fonebone  # This the foo:fonebone task\n\nSetting a value for -T/--tasks will filter the list by that value:\n\n    $ jake -T foo\n    jake foo:bar       # This the foo:bar task\n    jake foo:fonebone  # This the foo:fonebone task\n\nThe list displayed will be 
 all tasks whose namespace/name contain the filter-string.\n\n## Breaking things up into multiple files\n\nJake will automatically look for files with a .jake extension in a 'jakelib'\ndirectory in your project, and load them (via `require`) after loading your\nJakefile. (The directory name can be overridden using the -J/--jakelibdir\ncommand-line option.)\n\nThis allows you to break your tasks up over multiple files -- a good way to do\nit is one namespace per file: e.g., a `zardoz` namespace full of tasks in\n'jakelib/zardox.jake'.\n\nNote that these .jake files each run in their own module-context, so they don't\nhave access to each others' data. However, the Jake API methods, and the\ntask-hierarchy are globally available, so you can use tasks in any file as\nprerequisites for tasks in any other, just as if everything were in a single\nfile.\n\nEnvironment-variables set on the command-line are likewise also naturally\navailable to code in all files via process.env.\n\n## File-uti
 ls\n\nSince shelling out in Node is an asynchronous operation, Jake comes with a few\nuseful file-utilities with a synchronous API, that make scripting easier.\n\nThe `jake.mkdirP` utility recursively creates a set of nested directories. It\nwill not throw an error if any of the directories already exists. Here's an example:\n\n```javascript\njake.mkdirP('app/views/layouts');\n```\n\nThe `jake.cpR` utility does a recursive copy of a file or directory. It takes\ntwo arguments, the file/directory to copy, and the destination. Note that this\ncommand can only copy files and directories; it does not perform globbing (so\narguments like '*.txt' are not possible).\n\n```javascript\njake.cpR(path.join(sourceDir, '/templates'), currentDir);\n```\n\nThis would copy 'templates' (and all its contents) into `currentDir`.\n\nThe `jake.readdirR` utility gives you a recursive directory listing, giving you\noutput somewhat similar to the Unix `find` command. It only works with a\ndirectory name, an
 d does not perform filtering or globbing.\n\n```javascript\njake.readdirR('pkg');\n```\n\nThis would return an array of filepaths for all files in the 'pkg' directory,\nand all its subdirectories.\n\nThe `jake.rmRf` utility recursively removes a directory and all its contents.\n\n```javascript\njake.rmRf('pkg');\n```\n\nThis would remove the 'pkg' directory, and all its contents.\n\n## Running shell-commands: `jake.exec` and `jake.createExec`\n\nJake also provides a more general utility function for running a sequence of\nshell-commands.\n\n### `jake.exec`\n\nThe `jake.exec` command takes an array of shell-command strings, and an optional\ncallback to run after completing them. Here's an example from Jake's Jakefile,\nthat runs the tests:\n\n```javascript\ndesc('Runs the Jake tests.');\ntask('test', {async: true}, function () {\n  var cmds = [\n    'node ./tests/parseargs.js'\n  , 'node ./tests/task_base.js'\n  , 'node ./tests/file_task.js'\n  ];\n  jake.exec(cmds, {printStdout: tru
 e}, function () {\n    console.log('All tests passed.');\n    complete();\n  });\n\ndesc('Runs some apps in interactive mode.');\ntask('interactiveTask', {async: true}, function () {\n  var cmds = [\n    'node' // Node conosle\n  , 'vim' // Open Vim\n  ];\n  jake.exec(cmds, {interactive: true}, function () {\n    complete();\n  });\n});\n```\n\nIt also takes an optional options-object, with the following options:\n\n * `interactive` (tasks are interactive, trumps printStdout and\n    printStderr below, default false)\n\n * `printStdout` (print to stdout, default false)\n\n * `printStderr` (print to stderr, default false)\n\n * `breakOnError` (stop execution on error, default true)\n\nThis command doesn't pipe input between commands -- it's for simple execution.\n\n### `jake.createExec` and the evented Exec object\n\nJake also provides an evented interface for running shell commands. Calling\n`jake.createExec` returns an instance of `jake.Exec`, which is an `EventEmitter`\nthat fires
  events as it executes commands.\n\nIt emits the following events:\n\n* 'cmdStart': When a new command begins to run. Passes one arg, the command\nbeing run.\n\n* 'cmdEnd': When a command finishes. Passes one arg, the command\nbeing run.\n\n* 'stdout': When the stdout for the child-process recieves data. This streams\nthe stdout data. Passes one arg, the chunk of data.\n\n* 'stderr': When the stderr for the child-process recieves data. This streams\nthe stderr data. Passes one arg, the chunk of data.\n\n* 'error': When a shell-command exits with a non-zero status-code. Passes two\nargs -- the error message, and the status code. If you do not set an error\nhandler, and a command exits with an error-code, Jake will throw the unhandled\nerror. If `breakOnError` is set to true, the Exec object will emit and 'error'\nevent after the first error, and stop any further execution.\n\nTo begin running the commands, you have to call the `run` method on it. It also\nhas an `append` method for a
 dding new commands to the list of commands to run.\n\nHere's an example:\n\n```javascript\nvar ex = jake.createExec(['do_thing.sh'], {printStdout: true});\nex.addListener('error', function (msg, code) {\n  if (code == 127) {\n    console.log(\"Couldn't find do_thing script, trying do_other_thing\");\n    ex.append('do_other_thing.sh');\n  }\n  else {\n    fail('Fatal error: ' + msg, code);\n  }\n});\nex.run();\n```\n\nUsing the evented Exec object gives you a lot more flexibility in running shell\ncommmands. But if you need something more sophisticated, Procstreams\n(<https://github.com/polotek/procstreams>) might be a good option.\n\n## Logging and output\n\nUsing the -q/--quiet flag at the command-line will stop Jake from sending its\nnormal output to standard output. Note that this only applies to built-in output\nfrom Jake; anything you output normally from your tasks will still be displayed.\n\nIf you want to take advantage of the -q/--quiet flag in your own programs, you\ncan 
 use `jake.logger.log` and `jake.logger.error` for displaying output. These\ntwo commands will respect the flag, and suppress output correctly when the\nquiet-flag is on.\n\nYou can check the current value of this flag in your own tasks by using\n`jake.program.opts.quiet`. If you want the output of a `jake.exec` shell-command\nto respect the quiet-flag, set your `printStdout` and `printStderr` options to\nfalse if the quiet-option is on:\n\n```javascript\ntask('echo', {async: true}, function () {\n  jake.exec(['echo \"hello\"'], function () {\n    jake.logger.log('Done.');\n    complete();\n  }, {printStdout: !jake.program.opts.quiet});\n});\n```\n\n## PackageTask\n\nInstantiating a PackageTask programmically creates a set of tasks for packaging\nup your project for distribution. Here's an example:\n\n```javascript\nvar t = new jake.PackageTask('fonebone', 'v0.1.2112', function () {\n  var fileList = [\n    'Jakefile'\n  , 'README.md'\n  , 'package.json'\n  , 'lib/*'\n  , 'bin/*'\n  
 , 'tests/*'\n  ];\n  this.packageFiles.include(fileList);\n  this.needTarGz = true;\n  this.needTarBz2 = true;\n});\n```\n\nThis will automatically create a 'package' task that will assemble the specified\nfiles in 'pkg/fonebone-v0.1.2112,' and compress them according to the specified\noptions. After running `jake package`, you'll have the following in pkg/:\n\n    fonebone-v0.1.2112\n    fonebone-v0.1.2112.tar.bz2\n    fonebone-v0.1.2112.tar.gz\n\nPackageTask also creates a 'clobber' task that removes the pkg/\ndirectory.\n\nThe [PackageTask API\ndocs](http://mde.github.com/jake/doc/symbols/jake.PackageTask.html) include a\nlot more information, including different archiving options.\n\n### FileList\n\nJake's FileList takes a list of glob-patterns and file-names, and lazy-creates a\nlist of files to include. Instead of immediately searching the filesystem to\nfind the files, a FileList holds the pattern until it is actually used.\n\nWhen any of the normal JavaScript Array methods (
 or the `toArray` method) are\ncalled on the FileList, the pending patterns are resolved into an actual list of\nfile-names. FileList uses the [minimatch](https://github.com/isaacs/minimatch) module.\n\nTo build the list of files, use FileList's `include` and `exclude` methods:\n\n```javascript\nvar list = new jake.FileList();\nlist.include('foo/*.txt');\nlist.include(['bar/*.txt', 'README.md']);\nlist.include('Makefile', 'package.json');\nlist.exclude('foo/zoobie.txt');\nlist.exclude(/foo\\/src.*.txt/);\nconsole.log(list.toArray());\n```\n\nThe `include` method can be called either with an array of items, or multiple\nsingle parameters. Items can be either glob-patterns, or individual file-names.\n\nThe `exclude` method will prevent files from being included in the list. These\nfiles must resolve to actual files on the filesystem. It can be called either\nwith an array of items, or mutliple single parameters. Items can be\nglob-patterns, individual file-names, string-representations
  of\nregular-expressions, or regular-expression literals.\n\n## TestTask\n\nInstantiating a TestTask programmically creates a simple task for running tests\nfor your project. The first argument of the constructor is the project-name\n(used in the description of the task), and the second argument is a function\nthat defines the task. It allows you to specifify what files to run as tests,\nand what to name the task that gets created (defaults to \"test\" if unset).\n\n```javascript\nvar t = new jake.TestTask('fonebone', function () {\n  var fileList = [\n    'tests/*'\n  , 'lib/adapters/**/test.js'\n  ];\n  this.testFiles.include(fileList);\n  this.testFiles.exclude('tests/helper.js');\n  this.testName = 'testMainAndAdapters';\n});\n```\n\nTests in the specified file should be in the very simple format of\ntest-functions hung off the export. These tests are converted into Jake tasks\nwhich Jake then runs normally.\n\nIf a test needs to run asynchronously, simply define the test-functi
 on with a\nsingle argument, a callback. Jake will define this as an asynchronous task, and\nwill wait until the callback is called in the test function to run the next test.\n\nHere's an example test-file:\n\n```javascript\nvar assert = require('assert')\n  , tests;\n\ntests = {\n  'sync test': function () {\n    // Assert something\n    assert.ok(true);\n  }\n, 'async test': function (next) {\n    // Assert something else\n    assert.ok(true);\n    // Won't go next until this is called\n    next();\n  }\n, 'another sync test': function () {\n    // Assert something else\n    assert.ok(true);\n  }\n};\n\nmodule.exports = tests;\n```\n\nJake's tests are also a good example of use of a TestTask.\n\n## NpmPublishTask\n\nThe NpmPublishTask builds on top of PackageTask to allow you to do a version\nbump of your project, package it, and publish it to NPM. Define the task with\nyour project's name, and the list of files you want packaged and published to\nNPM.\n\nHere's an example from Jak
 e's Jakefile:\n\n```javascript\nvar p = new jake.NpmPublishTask('jake', [\n  'Makefile'\n, 'Jakefile'\n, 'README.md'\n, 'package.json'\n, 'lib/*'\n, 'bin/*'\n, 'tests/*'\n]);\n```\n\nThe NpmPublishTask will automatically create a `publish` task which performs the\nfollowing steps:\n\n1. Bump the version number in your package.json\n2. Commit change in git, push it to GitHub\n3. Create a git tag for the version\n4. Push the tag to GitHub\n5. Package the new version of your project\n6. Publish it to NPM\n7. Clean up the package\n\n## CoffeeScript Jakefiles\n\nJake can also handle Jakefiles in CoffeeScript. Be sure to make it\nJakefile.coffee so Jake knows it's in CoffeeScript.\n\nHere's an example:\n\n```coffeescript\nutil = require('util')\n\ndesc 'This is the default task.'\ntask 'default', (params) ->\n  console.log 'Ths is the default task.'\n  console.log(util.inspect(arguments))\n  jake.Task['new'].invoke []\n\ntask 'new', ->\n  console.log 'ello from new'\n  jake.Task['foo:next
 '].invoke ['param']\n\nnamespace 'foo', ->\n  task 'next', (param) ->\n    console.log 'ello from next with param: ' + param\n```\n\n## Related projects\n\nJames Coglan's \"Jake\": <http://github.com/jcoglan/jake>\n\nConfusingly, this is a Ruby tool for building JavaScript packages from source code.\n\n280 North's Jake: <http://github.com/280north/jake>\n\nThis is also a JavaScript port of Rake, which runs on the Narwhal platform.\n\n### License\n\nLicensed under the Apache License, Version 2.0\n(<http://www.apache.org/licenses/LICENSE-2.0>)\n",
-  "readmeFilename": "README.md",
-  "bugs": {
-    "url": "https://github.com/mde/jake/issues"
-  },
-  "_id": "jake@0.5.16",
-  "_from": "jake@*"
-}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/Jakefile
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/Jakefile b/blackberry10/node_modules/jake/test/Jakefile
deleted file mode 100644
index 7e49ab2..0000000
--- a/blackberry10/node_modules/jake/test/Jakefile
+++ /dev/null
@@ -1,214 +0,0 @@
-var exec = require('child_process').exec
-  , fs = require('fs');
-
-desc('The default task.');
-task('default', function () {
-  console.log('default task');
-});
-
-desc('No action.');
-task({'noAction': ['default']});
-
-desc('No action, no prereqs.');
-task('noActionNoPrereqs');
-
-desc('Accepts args and env vars.');
-task('argsEnvVars', function () {
-  var res = {
-    args: arguments
-  , env: {
-      foo: process.env.foo
-    , baz: process.env.baz
-    }
-  };
-  console.log(JSON.stringify(res));
-});
-
-namespace('foo', function () {
-  desc('The foo:bar task.');
-  task('bar', function () {
-    if (arguments.length) {
-      console.log('foo:bar[' +
-          Array.prototype.join.call(arguments, ',') +
-          '] task');
-    }
-    else {
-      console.log('foo:bar task');
-    }
-  });
-
-  desc('The foo:baz task, calls foo:bar as a prerequisite.');
-  task('baz', ['foo:bar'], function () {
-    console.log('foo:baz task');
-  });
-
-  desc('The foo:qux task, calls foo:bar with cmdline args as a prerequisite.');
-  task('qux', ['foo:bar[asdf,qwer]'], function () {
-    console.log('foo:qux task');
-  });
-
-  desc('The foo:frang task, calls foo:bar with passed args as a prerequisite.');
-  task('frang', function () {
-    var task = jake.Task['foo:bar'];
-    // Do args pass-through
-    task.invoke.apply(task, arguments);
-    console.log('foo:frang task');
-  });
-
-  desc('The foo:zoobie task, has no prerequisites.');
-  task('zoobie', function () {
-    console.log('foo:zoobie task');
-  });
-
-  desc('The foo:voom task, has no prerequisites.');
-  task('voom', function () {
-    console.log('foo:voom task');
-  });
-
-  desc('The foo:asdf task, has the same prereq twice.');
-  task('asdf', ['foo:bar', 'foo:baz'], function () {
-    console.log('foo:asdf task');
-  });
-
-});
-
-namespace('bar', function () {
-  desc('The bar:foo task, has no prerequisites, is async.');
-  task('foo', function () {
-    console.log('bar:foo task');
-    complete();
-  }, {async: true});
-
-  desc('The bar:bar task, has the async bar:foo task as a prerequisite.');
-  task('bar', ['bar:foo'], function () {
-    console.log('bar:bar task');
-  });
-
-});
-
-namespace('hoge', function () {
-  desc('The hoge:hoge task, has no prerequisites.');
-  task('hoge', function () {
-    console.log('hoge:hoge task');
-  });
-
-  desc('The hoge:piyo task, has no prerequisites.');
-  task('piyo', function () {
-    console.log('hoge:piyo task');
-  });
-
-  desc('The hoge:fuga task, has hoge:hoge and hoge:piyo as prerequisites.');
-  task('fuga', ['hoge:hoge', 'hoge:piyo'], function () {
-    console.log('hoge:fuga task');
-  });
-
-  desc('The hoge:charan task, has hoge:fuga as a prerequisite.');
-  task('charan', ['hoge:fuga'], function () {
-    console.log('hoge:charan task');
-  });
-
-  desc('The hoge:gero task, has hoge:fuga as a prerequisite.');
-  task('gero', ['hoge:fuga'], function () {
-    console.log('hoge:gero task');
-  });
-
-  desc('The hoge:kira task, has hoge:charan and hoge:gero as prerequisites.');
-  task('kira', ['hoge:charan', 'hoge:gero'], function () {
-    console.log('hoge:kira task');
-  });
-
-});
-
-namespace('fileTest', function () {
-  directory('foo');
-
-  desc('File task, concatenating two files together');
-  file({'foo/concat.txt': ['fileTest:foo', 'fileTest:foo/src1.txt', 'fileTest:foo/src2.txt']}, function () {
-    console.log('fileTest:foo/concat.txt task');
-    var data1 = fs.readFileSync('foo/src1.txt');
-    var data2 = fs.readFileSync('foo/src2.txt');
-    fs.writeFileSync('foo/concat.txt', data1 + data2);
-  });
-
-  desc('File task, async creation with child_process.exec');
-  file('foo/src1.txt', function () {
-    fs.writeFile('foo/src1.txt', 'src1', function (err) {
-      if (err) {
-        throw err;
-      }
-      console.log('fileTest:foo/src1.txt task');
-      complete();
-    });
-  }, {async: true});
-
-  desc('File task, sync creation with writeFileSync');
-  file('foo/src2.txt', ['default'], function () {
-    fs.writeFileSync('foo/src2.txt', 'src2');
-    console.log('fileTest:foo/src2.txt task');
-  });
-
-  desc('File task, do not run unless the prereq file changes');
-  file('foo/from-src1.txt', ['fileTest:foo', 'fileTest:foo/src1.txt'], function () {
-    var data = fs.readFileSync('foo/src1.txt');
-    fs.writeFileSync('foo/from-src1.txt', data);
-    console.log('fileTest:foo/from-src1.txt task');
-  }, {async: true});
-
-  desc('File task, run if the prereq file changes');
-  task('touch-prereq', function() {
-    fs.writeFileSync('foo/prereq.txt', 'UPDATED');
-  })
-
-  desc('File task, has a preexisting file (with no associated task) as a prereq');
-  file('foo/from-prereq.txt', ['fileTest:foo', 'foo/prereq.txt'], function () {
-    var data = fs.readFileSync('foo/prereq.txt');
-    fs.writeFileSync('foo/from-prereq.txt', data);
-    console.log('fileTest:foo/from-prereq.txt task');
-  });
-
-  directory('foo/bar/baz');
-
-  desc('Write a file in a nested subdirectory');
-  file('foo/bar/baz/bamf.txt', ['foo/bar/baz'], function () {
-    fs.writeFileSync('foo/bar/baz/bamf.txt', 'w00t');
-  });
-
-});
-
-task('blammo');
-// Define task
-task('voom', ['blammo'], function () {
-  console.log(this.prereqs.length);
-});
-
-// Modify, add a prereq
-task('voom', ['noActionNoPrereqs']);
-
-namespace('vronk', function () {
-  task('groo', function () {
-    var t = jake.Task['vronk:zong'];
-    t.addListener('error', function (e) {
-      console.log(e.message);
-    });
-    t.invoke();
-  });
-  task('zong', function () {
-    throw new Error('OMFGZONG');
-  });
-});
-
-// define namespace
-namespace('one', function() {
-  task('one', function() {
-    console.log('one:one');
-  });
-});
-
-// modify namespace (add task)
-namespace('one', function() {
-  task('two', ['one:one'], function() {
-    console.log('one:two');
-  });
-});
-
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/exec.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/exec.js b/blackberry10/node_modules/jake/test/exec.js
deleted file mode 100644
index 0dec945..0000000
--- a/blackberry10/node_modules/jake/test/exec.js
+++ /dev/null
@@ -1,113 +0,0 @@
-var assert = require('assert')
-  , h = require('./helpers')
-  , jake = {}
-  , utils = require('../lib/utils');
-
-utils.mixin(jake, utils);
-
-var tests = {
-  'before': function () {
-    process.chdir('./test');
-  }
-
-, 'after': function () {
-    process.chdir('../');
-  }
-
-, 'test basic exec': function (next) {
-    var ex = jake.createExec('ls', function () {})
-      , evts = { // Events should fire in this order
-          cmdStart: [0, null]
-        , stdout: [1, null]
-        , cmdEnd: [2, null]
-        , end: [3, null]
-        }
-      , incr = 0; // Increment with each event to check order
-    assert.ok(ex instanceof jake.Exec);
-    // Make sure basic events fire and fire in the right order
-    for (var p in evts) {
-      (function (p) {
-        ex.addListener(p, function () {
-          evts[p][1] = incr;
-          incr++;
-        });
-      })(p);
-    }
-    ex.run();
-    ex.addListener('end', function () {
-      for (var p in evts) {
-        assert.equal(evts[p][0], evts[p][1]);
-      }
-      next();
-    });
-
-  }
-
-, 'test an exec failure': function (next) {
-    var ex = jake.createExec('false', function () {});
-    ex.addListener('error', function (msg, code) {
-      assert.equal(1, code);
-      next();
-    });
-    ex.run();
-  }
-
-, 'test exec stdout events': function (next) {
-    var ex = jake.createExec('echo "foo"', function () {});
-    ex.addListener('stdout', function (data) {
-      assert.equal("foo", h.trim(data.toString()));
-      next();
-    });
-    ex.run();
-  }
-
-, 'test exec stderr events': function (next) {
-    var ex = jake.createExec('echo "foo" 1>&2', function () {});
-    ex.addListener('stderr', function (data) {
-      assert.equal("foo", h.trim(data.toString()));
-      next();
-    });
-    ex.run();
-  }
-
-, 'test piping results into next command': function (next) {
-    var ex = jake.createExec('ls', function () {})
-      , data
-      , appended = false;
-
-    ex.addListener('stdout', function (d) {
-      data += h.trim(d.toString());
-    });
-
-    // After the first command ends, get the accumulated result,
-    // and use it to build a new command to append to the queue.
-    // Grep through the result for files that end in .js
-    ex.addListener('cmdEnd', function () {
-      // Only append after the first cmd, avoid infinite loop
-      if (appended) {
-        return;
-      }
-      appended = true;
-      // Take the original output and build the new command
-      ex.append('echo "' + data + '" | grep "\\.js$"');
-      // Clear out data
-      data = '';
-    });
-
-    // And the end, the stdout data has been cleared once, and the new
-    // data should be the result of the second command
-    ex.addListener('end', function () {
-      // Should be a list of files ending in .js
-      data = data.split('\n');
-      data.forEach(function (d) {
-        assert.ok(/\.js$/.test(d));
-      });
-      next();
-    });
-    ex.run();
-  }
-
-};
-
-module.exports = tests;
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/file_task.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/file_task.js b/blackberry10/node_modules/jake/test/file_task.js
deleted file mode 100644
index f279100..0000000
--- a/blackberry10/node_modules/jake/test/file_task.js
+++ /dev/null
@@ -1,123 +0,0 @@
-var assert = require('assert')
-  , fs = require('fs')
-  , path = require('path')
-  , exec = require('child_process').exec
-  , h = require('./helpers');
-
-var cleanUpAndNext = function (callback) {
-  exec('rm -fr ./foo', function (err, stdout, stderr) {
-    if (err) { throw err }
-    if (stderr || stdout) {
-      console.log (stderr || stdout);
-    }
-    callback();
-  });
-};
-
-var tests = {
-
-  'before': function (next) {
-    process.chdir('./test');
-    cleanUpAndNext(next);
-  }
-
-, 'after': function () {
-    process.chdir('../');
-  }
-
-, 'test concating two files': function (next) {
-    h.exec('../bin/cli.js fileTest:foo/concat.txt', function (out) {
-      var data;
-      assert.equal('fileTest:foo/src1.txt task\ndefault task\nfileTest:foo/src2.txt task\n' +
-          'fileTest:foo/concat.txt task', out);
-      // Check to see the two files got concat'd
-      data = fs.readFileSync(process.cwd() + '/foo/concat.txt');
-      assert.equal('src1src2', data.toString());
-      cleanUpAndNext(next);
-    });
-  }
-
-, 'test where a file-task prereq does not change': function (next) {
-    h.exec('../bin/cli.js fileTest:foo/from-src1.txt', function (out) {
-      assert.equal('fileTest:foo/src1.txt task\nfileTest:foo/from-src1.txt task', out);
-      h.exec('../bin/cli.js fileTest:foo/from-src1.txt', function (out) {
-        // Second time should be a no-op
-        assert.equal('', out);
-        next(); // Don't clean up
-      });
-    });
-  }
-
-, 'file-task where prereq file is modified': function (next) {
-    setTimeout(function () {
-      exec('touch ./foo/src1.txt', function (err, data) {
-        if (err) {
-          throw err;
-        }
-        h.exec('../bin/cli.js fileTest:foo/from-src1.txt', function (out) {
-          assert.equal('fileTest:foo/from-src1.txt task', out);
-          cleanUpAndNext(next);
-        });
-      });
-    }, 1000); // Wait to do the touch to ensure mod-time is different
-  }
-
-, 'test where a file-task prereq does not change with --always-make': function (next) {
-    h.exec('../bin/cli.js fileTest:foo/from-src1.txt', function (out) {
-      assert.equal('fileTest:foo/src1.txt task\nfileTest:foo/from-src1.txt task',
-        out);
-      h.exec('../bin/cli.js -B fileTest:foo/from-src1.txt', function (out) {
-        assert.equal('fileTest:foo/src1.txt task\nfileTest:foo/from-src1.txt task',
-          out);
-        cleanUpAndNext(next);
-      });
-    });
-  }
-
-, 'test a preexisting file': function (next) {
-    var prereqData = 'howdy';
-    h.exec('mkdir -p foo', function (out) {
-      fs.writeFileSync('foo/prereq.txt', prereqData);
-      h.exec('../bin/cli.js fileTest:foo/from-prereq.txt', function (out) {
-        var data;
-        assert.equal('fileTest:foo/from-prereq.txt task', out);
-        data = fs.readFileSync(process.cwd() + '/foo/from-prereq.txt');
-        assert.equal(prereqData, data.toString());
-        h.exec('../bin/cli.js fileTest:foo/from-prereq.txt', function (out) {
-          // Second time should be a no-op
-          assert.equal('', out);
-          cleanUpAndNext(next);
-        });
-      });
-    });
-  }
-
-, 'test a preexisting file with --always-make flag': function (next) {
-    var prereqData = 'howdy';
-    h.exec('mkdir -p foo', function (out) {
-      fs.writeFileSync('foo/prereq.txt', prereqData);
-      h.exec('../bin/cli.js fileTest:foo/from-prereq.txt', function (out) {
-        var data;
-        assert.equal('fileTest:foo/from-prereq.txt task', out);
-        data = fs.readFileSync(process.cwd() + '/foo/from-prereq.txt');
-        assert.equal(prereqData, data.toString());
-        h.exec('../bin/cli.js -B fileTest:foo/from-prereq.txt', function (out) {
-          assert.equal('fileTest:foo/from-prereq.txt task', out);
-          cleanUpAndNext(next);
-        });
-      });
-    });
-  }
-
-, 'test nested directory-task': function (next) {
-    h.exec('../bin/cli.js fileTest:foo/bar/baz/bamf.txt', function (out) {
-      data = fs.readFileSync(process.cwd() + '/foo/bar/baz/bamf.txt');
-      assert.equal('w00t', data);
-      cleanUpAndNext(next);
-    });
-  }
-
-};
-
-module.exports = tests;
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/foo.html
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/foo.html b/blackberry10/node_modules/jake/test/foo.html
deleted file mode 100644
index e69de29..0000000

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/foo.txt
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/foo.txt b/blackberry10/node_modules/jake/test/foo.txt
deleted file mode 100644
index e69de29..0000000

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/helpers.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/helpers.js b/blackberry10/node_modules/jake/test/helpers.js
deleted file mode 100644
index 34e540e..0000000
--- a/blackberry10/node_modules/jake/test/helpers.js
+++ /dev/null
@@ -1,59 +0,0 @@
-var exec = require('child_process').exec;
-
-var helpers = new (function () {
-  var _tests
-    , _names = []
-    , _name
-    , _callback
-    , _runner = function () {
-        if (!!(_name = _names.shift())) {
-          console.log('Running ' + _name);
-          _tests[_name]();
-        }
-        else {
-          _callback();
-        }
-      };
-
-  this.exec = function (cmd, callback) {
-    cmd += ' --trace';
-    exec(cmd, function (err, stdout, stderr) {
-      var out = helpers.trim(stdout);
-      if (err) {
-        throw err;
-      }
-      if (stderr) {
-        callback(stderr);
-      }
-      else {
-        callback(out);
-      }
-    });
-  };
-
-  this.trim = function (s) {
-    var str = s || '';
-    return str.replace(/^\s*|\s*$/g, '');
-  };
-
-  this.parse = function (s) {
-    var str = s || '';
-    str = helpers.trim(str);
-    str = str.replace(/'/g, '"');
-    return JSON.parse(str);
-  };
-
-  this.run = function (tests, callback) {
-    _tests = tests;
-    _names = Object.keys(tests);
-    _callback = callback;
-    _runner();
-  };
-
-  this.next = function () {
-    _runner();
-  };
-
-})();
-
-module.exports = helpers;

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/namespace.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/namespace.js b/blackberry10/node_modules/jake/test/namespace.js
deleted file mode 100644
index d255d4e..0000000
--- a/blackberry10/node_modules/jake/test/namespace.js
+++ /dev/null
@@ -1,27 +0,0 @@
-var assert = require('assert')
-  , h = require('./helpers')
-  , jake = {}
-  , utils = require('../lib/utils');
-
-utils.mixin(jake, utils);
-
-var tests = {
-  'before': function() {
-    process.chdir('./test');
-  }
-
-, 'after': function() {
-    process.chdir('../');
-  }
-
-, 'test modifying a namespace by adding a new task': function(next) {
-    h.exec('../bin/cli.js one:two', function(out) {
-      assert.equal('one:one\none:two', out);
-      next();
-    });
-  }
-
-};
-
-module.exports = tests;
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/parseargs.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/parseargs.js b/blackberry10/node_modules/jake/test/parseargs.js
deleted file mode 100644
index 5997d07..0000000
--- a/blackberry10/node_modules/jake/test/parseargs.js
+++ /dev/null
@@ -1,150 +0,0 @@
-var parseargs = require('../lib/parseargs')
-  , assert = require('assert')
-  , optsReg = [
-      { full: 'directory'
-      , abbr: 'C'
-      , preempts: false
-      , expectValue: true
-      }
-    , { full: 'jakefile'
-      , abbr: 'f'
-      , preempts: false
-      , expectValue: true
-      }
-    , { full: 'tasks'
-      , abbr: 'T'
-      , preempts: true
-      }
-    , { full: 'tasks'
-      , abbr: 'ls'
-      , preempts: true
-      }
-    , { full: 'trace'
-      , abbr: 't'
-      , preempts: false
-      , expectValue: false
-      }
-    , { full: 'help'
-      , abbr: 'h'
-      , preempts: true
-      }
-    , { full: 'version'
-      , abbr: 'V'
-      , preempts: true
-      }
-    ]
-  , p = new parseargs.Parser(optsReg)
-  , z = function (s) { return s.split(' '); }
-  , res;
-
-var tests = {
-
-  'test long preemptive opt and val with equal-sign, ignore further opts': function () {
-    res = p.parse(z('--tasks=foo --jakefile=asdf'));
-    assert.equal('foo', res.opts.tasks);
-    assert.equal(undefined, res.opts.jakefile);
-  }
-
-, 'test long preemptive opt and val without equal-sign, ignore further opts': function () {
-    res = p.parse(z('--tasks foo --jakefile=asdf'));
-    assert.equal('foo', res.opts.tasks);
-    assert.equal(undefined, res.opts.jakefile);
-  }
-
-, 'test long preemptive opt and no val, ignore further opts': function () {
-    res = p.parse(z('--tasks --jakefile=asdf'));
-    assert.equal(true, res.opts.tasks);
-    assert.equal(undefined, res.opts.jakefile);
-  }
-
-, 'test preemptive opt with no val, should be true': function () {
-    res = p.parse(z('-T'));
-    assert.equal(true, res.opts.tasks);
-  }
-
-, 'test preemptive opt with no val, should be true and ignore further opts': function () {
-    res = p.parse(z('-T -f'));
-    assert.equal(true, res.opts.tasks);
-    assert.equal(undefined, res.opts.jakefile);
-  }
-
-, 'test preemptive opt with val, should be val': function () {
-    res = p.parse(z('-T zoobie -f foo/bar/baz'));
-    assert.equal('zoobie', res.opts.tasks);
-    assert.equal(undefined, res.opts.jakefile);
-  }
-
-, 'test -f expects a value, -t does not (howdy is task-name)': function () {
-    res = p.parse(z('-f zoobie -t howdy'));
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(true, res.opts.trace);
-    assert.equal('howdy', res.taskNames[0]);
-  }
-
-, 'test different order, -f expects a value, -t does not (howdy is task-name)': function () {
-    res = p.parse(z('-f zoobie howdy -t'));
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(true, res.opts.trace);
-    assert.equal('howdy', res.taskNames[0]);
-  }
-
-, 'test -f expects a value, -t does not (foo=bar is env var)': function () {
-    res = p.parse(z('-f zoobie -t foo=bar'));
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(true, res.opts.trace);
-    assert.equal('bar', res.envVars.foo);
-    assert.equal(undefined, res.taskName);
-  }
-
-, 'test -f expects a value, -t does not (foo=bar is env-var, task-name follows)': function () {
-    res = p.parse(z('-f zoobie -t howdy foo=bar'));
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(true, res.opts.trace);
-    assert.equal('bar', res.envVars.foo);
-    assert.equal('howdy', res.taskNames[0]);
-  }
-
-, 'test -t does not expect a value, -f does (throw howdy away)': function () {
-    res = p.parse(z('-t howdy -f zoobie'));
-    assert.equal(true, res.opts.trace);
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(undefined, res.taskName);
-
-  }
-
-, 'test --trace does not expect a value, -f does (throw howdy away)': function () {
-    res = p.parse(z('--trace howdy --jakefile zoobie'));
-    assert.equal(true, res.opts.trace);
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(undefined, res.taskName);
-  }
-
-, 'test --trace does not expect a value, -f does (throw howdy away)': function () {
-    res = p.parse(z('--trace=howdy --jakefile=zoobie'));
-    assert.equal(true, res.opts.trace);
-    assert.equal('zoobie', res.opts.jakefile);
-    assert.equal(undefined, res.taskName);
-  }
-
-/*
-, 'test task-name with positional args': function () {
-    res = p.parse(z('foo:bar[asdf,qwer]'));
-    assert.equal('asdf', p.taskArgs[0]);
-    assert.equal('qwer', p.taskArgs[1]);
-  }
-
-, 'test opts, env vars, task-name with positional args': function () {
-    res = p.parse(z('-f ./tests/Jakefile -t default[asdf,qwer] foo=bar'));
-    assert.equal('./tests/Jakefile', res.opts.jakefile);
-    assert.equal(true, res.opts.trace);
-    assert.equal('bar', res.envVars.foo);
-    assert.equal('default', res.taskName);
-    assert.equal('asdf', p.taskArgs[0]);
-    assert.equal('qwer', p.taskArgs[1]);
-  }
-*/
-
-};
-
-module.exports = tests;
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jake/test/task_base.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jake/test/task_base.js b/blackberry10/node_modules/jake/test/task_base.js
deleted file mode 100644
index 7d4269e..0000000
--- a/blackberry10/node_modules/jake/test/task_base.js
+++ /dev/null
@@ -1,137 +0,0 @@
-var assert = require('assert')
-  , h = require('./helpers');
-
-var tests = {
-
-  'before': function () {
-    process.chdir('./test');
-  }
-
-, 'after': function () {
-    process.chdir('../');
-  }
-
-, 'test default task': function (next) {
-    h.exec('../bin/cli.js', function (out) {
-      assert.equal('default task', out);
-      h.exec('../bin/cli.js default', function (out) {
-        assert.equal('default task', out);
-        next();
-      });
-    });
-  }
-
-, 'test task with no action': function (next) {
-    h.exec('../bin/cli.js noAction', function (out) {
-      assert.equal('default task', out);
-      next();
-    });
-  }
-
-, 'test a task with no action and no prereqs': function (next) {
-    h.exec('../bin/cli.js noActionNoPrereqs', function () {
-      next();
-    });
-  }
-
-, 'test passing args to a task': function (next) {
-    h.exec('../bin/cli.js argsEnvVars[foo,bar]', function (out) {
-      var parsed = h.parse(out)
-        , args = parsed.args;
-      assert.equal(args[0], 'foo');
-      assert.equal(args[1], 'bar');
-      next();
-    });
-  }
-
-, 'test a task with environment vars': function (next) {
-    h.exec('../bin/cli.js argsEnvVars foo=bar baz=qux', function (out) {
-      var parsed = h.parse(out)
-        , env = parsed.env;
-      assert.equal(env.foo, 'bar');
-      assert.equal(env.baz, 'qux');
-      next();
-    });
-  }
-
-, 'test passing args and using environment vars': function (next) {
-    h.exec('../bin/cli.js argsEnvVars[foo,bar] foo=bar baz=qux', function (out) {
-      var parsed = h.parse(out)
-        , args = parsed.args
-        , env = parsed.env;
-      assert.equal(args[0], 'foo');
-      assert.equal(args[1], 'bar');
-      assert.equal(env.foo, 'bar');
-      assert.equal(env.baz, 'qux');
-      next();
-    });
-  }
-
-, 'test a simple prereq': function (next) {
-    h.exec('../bin/cli.js foo:baz', function (out) {
-      assert.equal('foo:bar task\nfoo:baz task', out);
-      next();
-    });
-  }
-
-, 'test a duplicate prereq only runs once': function (next) {
-    h.exec('../bin/cli.js foo:asdf', function (out) {
-      assert.equal('foo:bar task\nfoo:baz task\nfoo:asdf task', out);
-      next();
-    });
-  }
-
-, 'test a prereq with command-line args': function (next) {
-    h.exec('../bin/cli.js foo:qux', function (out) {
-      assert.equal('foo:bar[asdf,qwer] task\nfoo:qux task', out);
-      next();
-    });
-  }
-
-, 'test a prereq with args via invoke': function (next) {
-    h.exec('../bin/cli.js foo:frang[zxcv,uiop]', function (out) {
-      assert.equal('foo:bar[zxcv,uiop] task\nfoo:frang task', out);
-      next();
-    });
-  }
-
-, 'test prereq execution-order': function (next) {
-    h.exec('../bin/cli.js hoge:fuga', function (out) {
-      assert.equal('hoge:hoge task\nhoge:piyo task\nhoge:fuga task', out);
-      next();
-    });
-  }
-
-, 'test basic async task': function (next) {
-    h.exec('../bin/cli.js bar:bar', function (out) {
-      assert.equal('bar:foo task\nbar:bar task', out);
-      next();
-    });
-  }
-
-, 'test that current-prereq index gets reset': function (next) {
-    h.exec('../bin/cli.js hoge:kira', function (out) {
-      assert.equal('hoge:hoge task\nhoge:piyo task\nhoge:fuga task\n' +
-          'hoge:charan task\nhoge:gero task\nhoge:kira task', out);
-      next();
-    });
-  }
-
-, 'test modifying a task by adding prereq during execution': function (next) {
-    h.exec('../bin/cli.js voom', function (out) {
-      assert.equal(2, out);
-      next();
-    });
-  }
-
-, 'test listening for task error-event': function (next) {
-    h.exec('../bin/cli.js vronk:groo', function (out) {
-      assert.equal('OMFGZONG', out);
-      next();
-    });
-  }
-
-};
-
-module.exports = tests;
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/.npmignore
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/.npmignore b/blackberry10/node_modules/jasmine-node/.npmignore
deleted file mode 100755
index ec8ac7f..0000000
--- a/blackberry10/node_modules/jasmine-node/.npmignore
+++ /dev/null
@@ -1,13 +0,0 @@
-.DS_Store
-.idea
-*.iml
-*.ipr
-*.iws
-*.tmproj
-.project
-.settings
-.externalToolBuilders
-*.swp
-node_modules
-*~
-/.c9revisions/

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/.travis.yml
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/.travis.yml b/blackberry10/node_modules/jasmine-node/.travis.yml
deleted file mode 100644
index c6eab65..0000000
--- a/blackberry10/node_modules/jasmine-node/.travis.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-language: node_js
-node_js:
-  - 0.6
-branches:
-  only:
-    - travis

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/LICENSE
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/LICENSE b/blackberry10/node_modules/jasmine-node/LICENSE
deleted file mode 100755
index b6ad6d3..0000000
--- a/blackberry10/node_modules/jasmine-node/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-The MIT License
-
-Copyright (c) 2010 Adam Abrons and Misko Hevery http://getangular.com
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/README.md
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/README.md b/blackberry10/node_modules/jasmine-node/README.md
deleted file mode 100644
index a74f92d..0000000
--- a/blackberry10/node_modules/jasmine-node/README.md
+++ /dev/null
@@ -1,161 +0,0 @@
-jasmine-node
-======
-
-[![Build Status](https://secure.travis-ci.org/spaghetticode/jasmine-node.png)](http://travis-ci.org/spaghetticode/jasmine-node)
-
-This node.js module makes the wonderful Pivotal Lab's jasmine
-(http://github.com/pivotal/jasmine) spec framework available in
-node.js.
-
-jasmine
--------
-
-Version 1.3.1 of Jasmine is currently included with node-jasmine.
-
-what's new
-----------
-*  Ability to test specs written in Literate Coffee-Script
-*  Teamcity Reporter reinstated.
-*  Ability to specify multiple files to test via list in command line
-*  Ability to suppress stack trace with <code>--noStack</code>
-*  Async tests now run in the expected context instead of the global one
-*  --config flag that allows you to assign variables to process.env
-*  Terminal Reporters are now available in the Jasmine Object #184
-*  Done is now available in all timeout specs #199
-*  <code>afterEach</code> is available in requirejs #179
-*  Editors that replace instead of changing files should work with autotest #198
-*  Jasmine Mock Clock now works!
-*  Autotest now works!
-*  Using the latest Jasmine!
-*  Verbose mode tabs <code>describe</code> blocks much more accurately!
-*  --coffee now allows specs written in Literate CoffeeScript (.litcoffee)
-
-install
-------
-
-To install the latest official version, use NPM:
-
-    npm install jasmine-node -g
-
-To install the latest _bleeding edge_ version, clone this repository and check
-out the `beta` branch.
-
-usage
-------
-
-Write the specifications for your code in \*.js and \*.coffee files in the
-spec/ directory (note: your specification files must end with either
-.spec.js, .spec.coffee or .spec.litcoffee; otherwise jasmine-node won't find them!). You can use sub-directories to better organise your specs.
-
-If you have installed the npm package, you can run it with:
-
-    jasmine-node spec/
-
-If you aren't using npm, you should add `pwd`/lib to the $NODE_PATH
-environment variable, then run:
-
-    node lib/jasmine-node/cli.js
-
-
-You can supply the following arguments:
-
-  * <code>--autotest</code>, provides automatic execution of specs after each change
-  * <code>--coffee</code>, allow execution of .coffee and .litcoffee specs
-  * <code>--color</code>, indicates spec output should uses color to
-indicates passing (green) or failing (red) specs
-  * <code>--noColor</code>, do not use color in the output
-  * <code>-m, --match REGEXP</code>, match only specs comtaining "REGEXPspec"
-  * <code>--matchall</code>, relax requirement of "spec" in spec file names
-  * <code>--verbose</code>, verbose output as the specs are run
-  * <code>--junitreport</code>, export tests results as junitreport xml format
-  * <code>--output FOLDER</code>, defines the output folder for junitreport files
-  * <code>--teamcity</code>, converts all console output to teamcity custom test runner commands. (Normally auto detected.)
-  * <code>--runWithRequireJs</code>, loads all specs using requirejs instead of node's native require method
-  * <code>--requireJsSetup</code>, file run before specs to include and configure RequireJS
-  * <code>--test-dir</code>, the absolute root directory path where tests are located
-  * <code>--nohelpers</code>, does not load helpers
-  * <code>--forceexit</code>, force exit once tests complete
-  * <code>--captureExceptions</code>, listen to global exceptions, report them and exit (interferes with Domains in NodeJs, so do not use if using Domains as well
-  * <code>--config NAME VALUE</code>, set a global variable in process.env
-  * <code>--noStack</code>, suppress the stack trace generated from a test failure
-
-Individual files to test can be added as bare arguments to the end of the args.
-
-Example:
-
-`jasmine-node --coffee spec/AsyncSpec.coffee spec/CoffeeSpec.coffee spec/SampleSpecs.js`
-
-async tests
------------
-
-jasmine-node includes an alternate syntax for writing asynchronous tests. Accepting
-a done callback in the specification will trigger jasmine-node to run the test
-asynchronously waiting until the done() callback is called.
-
-```javascript
-    it("should respond with hello world", function(done) {
-      request("http://localhost:3000/hello", function(error, response, body){
-        expect(body).toEqual("hello world");
-        done();
-      });
-    });
-```
-
-An asynchronous test will fail after 5000 ms if done() is not called. This timeout
-can be changed by setting jasmine.DEFAULT_TIMEOUT_INTERVAL or by passing a timeout
-interval in the specification.
-
-    it("should respond with hello world", function(done) {
-      request("http://localhost:3000/hello", function(error, response, body){
-        done();
-      }, 250);  // timeout after 250 ms
-    });
-
-Checkout spec/SampleSpecs.js to see how to use it.
-
-requirejs
----------
-
-There is a sample project in `/spec-requirejs`. It is comprised of:
-
-1.  `requirejs-setup.js`, this pulls in our wrapper template (next)
-1.  `requirejs-wrapper-template`, this builds up requirejs settings
-1.  `requirejs.sut.js`, this is a __SU__bject To __T__est, something required by requirejs
-1.  `requirejs.spec.js`, the actual jasmine spec for testing
-
-development
------------
-
-Install the dependent packages by running:
-
-    npm install
-
-Run the specs before you send your pull request:
-
-    specs.sh
-
-__Note:__ Some tests are designed to fail in the specs.sh. After each of the
-individual runs completes, there is a line that lists what the expected
-Pass/Assert/Fail count should be. If you add/remove/edit tests, please be sure
-to update this with your PR.
-
-
-changelog
----------
-
-*  _1.7.1 - Removed unneeded fs dependency (thanks to
-   [kevinsawicki](https://github.com/kevinsawicki)) Fixed broken fs call in
-   node 0.6 (thanks to [abe33](https://github.com/abe33))_
-*  _1.7.0 - Literate Coffee-Script now testable (thanks to [magicmoose](https://github.com/magicmoose))_
-*  _1.6.0 - Teamcity Reporter Reinstated (thanks to [bhcleek](https://github.com/bhcleek))_
-*  _1.5.1 - Missing files and require exceptions will now report instead of failing silently_
-*  _1.5.0 - Now takes multiple files for execution. (thanks to [abe33](https://github.com/abe33))_
-*  _1.4.0 - Optional flag to suppress stack trace on test failure (thanks to [Lastalas](https://github.com/Lastalas))_
-*  _1.3.1 - Fixed context for async tests (thanks to [omryn](https://github.com/omryn))_
-*  _1.3.0 - Added --config flag for changeable testing environments_
-*  _1.2.3 - Fixed #179, #184, #198, #199. Fixes autotest, afterEach in requirejs, terminal reporter is in jasmine object, done function missing in async tests_
-*  _1.2.2 - Revert Exception Capturing to avoid Breaking Domain Tests_
-*  _1.2.1 - Emergency fix for path reference missing_
-*  _1.2.0 - Fixed #149, #152, #171, #181, #195. --autotest now works as expected, jasmine clock now responds to the fake ticking as requested, and removed the path.exists warning_
-*  _1.1.1 - Fixed #173, #169 (Blocks were not indented in verbose properly, added more documentation to address #180_
-*  _1.1.0 - Updated Jasmine to 1.3.1, fixed fs missing, catching uncaught exceptions, other fixes_

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/bin/jasmine-node
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/bin/jasmine-node b/blackberry10/node_modules/jasmine-node/bin/jasmine-node
deleted file mode 100755
index 33d4873..0000000
--- a/blackberry10/node_modules/jasmine-node/bin/jasmine-node
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env node
-
-if( !process.env.NODE_ENV ) process.env.NODE_ENV = 'test';
-
-var path = require('path');
-require(path.join(__dirname,'../lib/jasmine-node/cli.js'));

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/lib/jasmine-node/async-callback.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/async-callback.js b/blackberry10/node_modules/jasmine-node/lib/jasmine-node/async-callback.js
deleted file mode 100644
index 85af5b2..0000000
--- a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/async-callback.js
+++ /dev/null
@@ -1,61 +0,0 @@
-(function() {
-    var withoutAsync = {};
-
-    ["it", "beforeEach", "afterEach"].forEach(function(jasmineFunction) {
-        withoutAsync[jasmineFunction] = jasmine.Env.prototype[jasmineFunction];
-        return jasmine.Env.prototype[jasmineFunction] = function() {
-            var args = Array.prototype.slice.call(arguments, 0);
-            var timeout = null;
-            if (isLastArgumentATimeout(args)) {
-                timeout = args.pop();
-                // The changes to the jasmine test runner causes undef to be passed when
-                // calling all it()'s now. If the last argument isn't a timeout and the
-                // last argument IS undefined, let's just pop it off. Since out of bounds
-                // items are undefined anyways, *hopefully* removing an undef item won't
-                // hurt.
-            } else if (args[args.length-1] == undefined) {
-                args.pop();
-            }
-            if (isLastArgumentAnAsyncSpecFunction(args))
-            {
-                var specFunction = args.pop();
-                args.push(function() {
-                    return asyncSpec(specFunction, this, timeout);
-                });
-            }
-            return withoutAsync[jasmineFunction].apply(this, args);
-        };
-    });
-
-    function isLastArgumentATimeout(args)
-    {
-        return args.length > 0 && (typeof args[args.length-1]) === "number";
-    }
-
-    function isLastArgumentAnAsyncSpecFunction(args)
-    {
-        return args.length > 0 && (typeof args[args.length-1]) === "function" && args[args.length-1].length > 0;
-    }
-
-    function asyncSpec(specFunction, spec, timeout) {
-        if (timeout == null) timeout = jasmine.DEFAULT_TIMEOUT_INTERVAL || 1000;
-        var done = false;
-        spec.runs(function() {
-            try {
-                return specFunction.call(spec, function(error) {
-                    done = true;
-                    if (error != null) return spec.fail(error);
-                });
-            } catch (e) {
-                done = true;
-                throw e;
-            }
-        });
-        return spec.waitsFor(function() {
-            if (done === true) {
-                return true;
-            }
-        }, "spec to complete", timeout);
-    };
-
-}).call(this);

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/lib/jasmine-node/autotest.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/autotest.js b/blackberry10/node_modules/jasmine-node/lib/jasmine-node/autotest.js
deleted file mode 100644
index f8e2187..0000000
--- a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/autotest.js
+++ /dev/null
@@ -1,85 +0,0 @@
-var walkdir = require('walkdir');
-var collection = require('./spec-collection');
-var path = require('path');
-var fs = require('fs');
-var child_process = require('child_process');
-var gaze = require('gaze');
-var _ = require('underscore');
-
-var baseArgv = [];
-
-for(var i = 0; i < process.argv.length; i++) {
-    if(process.argv[i] !== '--autotest') {
-        baseArgv.push(process.argv[i]);
-    }
-}
-
-var run_external = function(command, args, callback) {
-    var child = child_process.spawn(command, args);
-    child.stdout.on('data', function(data) {
-        process.stdout.write(data);
-    });
-    child.stderr.on('data', function(data) {
-        process.stderr.write(data);
-    });
-    if(typeof callback == 'function') {
-        child.on('exit', callback);
-    }
-}
-
-var run_everything = function() {
-    // run the suite when it starts
-    var argv = [].concat(baseArgv);
-    run_external(argv.shift(), argv);
-}
-
-var last_run_succesful = true;
-
-exports.start = function(loadpaths, pattern) {
-
-    loadpaths.forEach(function(loadpath){
-
-      // If loadpath is just a single file, we should just watch that file
-      stats = fs.statSync(loadpath);
-      if (stats.isFile()) {
-        console.log(loadpath);
-        pattern = loadpath;
-      }
-
-      changedFunc = function(event, file) {
-        console.log(file + ' was changed');
-
-        var match = path.basename(file, path.extname(file)) + ".*";
-        match = match.replace(new RegExp("spec", "i"), "");
-
-        var argv = [].concat(baseArgv, ["--match", match]);
-        run_external(argv.shift(), argv, function(code) {
-            // run everything if we fixed some bugs
-            if(code == 0) {
-                if(!last_run_succesful) {
-                    run_everything();
-                }
-                last_run_succesful = true;
-            } else {
-                last_run_succesful = false;
-            }
-        });
-      }
-
-      // Vim seems to change a file multiple times, with non-scientific testing
-      // the only time we didn't duplicate the call to onChanged was at 2.5s
-      // Passing true to have onChanged run on the leading edge of the timeout
-      var onChanged = _.debounce(changedFunc, 2500, true);
-
-      gaze(pattern, function(err, watcher) {
-        // Get all watched files
-        console.log("Watching for changes in " + loadpath);
-
-        // On file changed
-        this.on('all', onChanged);
-      });
-
-    })
-
-    run_everything();
-}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cli.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cli.js b/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cli.js
deleted file mode 100755
index 2e4491e..0000000
--- a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cli.js
+++ /dev/null
@@ -1,250 +0,0 @@
-var util,
-    Path= require('path'),
-    fs  = require('fs');
-
-var jasmine = require('./index');
-
-
-try {
-  util = require('util')
-} catch(e) {
-  util = require('sys')
-}
-
-var helperCollection = require('./spec-collection');
-
-var specFolders = [];
-
-// The following line keeps the jasmine setTimeout in the proper scope
-jasmine.setTimeout = jasmine.getGlobal().setTimeout;
-jasmine.setInterval = jasmine.getGlobal().setInterval;
-for (var key in jasmine)
-  global[key] = jasmine[key];
-
-var isVerbose = false;
-var showColors = true;
-var teamcity = process.env.TEAMCITY_PROJECT_NAME || false;
-var useRequireJs = false;
-var extentions = "js";
-var match = '.';
-var matchall = false;
-var autotest = false;
-var useHelpers = true;
-var forceExit = false;
-var captureExceptions = false;
-var includeStackTrace = true;
-
-var junitreport = {
-  report: false,
-  savePath : "./reports/",
-  useDotNotation: true,
-  consolidate: true
-}
-
-var args = process.argv.slice(2);
-var existsSync = fs.existsSync || Path.existsSync;
-
-while(args.length) {
-  var arg = args.shift();
-
-  switch(arg)
-  {
-    case '--color':
-      showColors = true;
-      break;
-    case '--noColor':
-    case '--nocolor':
-      showColors = false;
-      break;
-    case '--verbose':
-      isVerbose = true;
-      break;
-    case '--coffee':
-      require('coffee-script');
-      extentions = "js|coffee|litcoffee";
-      break;
-    case '-m':
-    case '--match':
-      match = args.shift();
-      break;
-    case '--matchall':
-      matchall = true;
-      break;
-    case '--junitreport':
-        junitreport.report = true;
-        break;
-    case '--output':
-        junitreport.savePath = args.shift();
-        break;
-    case '--teamcity':
-        teamcity = true;
-        break;
-    case '--requireJsSetup':
-        var setup = args.shift();
-
-        if(!existsSync(setup))
-          throw new Error("RequireJS setup '" + setup + "' doesn't exist!");
-
-        useRequireJs = setup;
-        break;
-    case '--runWithRequireJs':
-        useRequireJs = useRequireJs || true;
-        break;
-    case '--nohelpers':
-        useHelpers = false;
-        break;
-    case '--test-dir':
-        var dir = args.shift();
-
-        if(!existsSync(dir))
-          throw new Error("Test root path '" + dir + "' doesn't exist!");
-
-        specFolders.push(dir); // NOTE: Does not look from current working directory.
-        break;
-    case '--autotest':
-        autotest = true;
-        break;
-    case '--forceexit':
-        forceExit = true;
-        break;
-    case '--captureExceptions':
-        captureExceptions = true;
-        break;
-    case '--noStack':
-        includeStackTrace = false;
-        break;
-    case '--config':
-        var configKey = args.shift();
-        var configValue = args.shift();
-        process.env[configKey]=configValue;
-        break;
-    case '-h':
-        help();
-    default:
-      if (arg.match(/^--params=.*/)) {
-        break;
-      }
-      if (arg.match(/^--/)) help();
-      if (arg.match(/^\/.*/)) {
-        specFolders.push(arg);
-      } else {
-        specFolders.push(Path.join(process.cwd(), arg));
-      }
-      break;
-  }
-}
-
-if (specFolders.length === 0) {
-  help();
-} else {
-  // Check to see if all our files exist
-  for (var idx = 0; idx < specFolders.length; idx++) {
-    if (!existsSync(specFolders[idx])) {
-        console.log("File: " + specFolders[idx] + " is missing.");
-        return;
-    }
-  }
-}
-
-if (autotest) {
-  //TODO: this is ugly, maybe refactor?
-
-  var glob = specFolders.map(function(path){
-    return Path.join(path, '**/*.js');
-  });
-
-  if (extentions.indexOf("coffee") !== -1) {
-    glob = glob.concat(specFolders.map(function(path){
-      return Path.join(path, '**/*.coffee')
-    }));
-  }
-
-  require('./autotest').start(specFolders, glob);
-
-  return;
-}
-
-var exitCode = 0;
-
-if (captureExceptions) {
-  process.on('uncaughtException', function(e) {
-    console.error(e.stack || e);
-    exitCode = 1;
-    process.exit(exitCode);
-  });
-}
-
-process.on("exit", onExit);
-
-function onExit() {
-  process.removeListener("exit", onExit);
-  process.exit(exitCode);
-}
-
-var onComplete = function(runner, log) {
-  util.print('\n');
-  if (runner.results().failedCount == 0) {
-    exitCode = 0;
-  } else {
-    exitCode = 1;
-  }
-  if (forceExit) {
-    process.exit(exitCode);
-  }
-};
-
-if(useHelpers){
-  specFolders.forEach(function(path){
-    jasmine.loadHelpersInFolder(path,
-                                new RegExp("helpers?\\.(" + extentions + ")$", 'i'));
-
-  })
-}
-
-var regExpSpec = new RegExp(match + (matchall ? "" : "spec\\.") + "(" + extentions + ")$", 'i')
-
-
-var options = {
-  specFolders:   specFolders,
-  onComplete:   onComplete,
-  isVerbose:    isVerbose,
-  showColors:   showColors,
-  teamcity:     teamcity,
-  useRequireJs: useRequireJs,
-  regExpSpec:   regExpSpec,
-  junitreport:  junitreport,
-  includeStackTrace: includeStackTrace
-}
-
-jasmine.executeSpecsInFolder(options);
-
-
-function help(){
-  util.print([
-    'USAGE: jasmine-node [--color|--noColor] [--verbose] [--coffee] directory'
-  , ''
-  , 'Options:'
-  , '  --autotest         - rerun automatically the specs when a file changes'
-  , '  --color            - use color coding for output'
-  , '  --noColor          - do not use color coding for output'
-  , '  -m, --match REGEXP - load only specs containing "REGEXPspec"'
-  , '  --matchall         - relax requirement of "spec" in spec file names'
-  , '  --verbose          - print extra information per each test run'
-  , '  --coffee           - load coffee-script which allows execution .coffee files'
-  , '  --junitreport      - export tests results as junitreport xml format'
-  , '  --output           - defines the output folder for junitreport files'
-  , '  --teamcity         - converts all console output to teamcity custom test runner commands. (Normally auto detected.)'
-  , '  --runWithRequireJs - loads all specs using requirejs instead of node\'s native require method'
-  , '  --requireJsSetup   - file run before specs to include and configure RequireJS'
-  , '  --test-dir         - the absolute root directory path where tests are located'
-  , '  --nohelpers        - does not load helpers.'
-  , '  --forceexit        - force exit once tests complete.'
-  , '  --captureExceptions- listen to global exceptions, report them and exit (interferes with Domains)'
-  , '  --config NAME VALUE- set a global variable in process.env'
-  , '  --noStack          - suppress the stack trace generated from a test failure'
-  , '  -h, --help         - display this help and exit'
-  , ''
-  ].join("\n"));
-
-  process.exit(-1);
-}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/3016473f/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cs.js
----------------------------------------------------------------------
diff --git a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cs.js b/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cs.js
deleted file mode 100644
index 0d7ff76..0000000
--- a/blackberry10/node_modules/jasmine-node/lib/jasmine-node/cs.js
+++ /dev/null
@@ -1,160 +0,0 @@
-/**
- * @license cs 0.4.2 Copyright (c) 2010-2011, The Dojo Foundation All Rights Reserved.
- * Available via the MIT or new BSD license.
- * see: http://github.com/jrburke/require-cs for details
- */
-
-/*jslint */
-/*global define, window, XMLHttpRequest, importScripts, Packages, java,
-  ActiveXObject, process, require */
-
-define(['coffee-script'], function (CoffeeScript) {
-    'use strict';
-    var fs, getXhr,
-        progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'],
-        fetchText = function () {
-            throw new Error('Environment unsupported.');
-        },
-        buildMap = {};
-
-    if (typeof process !== "undefined" &&
-               process.versions &&
-               !!process.versions.node) {
-        //Using special require.nodeRequire, something added by r.js.
-        fs = require.nodeRequire('fs');
-        fetchText = function (path, callback) {
-            callback(fs.readFileSync(path, 'utf8'));
-        };
-    } else if ((typeof window !== "undefined" && window.navigator && window.document) || typeof importScripts !== "undefined") {
-        // Browser action
-        getXhr = function () {
-            //Would love to dump the ActiveX crap in here. Need IE 6 to die first.
-            var xhr, i, progId;
-            if (typeof XMLHttpRequest !== "undefined") {
-                return new XMLHttpRequest();
-            } else {
-                for (i = 0; i < 3; i++) {
-                    progId = progIds[i];
-                    try {
-                        xhr = new ActiveXObject(progId);
-                    } catch (e) {}
-
-                    if (xhr) {
-                        progIds = [progId];  // so faster next time
-                        break;
-                    }
-                }
-            }
-
-            if (!xhr) {
-                throw new Error("getXhr(): XMLHttpRequest not available");
-            }
-
-            return xhr;
-        };
-
-        fetchText = function (url, callback) {
-            var xhr = getXhr();
-            xhr.open('GET', url, true);
-            xhr.onreadystatechange = function (evt) {
-                //Do not explicitly handle errors, those should be
-                //visible via console output in the browser.
-                if (xhr.readyState === 4) {
-                    callback(xhr.responseText);
-                }
-            };
-            xhr.send(null);
-        };
-        // end browser.js adapters
-    } else if (typeof Packages !== 'undefined') {
-        //Why Java, why is this so awkward?
-        fetchText = function (path, callback) {
-            var encoding = "utf-8",
-                file = new java.io.File(path),
-                lineSeparator = java.lang.System.getProperty("line.separator"),
-                input = new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(file), encoding)),
-                stringBuffer, line,
-                content = '';
-            try {
-                stringBuffer = new java.lang.StringBuffer();
-                line = input.readLine();
-
-                // Byte Order Mark (BOM) - The Unicode Standard, version 3.0, page 324
-                // http://www.unicode.org/faq/utf_bom.html
-
-                // Note that when we use utf-8, the BOM should appear as "EF BB BF", but it doesn't due to this bug in the JDK:
-                // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4508058
-                if (line && line.length() && line.charAt(0) === 0xfeff) {
-                    // Eat the BOM, since we've already found the encoding on this file,
-                    // and we plan to concatenating this buffer with others; the BOM should
-                    // only appear at the top of a file.
-                    line = line.substring(1);
-                }
-
-                stringBuffer.append(line);
-
-                while ((line = input.readLine()) !== null) {
-                    stringBuffer.append(lineSeparator);
-                    stringBuffer.append(line);
-                }
-                //Make sure we return a JavaScript string and not a Java string.
-                content = String(stringBuffer.toString()); //String
-            } finally {
-                input.close();
-            }
-            callback(content);
-        };
-    }
-
-    return {
-        get: function () {
-            return CoffeeScript;
-        },
-
-        write: function (pluginName, name, write) {
-            if (buildMap.hasOwnProperty(name)) {
-                var text = buildMap[name];
-                write.asModule(pluginName + "!" + name, text);
-            }
-        },
-
-        version: '0.4.2',
-
-        load: function (name, parentRequire, load, config) {
-            var path = parentRequire.toUrl(name + '.coffee');
-            fetchText(path, function (text) {
-
-                //Do CoffeeScript transform.
-                try {
-                  text = CoffeeScript.compile(text, config.CoffeeScript);
-                }
-                catch (err) {
-                  err.message = "In " + path + ", " + err.message;
-                  throw(err);
-                }
-
-                //Hold on to the transformed text if a build.
-                if (config.isBuild) {
-                    buildMap[name] = text;
-                }
-
-                //IE with conditional comments on cannot handle the
-                //sourceURL trick, so skip it if enabled.
-                /*@if (@_jscript) @else @*/
-                if (!config.isBuild) {
-                    text += "\r\n//@ sourceURL=" + path;
-                }
-                /*@end@*/
-
-                load.fromText(name, text);
-
-                //Give result to load. Need to wait until the module
-                //is fully parse, which will happen after this
-                //execution.
-                parentRequire([name], function (value) {
-                    load(value);
-                });
-            });
-        }
-    };
-});