{"_id":"fetcher","_rev":"238012","name":"fetcher","description":"Fetches libraries based on a JSON recipe in a remote repository","dist-tags":{"latest":"0.3.0"},"maintainers":[{"name":"searls","email":""}],"time":{"modified":"2021-06-03T15:53:02.000Z","created":"2014-05-25T23:48:16.491Z","0.3.0":"2021-05-12T20:40:41.843Z","0.2.0":"2014-06-11T22:00:05.090Z","0.1.2":"2014-06-02T19:19:42.428Z","0.1.1":"2014-05-26T19:45:05.938Z","0.1.0":"2014-05-26T19:26:19.391Z","0.0.5":"2014-05-26T13:46:41.368Z","0.0.4":"2014-05-26T02:48:49.380Z","0.0.3":"2014-05-26T02:37:12.131Z","0.0.2":"2014-05-26T00:17:58.248Z","0.0.1":"2014-05-25T23:48:16.491Z"},"users":{},"author":{"name":"Justin Searls"},"repository":{"type":"git","url":"git+ssh://git@github.com/testdouble/fetcher.git"},"versions":{"0.3.0":{"name":"fetcher","version":"0.3.0","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git+ssh://git@github.com/testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^1.4.0","grunt-jasmine-bundle":"^0.4.0"},"dependencies":{"async":"^3.2.0","coffeescript":"^2.5.1","cpr":"^3.0.1","cson":"^7.20.0","decompress":"^4.2.1","mkdirp":"^1.0.4","request":"^2.36.0","rimraf":"^3.0.2","underscore":"^1.13.1","which":"^2.0.2"},"gitHead":"3b03c1cb7d36c401fef8e615faeed7326f250c57","_id":"fetcher@0.3.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"shasum":"bcf5c38fc179589b920f95a7366d833ecb46b2a3","size":4638,"noattachment":false,"key":"/fetcher/-/fetcher-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.3.0.tgz"},"_npmUser":{"name":"searls","email":"searls@gmail.com"},"directories":{},"maintainers":[{"name":"searls","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/fetcher_0.3.0_1620852041711_0.5418517820060063"},"_hasShrinkwrap":false,"publish_time":1620852041843,"_cnpm_publish_time":1620852041843},"0.2.0":{"name":"fetcher","version":"0.2.0","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cpr":"^0.2.0","cson-safe":"^0.1.1","decompress":"^0.2.3","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.2.0","_shasum":"203f9e1c83643f7b2bfb2acf21b7e34df7ba0261","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"203f9e1c83643f7b2bfb2acf21b7e34df7ba0261","size":4872,"noattachment":false,"key":"/fetcher/-/fetcher-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.2.0.tgz"},"directories":{},"publish_time":1402524005090,"_cnpm_publish_time":1402524005090,"_hasShrinkwrap":false},"0.1.2":{"name":"fetcher","version":"0.1.2","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cpr":"^0.2.0","cson-safe":"^0.1.1","decompress":"^0.2.3","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.1.2","_shasum":"bcb7e9177d9fc652688f08c4cbab1981f3031f33","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"bcb7e9177d9fc652688f08c4cbab1981f3031f33","size":4437,"noattachment":false,"key":"/fetcher/-/fetcher-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.1.2.tgz"},"directories":{},"publish_time":1401736782428,"_cnpm_publish_time":1401736782428,"_hasShrinkwrap":false},"0.1.1":{"name":"fetcher","version":"0.1.1","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"decompress":"^0.2.3","grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cpr":"^0.2.0","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.1.1","_shasum":"13a3e76ad4d33b9141a2dc813b29e5254a4d666d","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"13a3e76ad4d33b9141a2dc813b29e5254a4d666d","size":4436,"noattachment":false,"key":"/fetcher/-/fetcher-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.1.1.tgz"},"directories":{},"publish_time":1401133505938,"_cnpm_publish_time":1401133505938,"_hasShrinkwrap":false},"0.1.0":{"name":"fetcher","version":"0.1.0","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"decompress":"^0.2.3","grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cpr":"^0.2.0","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.1.0","_shasum":"f8fdad658fe345bd335c25f86c4d48f34a759e1f","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"f8fdad658fe345bd335c25f86c4d48f34a759e1f","size":4457,"noattachment":false,"key":"/fetcher/-/fetcher-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.1.0.tgz"},"directories":{},"publish_time":1401132379391,"_cnpm_publish_time":1401132379391,"_hasShrinkwrap":false},"0.0.5":{"name":"fetcher","version":"0.0.5","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.0.5","_shasum":"4d8dc67b2999f6c1c7b84e590973ba1813bbdf59","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"4d8dc67b2999f6c1c7b84e590973ba1813bbdf59","size":2648,"noattachment":false,"key":"/fetcher/-/fetcher-0.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.0.5.tgz"},"directories":{},"publish_time":1401112001368,"_cnpm_publish_time":1401112001368,"_hasShrinkwrap":false},"0.0.4":{"name":"fetcher","version":"0.0.4","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.0.4","_shasum":"58b9602f9000b8b590a2d4187f0dae44eb2ee064","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"58b9602f9000b8b590a2d4187f0dae44eb2ee064","size":2548,"noattachment":false,"key":"/fetcher/-/fetcher-0.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.0.4.tgz"},"directories":{},"publish_time":1401072529380,"_cnpm_publish_time":1401072529380,"_hasShrinkwrap":false},"0.0.3":{"name":"fetcher","version":"0.0.3","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.0.3","_shasum":"23070140c30c450364be88474af9584bc1d90da3","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"23070140c30c450364be88474af9584bc1d90da3","size":2537,"noattachment":false,"key":"/fetcher/-/fetcher-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.0.3.tgz"},"directories":{},"publish_time":1401071832131,"_cnpm_publish_time":1401071832131,"_hasShrinkwrap":false},"0.0.2":{"name":"fetcher","version":"0.0.2","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cson-safe":"^0.1.1","mkdirp":"^0.5.0","request":"^2.36.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.0.2","_shasum":"464b806a9425881e09e2c424a8a7469f4f6f5fd4","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"464b806a9425881e09e2c424a8a7469f4f6f5fd4","size":2333,"noattachment":false,"key":"/fetcher/-/fetcher-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.0.2.tgz"},"directories":{},"publish_time":1401063478248,"_cnpm_publish_time":1401063478248,"_hasShrinkwrap":false},"0.0.1":{"name":"fetcher","version":"0.0.1","description":"Fetches libraries based on a JSON recipe in a remote repository","main":"index.js","scripts":{"test":"grunt spec"},"repository":{"type":"git","url":"git@github.com:testdouble/fetcher.git"},"author":{"name":"Justin Searls"},"license":"MIT","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"homepage":"https://github.com/testdouble/fetcher","devDependencies":{"grunt":"^0.4.5","grunt-jasmine-bundle":"^0.2.0","sandboxed-module":"^0.3.0"},"dependencies":{"async":"^0.9.0","coffee-script":"^1.7.1","cson-safe":"^0.1.1","mkdirp":"^0.5.0","rimraf":"^2.2.8","underscore":"^1.6.0","which":"^1.0.5"},"_id":"fetcher@0.0.1","_shasum":"a6a2432db7def02fa3778cba13760adbfa565594","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"searls","email":"searls@gmail.com"},"maintainers":[{"name":"searls","email":""}],"dist":{"shasum":"a6a2432db7def02fa3778cba13760adbfa565594","size":2354,"noattachment":false,"key":"/fetcher/-/fetcher-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/fetcher/download/fetcher-0.0.1.tgz"},"directories":{},"publish_time":1401061696491,"_cnpm_publish_time":1401061696491,"_hasShrinkwrap":false}},"readme":"# fetcher\n\n`fetcher(recipeNameOrNames, [options], [callback])`\n\nFetcher is a library the downloads assets and then places them, relative to some `cwd`, wherever a recipe specifies.\n\n``` javascript\nvar fetcher = require('fetcher');\nfetcher('backbone', function(er){\n  if(er) { throw er; }\n});\n```\n\nThe above will:\n\n1. Clone the [linemanjs/fetcher-recipes](https://github.com/linemanjs/fetcher-recipes) repo\n2. Load \"recipes/backbone.cson\".\n3. Install each step of the recipe in order, which in this case means:\n4. Install the \"underscore\" recipe, which is the first step to the \"backbone\" recipe (`{type: \"recipe\", name: \"underscore\"}`)\n5. Install \"backbone\" by downloading the source file and placing it in `vendor/js/backbone.js`\n\n## Options\n\nAn optional options argument can be passed as a second parameter of `fetcher()`. The defaults worth concerning yourself with follow:\n\n``` javascript\n{\n  recipeRepo: \"git@github.com:linemanjs/fetcher-recipes.git\",\n  cwd: process.cwd()\n}\n```\n\nThat means you can use Fetcher with your own custom tool ecosystem by defining your own recipe repo. You can also define `cwd` to whatever you like in order to install assets relative to whatever path you're interested in.\n\n## Testing fetcher\n\nfetcher currently has no automated tests. To get any feedback, I recommend cloning or starting a recipes repo to work against, then\nrunning fetcher out of its own directory and manually inspecting results:\n\n```\n$ node\n> require('./index')('google-analytics', {recipeRepo: \"/Users/justin/code/linemanjs/fetcher-recipes\"}, function(err) { console.log(\"errors!\", err); })\n```\n\nAnd then inspecting that `vendor/js/google-analytics.js` is how it should be, given that recipe.\n","_attachments":{},"homepage":"https://github.com/testdouble/fetcher","bugs":{"url":"https://github.com/testdouble/fetcher/issues"},"license":"MIT"}