{"name":"ncp","version":"0.4.2","author":{"name":"AvianFlu","email":"charlie@charlieistheman.com"},"description":"Asynchronous recursive file copy utility.","bin":{"ncp":"./bin/ncp"},"devDependencies":{"vows":"0.6.x","rimraf":"1.0.x","read-dir-files":"0.0.x"},"main":"./lib/ncp.js","repository":{"type":"git","url":"https://github.com/AvianFlu/ncp.git"},"keywords":["cli","copy"],"license":"MIT","engine":{"node":">=0.4"},"scripts":{"test":"vows --isolate --spec"},"readme":"# ncp - Asynchronous recursive file & directory copying\n\n[![Build Status](https://secure.travis-ci.org/AvianFlu/ncp.png)](http://travis-ci.org/AvianFlu/ncp)\n\nThink `cp -r`, but pure node, and asynchronous.  `ncp` can be used both as a CLI tool and programmatically.\n\n## Command Line usage\n\nUsage is simple: `ncp [source] [dest] [--limit=concurrency limit]\n[--filter=filter] --stopOnErr`\n\nThe 'filter' is a Regular Expression - matched files will be copied.\n\nThe 'concurrency limit' is an integer that represents how many pending file system requests `ncp` has at a time.\n\n'stopOnErr' is a boolean flag that will tell `ncp` to stop immediately if any\nerrors arise, rather than attempting to continue while logging errors.\n\nIf there are no errors, `ncp` will output `done.` when complete.  If there are errors, the error messages will be logged to `stdout` and to `./ncp-debug.log`, and the copy operation will attempt to continue.\n\n## Programmatic usage\n\nProgrammatic usage of `ncp` is just as simple.  The only argument to the completion callback is a possible error.  \n\n```javascript\nvar ncp = require('ncp').ncp;\n\nncp.limit = 16;\n\nncp(source, destination, function (err) {\n if (err) {\n   return console.error(err);\n }\n console.log('done!');\n});\n```\n\nYou can also call ncp like `ncp(source, destination, options, callback)`. \n`options` should be a dictionary. Currently, such options are available:\n\n  * `options.filter` - a `RegExp` instance, against which each file name is\n  tested to determine whether to copy it or not, or a function taking single\n  parameter: copied file name, returning `true` or `false`, determining\n  whether to copy file or not.\n\n  * `options.transform` - a function: `function (read, write) { read.pipe(write) }`\n  used to apply streaming transforms while copying.\n\n  * `options.clobber` - boolean=true. if set to false, `ncp` will not overwrite \n  destination files that already exist.\n\nPlease open an issue if any bugs arise.  As always, I accept (working) pull requests, and refunds are available at `/dev/null`.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/AvianFlu/ncp/issues"},"homepage":"https://github.com/AvianFlu/ncp","_id":"ncp@0.4.2","_shasum":"abcc6cbd3ec2ed2a729ff6e7c1fa8f01784a8574","_from":"https://registry.npmjs.org/ncp/-/ncp-0.4.2.tgz","_resolved":"https://registry.npmjs.org/ncp/-/ncp-0.4.2.tgz"}