{"_id":"gluejs","_rev":"161822","name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","dist-tags":{"3.0.0-rc3":"3.0.0-rc3","3.0.0-rc4":"3.0.0-rc4","3.0.0-rc5":"3.0.0-rc5","latest":"2.4.0","v3.0.0-rc1":"3.0.0-rc1","v3.0.0-rc2":"3.0.0-rc2"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"time":{"modified":"2021-06-03T11:41:08.000Z","created":"2012-05-26T00:23:38.237Z","2.4.0":"2015-11-16T19:28:10.610Z","3.0.0-rc5":"2014-08-28T22:46:28.381Z","3.0.0-rc4":"2014-07-08T23:18:31.466Z","3.0.0-rc3":"2014-07-07T22:41:55.307Z","3.0.0-rc2":"2014-06-24T23:28:50.201Z","3.0.0-rc1":"2014-06-23T23:16:59.334Z","2.3.9":"2014-06-04T23:07:12.847Z","2.3.8":"2014-06-04T22:12:36.593Z","2.3.7":"2014-03-17T20:46:09.444Z","2.3.6":"2014-03-12T01:26:56.522Z","2.3.5":"2014-03-11T03:08:49.856Z","2.3.4":"2014-03-10T23:11:34.009Z","2.3.3":"2014-03-06T22:07:48.007Z","2.3.2":"2014-01-24T22:21:57.652Z","2.3.1":"2014-01-21T01:24:55.584Z","2.3.0":"2014-01-20T21:04:23.136Z","2.2.2":"2014-01-09T03:51:51.793Z","2.2.1":"2014-01-08T04:52:57.299Z","2.2.0":"2013-12-31T02:43:35.760Z","2.1.4":"2013-11-23T23:52:37.611Z","2.1.3":"2013-11-21T19:27:51.034Z","2.1.2":"2013-10-18T19:58:02.261Z","2.1.1":"2013-10-18T19:10:21.998Z","2.1.0":"2013-10-18T02:35:21.928Z","2.0.7":"2013-08-05T22:43:46.147Z","2.0.6":"2013-07-25T01:04:26.717Z","2.0.5":"2013-07-24T23:15:25.471Z","2.0.4":"2013-07-24T21:37:27.425Z","2.0.3":"2013-07-24T21:00:46.785Z","2.0.2":"2013-06-26T03:22:04.091Z","0.2.2":"2013-06-17T18:33:53.742Z","2.0.1":"2013-06-12T19:58:20.209Z","2.0.0":"2013-06-12T02:46:25.458Z","0.2.1":"2013-04-12T00:37:54.617Z","0.2.0":"2012-11-15T19:50:00.728Z","0.1.1":"2012-10-05T22:24:01.661Z","0.1.0":"2012-08-21T21:37:52.141Z","0.0.3":"2012-08-01T03:14:58.184Z","0.0.2":"2012-05-26T00:23:38.237Z"},"users":{"fgribreau":true},"author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"versions":{"2.4.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.4.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD-3-Clause","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.1","browser-resolve":"~1.2.2","bytes":"~2.2.0","detective":"~4.3.1","minilog":"~2.1.0","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.6.1","progress":"~1.1.2","readable-stream":"1.1.9","resolve":"~0.6.1"},"devDependencies":{"mocha":"~2.3.4","uglify-js":"~2.6.1"},"gitHead":"9ac8cf6cb03b8a254cde7379d5d47935d1323127","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs#readme","_id":"gluejs@2.4.0","scripts":{},"_shasum":"b16e724c7b9f5c45dbb5fb8ba2fd5a537b8cf2f0","_from":".","_npmVersion":"2.11.2","_nodeVersion":"0.12.6","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"dist":{"shasum":"b16e724c7b9f5c45dbb5fb8ba2fd5a537b8cf2f0","size":36101,"noattachment":false,"key":"/gluejs/-/gluejs-2.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.4.0.tgz"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1447702090610,"_cnpm_publish_time":1447702090610,"_hasShrinkwrap":false},"3.0.0-rc5":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"3.0.0-rc5","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.2","browser-pack":"~2.0.1","browser-resolve":"~1.3.0","bytes":"~1.0.0","detective":"~3.1.0","insert-module-globals":"~6.0.0","microee":"0.0.5","minilog":"~2.0.5","miniq":"~0.1.2","minitask":"~0.2.3","readable-stream":"1.0.27-1","resolve":"~0.7.1","transform-runner":"~0.1.5","umd":"~2.1.0","yargs":"~1.2.6"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.14"},"gitHead":"a30473a23edbbd584fbbb137c81974839994ef1c","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs","_id":"gluejs@3.0.0-rc5","scripts":{},"_shasum":"b07d48ce68c637499ab15e31d59435d0d6f868b5","_from":".","_npmVersion":"1.4.24","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"dist":{"shasum":"b07d48ce68c637499ab15e31d59435d0d6f868b5","size":42553,"noattachment":false,"key":"/gluejs/-/gluejs-3.0.0-rc5.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-3.0.0-rc5.tgz"},"directories":{},"publish_time":1409265988381,"_cnpm_publish_time":1409265988381,"_hasShrinkwrap":false},"3.0.0-rc4":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"3.0.0-rc4","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.2","browser-pack":"~2.0.1","browser-resolve":"~1.3.0","bytes":"~1.0.0","detective":"~3.1.0","insert-module-globals":"~6.0.0","microee":"0.0.5","minilog":"~2.0.5","miniq":"~0.1.2","minitask":"~0.2.3","readable-stream":"1.0.27-1","resolve":"~0.7.1","transform-runner":"~0.1.5","umd":"~2.1.0","yargs":"~1.2.6"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.14"},"gitHead":"d0ae2811cefafe6a319af06695bcb5e3474cc5e9","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs","_id":"gluejs@3.0.0-rc4","scripts":{},"_shasum":"1e62d9eef833968312b71dff8e8075c8f8ce8607","_from":".","_npmVersion":"1.4.20","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"dist":{"shasum":"1e62d9eef833968312b71dff8e8075c8f8ce8607","size":42138,"noattachment":false,"key":"/gluejs/-/gluejs-3.0.0-rc4.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-3.0.0-rc4.tgz"},"directories":{},"publish_time":1404861511466,"_cnpm_publish_time":1404861511466,"_hasShrinkwrap":false},"3.0.0-rc3":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"3.0.0-rc3","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.2","browser-pack":"~2.0.1","browser-resolve":"~1.3.0","bytes":"~1.0.0","detective":"~3.1.0","insert-module-globals":"~6.0.0","microee":"0.0.5","minilog":"~2.0.5","miniq":"~0.1.2","minitask":"~0.2.3","readable-stream":"1.0.27-1","resolve":"~0.7.1","transform-runner":"~0.1.3","umd":"~2.1.0","yargs":"~1.2.6"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.14"},"gitHead":"67eb881732d80f6729a3be75a6850c67d6bbaad2","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs","_id":"gluejs@3.0.0-rc3","scripts":{},"_shasum":"4955bb545e196df8ccb356b86afc79ebb65b2c07","_from":".","_npmVersion":"1.4.20","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"dist":{"shasum":"4955bb545e196df8ccb356b86afc79ebb65b2c07","size":41756,"noattachment":false,"key":"/gluejs/-/gluejs-3.0.0-rc3.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-3.0.0-rc3.tgz"},"directories":{},"publish_time":1404772915307,"_cnpm_publish_time":1404772915307,"_hasShrinkwrap":false},"3.0.0-rc2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"3.0.0-rc2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.2","browser-pack":"~2.0.1","browser-resolve":"~1.3.0","bytes":"~1.0.0","detective":"~3.1.0","microee":"0.0.5","minilog":"~2.0.5","miniq":"~0.1.2","minitask":"~0.2.3","readable-stream":"1.0.27-1","resolve":"~0.7.1","transform-runner":"~0.1.3","umd":"~2.1.0","yargs":"~1.2.6"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.14"},"gitHead":"c63df01d86b416038ad769ae4dbc90bb4aaf22f8","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs","_id":"gluejs@3.0.0-rc2","scripts":{},"_shasum":"5573a25a71ca9e0ddaad3186f1a30bccc9876792","_from":".","_npmVersion":"1.4.16","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"dist":{"shasum":"5573a25a71ca9e0ddaad3186f1a30bccc9876792","size":209019,"noattachment":false,"key":"/gluejs/-/gluejs-3.0.0-rc2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-3.0.0-rc2.tgz"},"directories":{},"publish_time":1403652530201,"_cnpm_publish_time":1403652530201,"_hasShrinkwrap":false},"3.0.0-rc1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"3.0.0-rc1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"amd-resolve":"~0.1.1","amdetective":"0.0.2","browser-pack":"~2.0.1","browser-resolve":"~1.3.0","bytes":"~1.0.0","detective":"~3.1.0","microee":"0.0.5","minilog":"~2.0.5","miniq":"~0.1.2","minitask":"~0.2.2","readable-stream":"1.0.27-1","resolve":"~0.7.1","umd":"~2.1.0","yargs":"~1.2.6"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.14"},"gitHead":"394333ce046bec7a8b1acbedca6af1d591014794","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"homepage":"https://github.com/mixu/gluejs","_id":"gluejs@3.0.0-rc1","scripts":{},"_shasum":"a2c260ffeafc26ce1a68f831359a4be7fecf81a7","_from":".","_npmVersion":"1.4.16","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"dist":{"shasum":"a2c260ffeafc26ce1a68f831359a4be7fecf81a7","size":208410,"noattachment":false,"key":"/gluejs/-/gluejs-3.0.0-rc1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-3.0.0-rc1.tgz"},"directories":{},"publish_time":1403565419334,"_cnpm_publish_time":1403565419334,"_hasShrinkwrap":false},"2.3.9":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.9","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.9","dist":{"shasum":"c3fb15480837d4952e84126b1f99455021b10efc","size":207526,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.9.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1401923232847,"_cnpm_publish_time":1401923232847,"_hasShrinkwrap":false},"2.3.8":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.8","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.8","dist":{"shasum":"da55e80fd7e5c77f735196bb498c8b8fbdc4ec4e","size":208392,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.8.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1401919956593,"_cnpm_publish_time":1401919956593,"_hasShrinkwrap":false},"2.3.7":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.7","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.7","dist":{"shasum":"5eec89e93c022440a50de85744017b9bed1daa8a","size":41281,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.7.tgz"},"_from":".","_npmVersion":"1.2.31","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1395089169444,"_cnpm_publish_time":1395089169444,"_hasShrinkwrap":false},"2.3.6":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.6","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.6","dist":{"shasum":"94ddba65a5eb80a5e98176cf3e34a6b4d0e1a1eb","size":41207,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.6.tgz"},"_from":".","_npmVersion":"1.2.31","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1394587616522,"_cnpm_publish_time":1394587616522,"_hasShrinkwrap":false},"2.3.5":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.5","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.5","dist":{"shasum":"1b0aabfccc01ec9987ea7b3df55886fead586eb4","size":35219,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.5.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1394507329856,"_cnpm_publish_time":1394507329856,"_hasShrinkwrap":false},"2.3.4":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.4","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0","amd-resolve":"~0.1.1","amdetective":"0.0.1","resolve":"~0.6.1"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.4","dist":{"shasum":"c3e991e10cbf95b698c3413c12dabba0d1afc43b","size":40637,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.4.tgz"},"_from":".","_npmVersion":"1.2.31","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1394493094009,"_cnpm_publish_time":1394493094009,"_hasShrinkwrap":false},"2.3.3":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.3","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.2.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","progress":"~1.1.2","browser-resolve":"~1.2.2","detective":"~2.4.0"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.3","dist":{"shasum":"d39c2fad9e4b033b0c4d4eb1ff0b76ff76e921e2","size":32822,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.3.tgz"},"_from":".","_npmVersion":"1.2.31","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1394143668007,"_cnpm_publish_time":1394143668007,"_hasShrinkwrap":false},"2.3.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.1.2","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.2","dist":{"shasum":"2c1f430b05c9628de9fddb1fe0976251595283f7","size":29606,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.2.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1390602117652,"_cnpm_publish_time":1390602117652,"_hasShrinkwrap":false},"2.3.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.1.2","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.1","dist":{"shasum":"bfb6e10cbf6c8e72836de3ae0cc9512a3ca6cc73","size":29369,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.1.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1390267495584,"_cnpm_publish_time":1390267495584,"_hasShrinkwrap":false},"2.3.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.3.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.1.2","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x","uglify-js":"~2.4.8"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.3.0","dist":{"shasum":"d9c48c88e652698cd304d379f6941e416760f820","size":29097,"noattachment":false,"key":"/gluejs/-/gluejs-2.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.3.0.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1390251863136,"_cnpm_publish_time":1390251863136,"_hasShrinkwrap":false},"2.2.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.2.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.1.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.2.2","dist":{"shasum":"a8973a53369b38a91923e2591ed16781848a40eb","size":28509,"noattachment":false,"key":"/gluejs/-/gluejs-2.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.2.2.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1389239511793,"_cnpm_publish_time":1389239511793,"_hasShrinkwrap":false},"2.2.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.2.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"1.1.9","minimatch":"~0.2.12","minitask":"~0.1.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.3","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.2.1","dist":{"shasum":"7c2bb9f729e1f1a4693ffa50da5b243e8fad099d","size":28149,"noattachment":false,"key":"/gluejs/-/gluejs-2.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.2.1.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1389156777299,"_cnpm_publish_time":1389156777299,"_hasShrinkwrap":false},"2.2.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.2.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.2.0","dist":{"shasum":"63d6d1200042d3631280518153df57cf4bd51fc7","size":28094,"noattachment":false,"key":"/gluejs/-/gluejs-2.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.2.0.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1388457815760,"_cnpm_publish_time":1388457815760,"_hasShrinkwrap":false},"2.1.4":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.1.4","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.1.4","dist":{"shasum":"e259bec193d86cad55eb7e888f5cbc9888d2e311","size":27276,"noattachment":false,"key":"/gluejs/-/gluejs-2.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.1.4.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1385250757611,"_cnpm_publish_time":1385250757611,"_hasShrinkwrap":false},"2.1.3":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.1.3","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.1.3","dist":{"shasum":"f9dbb4897f8ce9c208e724dfe298c4f0443a32eb","size":27195,"noattachment":false,"key":"/gluejs/-/gluejs-2.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.1.3.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1385062071034,"_cnpm_publish_time":1385062071034,"_hasShrinkwrap":false},"2.1.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.1.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.1.2","dist":{"shasum":"7fdeccaa036163716cccf9319441c139ae4f05e7","size":26991,"noattachment":false,"key":"/gluejs/-/gluejs-2.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.1.2.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1382126282261,"_cnpm_publish_time":1382126282261,"_hasShrinkwrap":false},"2.1.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.1.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1","progress":"~1.1.2"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.1.1","dist":{"shasum":"d3901d312fe0beac6142f393101695ac3e6c58ec","size":26637,"noattachment":false,"key":"/gluejs/-/gluejs-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.1.1.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1382123421998,"_cnpm_publish_time":1382123421998,"_hasShrinkwrap":false},"2.1.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.1.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"license":"BSD","bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.1.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0","resolve":"~0.5.1"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.1.0","dist":{"shasum":"119eb9c7e93dcbb316a0168df3f0d32bfe31d544","size":26432,"noattachment":false,"key":"/gluejs/-/gluejs-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.1.0.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1382063721928,"_cnpm_publish_time":1382063721928,"_hasShrinkwrap":false},"2.0.7":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.7","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.7","dist":{"shasum":"04b3de1c5e032f8c5790b6ce086e01f222356e30","size":2480915,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.7.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1375742626147,"_cnpm_publish_time":1375742626147,"_hasShrinkwrap":false},"2.0.6":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.6","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.6","dist":{"shasum":"00c673c61a7735a73e00bf821ea9ba9a61219bef","size":27519,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.6.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1374714266717,"_cnpm_publish_time":1374714266717,"_hasShrinkwrap":false},"2.0.5":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.5","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.5","dist":{"shasum":"233a34d1fa1a53426549acc19c8574f061bd0c42","size":26983,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.5.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1374707725471,"_cnpm_publish_time":1374707725471,"_hasShrinkwrap":false},"2.0.4":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.4","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.4","dist":{"shasum":"36caf827c8517faa10825867aae9bf2aa71e9cae","size":26745,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.4.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1374701847425,"_cnpm_publish_time":1374701847425,"_hasShrinkwrap":false},"2.0.3":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.3","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.1","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.3","dist":{"shasum":"069d0c6f297ac3a646b5887bf1c9658ced5b1aae","size":26625,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.3.tgz"},"_from":".","_npmVersion":"1.3.1","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1374699646785,"_cnpm_publish_time":1374699646785,"_hasShrinkwrap":false},"2.0.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.0","optimist":"~0.5.2","bytes":"~0.2.1","minilog":"~2.0.0"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.2","dist":{"shasum":"b9957b3ea3e4dfa3f551e3235bc8cfc78aeb00c1","size":22724,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.2.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1372216924091,"_cnpm_publish_time":1372216924091,"_hasShrinkwrap":false},"0.2.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.2.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"lib/index.js","bin":{"gluejs":"./bin/gluejs"},"dependencies":{"package-json-resolver":"0.0.1","minilog":"2.0.0","argsparser":"0.0.6"},"devDependencies":{"mocha":"1.x"},"readmeFilename":"readme.md","_id":"gluejs@0.2.2","dist":{"shasum":"7667614318bd458a8573d2200249f2e2244bee5e","size":11194,"noattachment":false,"key":"/gluejs/-/gluejs-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.2.2.tgz"},"_from":".","_npmVersion":"1.2.28","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1371494033742,"_cnpm_publish_time":1371494033742,"_hasShrinkwrap":false},"2.0.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"repository":{"type":"git","url":"git://github.com/mixu/gluejs.git"},"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.0","optimist":"~0.5.2","bytes":"~0.2.1"},"devDependencies":{"mocha":"1.x","minilog":"~2.0.0"},"peerDependencies":{"minilog":"~2.0.0"},"readmeFilename":"readme.md","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"_id":"gluejs@2.0.1","dist":{"shasum":"d6f960580ae90d4e29ead2b3eb2963dd0d1ee556","size":22186,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.1.tgz"},"_from":".","_npmVersion":"1.2.28","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1371067100209,"_cnpm_publish_time":1371067100209,"_hasShrinkwrap":false},"2.0.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"2.0.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"bin":{"gluejs":"./bin/gluejs"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"index.js","dependencies":{"readable-stream":"~1.0.2","minimatch":"~0.2.12","minitask":"0.0.0","optimist":"~0.5.2","bytes":"~0.2.1"},"devDependencies":{"mocha":"1.x","minilog":"~2.0.0"},"peerDependencies":{"minilog":"~2.0.0"},"readmeFilename":"readme.md","_id":"gluejs@2.0.0","dist":{"shasum":"7ca97706895e65b19d277978401a88ad219ee79f","size":21838,"noattachment":false,"key":"/gluejs/-/gluejs-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-2.0.0.tgz"},"_from":".","_npmVersion":"1.2.28","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1371005185458,"_cnpm_publish_time":1371005185458,"_hasShrinkwrap":false},"0.2.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.2.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"lib/index.js","bin":{"gluejs":"./bin/gluejs"},"dependencies":{"package-json-resolver":"0.0.1","minilog":"0.0.4","argsparser":"0.0.6"},"devDependencies":{"mocha":"1.x"},"_id":"gluejs@0.2.1","dist":{"shasum":"6b9a2eb3d3771a8428c5ea9ad00c5ace671eda26","size":11201,"noattachment":false,"key":"/gluejs/-/gluejs-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.2.1.tgz"},"_npmVersion":"1.1.63","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1365727074617,"_cnpm_publish_time":1365727074617,"_hasShrinkwrap":false},"0.2.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.2.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"lib/index.js","bin":{"gluejs":"./bin/gluejs"},"dependencies":{"package-json-resolver":"0.0.1","minilog":"0.0.4","argsparser":"0.0.6"},"devDependencies":{"mocha":"1.x"},"_id":"gluejs@0.2.0","dist":{"shasum":"46fa473aabe77e80642d64efe28986b53f3566cc","size":11153,"noattachment":false,"key":"/gluejs/-/gluejs-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.2.0.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1353009000728,"_cnpm_publish_time":1353009000728,"_hasShrinkwrap":false},"0.1.1":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.1.1","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"lib/index.js","bin":{"gluejs":"./bin/gluejs"},"dependencies":{"package-json-resolver":"git://github.com/mixu/package-json-resolver.git#master","minilog":"0.0.4","argsparser":"0.0.6"},"devDependencies":{"mocha":"1.x"},"_id":"gluejs@0.1.1","dist":{"shasum":"f4240ed40a4434abdd29f6be87a52807ce96a5b4","size":9932,"noattachment":false,"key":"/gluejs/-/gluejs-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.1.1.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1349475841661,"_cnpm_publish_time":1349475841661,"_hasShrinkwrap":false},"0.1.0":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.1.0","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"keywords":["browser","require","bundle","commonjs","npm","module","package"],"main":"lib/glue.js","dependencies":{"package-json-resolver":"git://github.com/mixu/package-json-resolver.git#master","minilog":"0.0.4"},"devDependencies":{"mocha":"1.x"},"_id":"gluejs@0.1.0","dist":{"shasum":"285ecf545ee9a86b19890c694198ed31a3afafea","size":7758,"noattachment":false,"key":"/gluejs/-/gluejs-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.1.0.tgz"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1345585072141,"_cnpm_publish_time":1345585072141,"_hasShrinkwrap":false},"0.0.3":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.0.3","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"main":"lib/glue.js","devDependencies":{"mocha":"1.x"},"_id":"gluejs@0.0.3","dist":{"shasum":"1ff4353571163a93bbee75bd5d84efc273cc7399","size":37280,"noattachment":false,"key":"/gluejs/-/gluejs-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.0.3.tgz"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1343790898184,"_cnpm_publish_time":1343790898184,"_hasShrinkwrap":false},"0.0.2":{"name":"gluejs","description":"Build CommonJS modules for the browser via a chainable API","version":"0.0.2","author":{"name":"Mikito Takada","email":"mikito.takada@gmail.com","url":"http://blog.mixu.net/"},"main":"lib/glue.js","devDependencies":{"mocha":"1.0.x"},"_npmUser":{"name":"mixu","email":"mixu@mixu.net"},"_id":"gluejs@0.0.2","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.16","_nodeVersion":"v0.6.15","_defaultsLoaded":true,"dist":{"shasum":"6a505ae837534a1c882946e8cb169f1447bdcc59","size":4391,"noattachment":false,"key":"/gluejs/-/gluejs-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/gluejs/download/gluejs-0.0.2.tgz"},"maintainers":[{"name":"mixu","email":"mixu@mixu.net"}],"directories":{},"publish_time":1337991818237,"_cnpm_publish_time":1337991818237,"_hasShrinkwrap":false}},"readme":"# gluejs V2\n\nPackage Node/CommonJS modules for the browser\n\nNew version! gluejs v2 is now out with a bunch of new features ([v1 branch](https://github.com/mixu/gluejs/tree/master))\n\n\n- Converts code written for Node.js to run in the browser\n- Lightweight require shim (~400 characters, minified but not gzipped)\n- Easy to connect to intermediate shell tasks (e.g. minifiers) due to streams2 support\n- Fast (can use caching to avoid rebuilding unchanged files)\n- Programmable: use the Node API to serve packages directly, or build static packages using the command line tool\n  - render() to console, or directly to a HTTP request\n  - include() files or full directories, blacklist using exclude(regexp)\n- Bind variables under window.* to require() statements using replace()\n- Compile templating language files to JS via a custom handler\n- Source url support\n\n## Usage example: console\n\n    gluejs \\\n      --include ./lib/ \\\n      --include ./node_modules/microee/ \\\n      --global App \\\n      --main lib/index.js \\\n      --out app.js \\\n      --command 'uglifyjs --no-copyright --mangle-toplevel'\n\nAll of these options are also available via a Node API (e.g. `require('gluejs')`).\n\n## Usage example: express middleware (new in v2.2!)\n\n    var express = require('express'),\n        glue = require('gluejs'),\n        app = express();\n\n    app.use(express.static(__dirname));\n\n    app.use('/app.js', glue.middleware({\n      basepath: __dirname,\n      include: [ './lib', '../node_modules/jade/' ]\n    }));\n\n    app.listen(3000);\n    console.log('Listening on port 3000');\n\n`glue.middleware()` can accept most of the options supported by the Node API.\n\n## Using the resulting file\n\nThe build result is a standalone file, which is exported as a global (`lib/index.js` is exposed as `App`):\n\n    <script src=\"app.js\"></script>\n    <script>\n      console.log(window.App); // single external interface to the package\n    </script>\n\nThe require() statements inside the package work just like under Node, yet none of the internals are leaked into the global namespace.\n\ngluejs does not export a global \"require()\" function in the browser; this means that it is compatible with other code since all details are hidden and only a single interface is exported (main file's ```module.exports```). The reasons behind this are documented in much more detail in my book, \"[Single page applications in depth](http://singlepageappbook.com/maintainability1.html)\". If you want to export the require implementation, you can use `--global-require`.\n\nAn additional benefit is that you only need one HTTP request to load a package, and that the resulting files can be redistributed (e.g. to a non-Node web application) without worry. If you need to set breakpoints inside files, use `--source-url` to enable source urls.\n\n## Installation\n\nTo install the command line tool globally, run\n\n    npm install -g gluejs\n\nAlternatively, you can run the tool (e.g. via a Makefile) as `./node_modules/gluejs/bin/gluejs`.\n\n# What's new in v2.3\n\ngluejs v2.3 adds UMD support and performance / robustness improvements.\n\n- UMD support: you can now run the same build result in Node and AMD and in the browser. This enables three use cases:\n  - you can use gluejs bundles in AMD/Require.js (via config.js, see the relevant section below)\n  - you can share the same file between AMD and Node\n  - you can use gluejs to produce a minified/obfuscated version of your codebase that's usable in Node\n- chained require() resolution. The gluejs `require()` shim has been redesigned so that if a `require` function is already defined, then it will fall back to that function. This has two implications:\n  - if `--global-require` is set (exporting the `require()` function), you can split your app into multiple bundles loaded separately in the browser and they will appropriately chain require() calls as long they are loaded in prerequisite order\n  - UMD bundles running under Node will fall back to using Node's native `require` for modules that are not in the bundle\n- Added pre-filters to skip .git / svn / hg / cvs directories for better performance\n- Improved the behavior of the cache when the metadata is corrupted or in an unexpected format\n\n## What's new in v2.2\n\nNote: if you are upgrading from an older version: the default value for `--global` is now `App` rather than `Foo`.\n\ngluejs v2.2 adds Express middleware for serving gluejs packages, thanks [@JibSales](https://github.com/JibSales).\n\n## What's new in v2.1\n\nNote: if you are upgrading from v2.0: `--cache` is now called `--cache-path`.\n\ngluejs v2.1 adds significant performance improvements over v2.0! In addition, it adds support for custom transformations, including ones that were written for [browserify](https://github.com/substack/node-browserify#list-of-source-transforms).\n\n- the task execution engine now supports running multiple tasks concurrently while producing a single output file. Most build systems only use a single output stream, which means that expensive tasks such as `uglifyjs` are run on each file in serial order. gluejs v2.1's new engine executes all tasks in parallel, kind of like MapReduce at a small scale (configurable via `--jobs`).\n- anecdotally, this has reduced build time for CPU-intensive builds (e.g. minifying a large number of files) by ~50% by making use of all the available CPU cores.\n- the system now enables caching by default; if you run the same gluejs task twice, only the changed files are re-processed. Changes are detected either using md5 hashing or filesize + modification time. Caching used to be an advanced option, but it helps a lot in practice so I figured I'd enable it by default. You can opt out via `--no-cache`, but why?\n- the cache supports multiple versions of the same input file (e.g. if you have a gluejs task for a debug build and a production build, switching between the two no longer invalidates the cache).\n- added support for custom transformations, such as compiling template files and other compile-to-JS files.\n\nFor example, on a Macbook Pro using a ~1.2Mb input with ~600 files and applying minification (which is CPU-intensive), `--no-cache --jobs 1` (e.g. force serial execution):\n\n    0:56.75 wall clock time, 39.90 user, 21.18 system\n\nand `--no-cache` (e.g. parallel execution with default options):\n\n    0:18.89 wall clock time, 72.78 user, 29.04 system\n\nIn other words, the build completes almost 3x faster than before.\n\n## What's new in v2\n\ngluejs (v2) is a comprehensive refactoring to make use of Node 0.10.x -style streams (under 0.8.x via [readable-stream](https://github.com/isaacs/readable-stream)).\n\n- internals refactored to make working with unix pipes (e.g. minification, obfuscation etc.) much easier via Node 0.10.x streams\n- internals refactored to make file operation easier to apply (e.g. each task is separated into it's own pipe)\n- faster repeated builds via file caching\n- more accurate npmignore/gitignore matching\n\n## Neat new features\n\nEasier minification (or other processing) via `--command`:\n\n    gluejs \\\n    --include ./lib \\\n    --replace jQuery=window.jQuery \\\n    --command 'uglifyjs --no-copyright' \\\n    --global App \\\n    --main lib/index.js \\\n    --out app.js\n\nWith that option, all files are piped through `uglifyjs` before writing to disk.\n\nGorgeous new reporter (enable via `--report`), with stats on savings from minification:\n\n    # Root package\n      lib/web/shim.js                          12.94kb 38% -> 3.84kb (-9324b -71%)\n      lib/common/shim.util.js                  4.65kb  13% -> 1.21kb (-3524b -75%)\n      lib/common/outlet.js                     4.07kb  12% -> 2.05kb (-2074b -50%)\n      lib/common/view.js                       3.94kb  11% -> 1.93kb (-2054b -51%)\n      lib/common/collection_view.js            2.09kb  6 % -> 1.03kb (-1082b -51%)\n      lib/common/collection.js                 1.18kb  3 % -> 494b   (-716b  -60%)\n      lib/common/table_view.js                 458b    1 % -> 38b    (-420b  -92%)\n      lib/web/index.js                         271b    0 % -> 280b   (9b     3%)\n    Package total: 29.59kb 88% -> 10.85kb (-19185b -64%)\n    Package dependencies: htmlparser-to-html, microee\n    # htmlparser-to-html\n      node_modules/htmlparser-to-html/index.js 2.43kb  7 % -> 1.26kb (-1190b -48%)\n    Package total: 2.43kb 7% -> 1.26kb (-1190b -48%)\n    # microee\n      node_modules/microee/index.js            1.24kb  3 % -> 900b   (-366b  -29%)\n    Package total: 1.24kb 3% -> 900b (-366b -29%)\n    Total size: 12.99kb (-20741b -61%)\n\nReport explained:\n\n    lib/web/shim.js                          12.94kb 38% -> 3.84kb (-9324b -71%)\n    [filename]         [original size] [% of total] -> [minified size] (savings in bytes and %)\n\nThe `.npmignore` and `package.json` exclude logic is now more accurate, leading to smaller builds.\n\n## Upgrading from gluejs v1\n\nThe command line option syntax has changed: `gluejs --include foo bar` has to be written as `gluejs --include foo --include bar`.\n\nThe `--npm foo` option no longer exists. Instead, just `--include ./node_modules/foo`, the package inference engine will figure out that the target is a npm module and handle it correctly.\n\nThe `.concat(packageA, packageB)`, `.define(module, code)`, `.defaults()` features are deprecated (use bash or string concatenation; use different --include statements).\n\n## Usage\n\n````markdown\nUsage: gluejs --include <file/dir ...> {OPTIONS}\n\n## Basic\n\n  --include         Path to import.\n  --exclude         JS regular expression string to match against the included paths\n  --out             File to write. Default: stdout\n  --global          Name of the global to export. Default: \"App\"\n  --basepath        Base path for relative file paths. Default: process.cwd()\n  --main            Name of the main file/module to export. Default: index.js\n\n## Replace / remap\n\n  --replace foo=bar Bind require(\"name\") to an expression, e.g. jQuery to window.$.\n  --remap foo=bar   Remap a name to another name (within the same package). See the docs.\n\n## Build options\n\n  --source-url      Add source URL annotations to the files. Useful for development,\n                    but note that this is not compatible with IE.\n  --global-require  Export the require() implementation into the global space.\n  --amd             Export the module via the require.js AMD define(\"name\", ...) using\n                    the name specified in --global. Note that the requirejs will not\n                    pick up modules defined like this unless you do at least one\n                    asynchronous require() call.\n\n## Minification / source transforms\n\n  --command         Pipe each file through a shell command and capture the output\n                    (e.g. --command \"uglifyjs --no-copyright\").\n  --transform       Activates a source transformation module.\n\n## Performance\n\n  --cache-path      Use a cache directory to store file builds. The cache speeds up\n                    large builds (and minified builds) significantly since only source\n                    files that have changed are updated.\n  --jobs            Sets the maximum level of parallelism for the task\n                    execution pipeline. Default: `os.cpus().length * 2`\n  --cache-method    Sets the cache method: stat | hash algorighm name.\n\n## Reporting\n\n  --report          Display the file size report.\n  --silent          Disable all output, including the reporter.\n  --verbose         More verbose output, such as files being filtered out and processed.\n  --version         Version info\n\n## Advanced\n\n  --reset-exclude   Advanced: do not apply the default exclusions\n                    (/dist/, /example/, /benchmark/, .min.js).\n````\n\n## API usage example\n\n```javascript\nvar Glue = require('gluejs');\nnew Glue()\n  .basepath('./lib') // output paths are relative to this\n  .main('index.js')  // the file that's exported as the root of the package\n  .include('./lib')  // includes all files in the dir\n  .exclude(new RegExp('.+\\\\.test\\\\.js')) // excludes .test.js\n  .replace({\n    'jquery': 'window.$ ', // binds require('jquery') to window.$\n    'Chat': 'window.Chat'\n  })\n  .export('App') // the package is output as window.App\n  .render(fs.createWriteStream('./out.js'));\n```\n\nYou can also render e.g. to a http response:\n\n```javascript\n  .render(function (err, txt) {\n    // send the package as a response to a HTTP request\n    res.setHeader('content-type', 'application/javascript');\n    res.end(txt);\n  });\n```\n\n## --include\n\n`--include <path>` (console) / `.include(path)` (API).\n\n- If the path is a file, include it.\n- If the path is a directory, include all files in it recursively.\n- If the path is a node module, include all files in it and all subdependencies in the build.\n\nSub-dependencies are also automatically bundled, as long as they've been installed by npm. Since the require() semantics are the same as in Node, subdependencies can depend on different versions of the same module without conflicting with each other.\n\n`.json` files are also supported; just like in Node, you can use `require('./foo.json')` within the resulting bundle.\n\n## --exclude\n\n`--exclude <regexp>` / `.exclude(regexp)`: Excludes all files matching the regexp from the build. Evaluated just before rendering the build so it applies to all files.\n\n`--reset-exclude`: **New advanced option**. Removes the default exclusions (matching /dist/, /example/, /benchmark/, [-.]min.js$). For example: `--reset-exclude --exclude '/foo/'`.\n\n## --global\n\n`--global <name>` / `.export(name)`: Name of the global name to export. Default: `App` (e.g. `window.App`)\n\n## --basepath\n\n`--basepath <path>` / `.basepath(path)`: Base path for relative file paths. All relative paths are appended to this value. Default: process.cwd().\n\n## --main\n\n`--main <filename>` / `.main('filename')`: Name of the main file/module to export. Default: index.js.\n\n## --out\n\n`--out <path>` / `.render(destination)`: Write to the target path.\n\nFor `.render`, the destination can be either a Writable Stream or a callback `function(err, output){}`. See the API usage example above.\n\n## .middleware\n\n`.middleware({ include: ... })`: Returns a Express/Connect compatible request handler.\n\nFor example:\n\n    app.use('/js/app.js', glue.middleware({\n      include: __dirname + '/lib'\n    }));\n\nOr at the route level:\n\n    app.use(app.router);\n    app.get('/js/app.js', glue.middleware({\n      include: __dirname + '/lib'\n    }));\n\nUsing full paths is recommended to avoid ambiguity. `basepath` defaults to the `include` path, and `main` defaults to `index.js`.\n\n## --replace\n\n`--replace name=expr` / `.replace(name, value)` / `.replace({ name: ... })`: Replace the return value of a `require()` call.\n\nFor example, to bind `require('underscore')` to `window._`:\n\n    --replace underscore=window._\n\nTo bind `require('fs')` to `undefined`:\n\n    --replace fs={}\n\nUsing a global require (e.g. to bind to the value of a AMD module):\n\n    --replace sha1=\"window.require('sha1')\"\n\n## --remap\n\n`--remap name=expr` / `.remap(key, value)`: Remap a name to another name (within the same package).\n\nFor example, to remap `require('assert')` to `require('chai').assert`:\n\n    --remap \"assert=require('chai').assert\"\n\nWhen you are binding to a external module, use `--replace`. When the module is internal to the package (e.g. fs, assert, ...), use `--remap`. Basically the difference is that `--remap` dependencies are only resolved when they are first required, whereas `--replace` is a direct assignment / evaluation. The delayed evaluation is needed for internal modules to prevent circular dependencies from causing issues during load time.\n\n## --source-url\n\n`--source-url` / `.set('source-url', true)`: Source URLs are additional annotations that make it possible to show the directory tree when looking at scripts (instead of just the one compiled file):\n\n![screenshot](https://github.com/mixu/gluejs/raw/master/test/sample/sourceurl.png)\n\nTo enable source URLs, set the following option:\n\n```javascript\n.set('source-url', true)\n```\n\nNote that source URLs require that scripts are wrapped in a eval block with a special comment, which is not supported by IE, so don't use source URLs for production builds.\n\n## --command\n\n`--command <cmd>` / `.set('command', <cmd>)`: Pipe each file through a shell command and capture the output. For example:\n\n    --command \"uglifyjs --no-copyright\"\n\nFor more complicated use cases, you'll probably want to use `--transform`.\n\n## --transform (v2.1)\n\n`--transform <module>`: activates a source transformation module. This enables 3rd party extensions for things that are more complex than just piping through via `--command`.  API-compatible with browserify's [source transformation modules](https://github.com/substack/node-browserify#list-of-source-transforms).\n\nThis feature is new, so let me know if you run into issues with it.\n\nFor example, using coffeeify:\n\n    npm install coffeeify\n    gluejs --transform coffeeify --include index.coffee > bundle.js\n\ngluejs uses [minitask](https://github.com/mixu/minitask) internally, so you can also write modules that return sync / async functions, Node core duplex / transform streams or Node core child_process objects.\n\nSee the [section on writing transform modules](#writing_transform_modules) as well as [this example which uses Square's ES6-module-compiler](https://github.com/mixu/gluejs/blob/glue2/test/command-integration/es6-module.js) and [Jade example](https://github.com/mixu/gluejs/blob/glue2/test/command-integration/jade-module.js) for examples.\n\nIf you write a transformation, file a PR against the readme so I can feature it here. I've tested functionality using the examples above, but I haven't published them as modules as it's hard to maintain something I'm not using.\n\n## --report\n\nDisplay the summary report. Particularly useful if you are minifying files, since the report will show the file size after transformation.\n\n## --jobs (v2.1)\n\n`--jobs <n>` / `.set('jobs', <n>)`: Sets the maximum level of parallelism for the task execution pipeline. Default: `os.cpus().length * 2`.\n\n## --cache-path (v2.1)\n\n`--cache-path <path>` / `.set('cache-path', <path>)`: Use a specific directory for caching. This is a directory where the results of the previous builds are stored along with metadata. Caching is enabled by default in v2.1. If a path is not set, then `~/.gluejs-cache` is used for storing cache results. You can just delete the directory to invalidate the cache.\n\nThe cache speeds up large builds (and minified builds) significantly since only source files that have changed are updated.\n\nUse a directory with a dot in front to hide the cached files (remember to also gitignore the directory). The path is relative to the working directory. For example:\n\n    --cache-path .cache\n\nWhen the cache is in use, the number of cache hits are shown:\n\n    Cache hits: 2 / 2 files\n\nTo get even more info, enable `--verbose`.\n\n## --cache-method (v2.1)\n\n`--cache-method <stat|md5|sha512>` / `.set('cache-method', <method>)`: Sets the cache invalidation method. `stat` uses the file size and last modified date of the input file. `md5` (and other hash algorithms supported by `crypto.createHash`) uses hashes to verify that the input file has not changed. Default: stat.\n\n## --no-cache (v2.1)\n\n`--no-cache` / `.set('cache', false)`: Disables the cache; sets the cache directory to a temporary directory.\n\n## --global-require\n\n`--global-require` / `.set('global-require', true)`: Overwrites / exports the require implementation from the package, allowing you to call `require()` from outside the package as if you were inside the package.\n\nOne use case for this feature is when you want to package and load a fixed set of files and npm dependencies via `require()` calls in the browser.\n\nDummy index.js:\n\n```javascript\nmodule.export = {};\n```\n\nBuild command:\n\n```bash\ngluejs \\\n  --include index.js \\\n  --include node_modules/ \\\n  --global-require \\\n  --global App \\\n  --out package.js\n```\n\nHTML page (assuming \"foo\" is a node module):\n\n```html\n<script src=\"package.js\"></script>\n<script>\n  var foo = require('foo');\n</script>\n```\n\nWith `--global-require`, `require()` statements are resolved as if they were inside index.js.\n\n## --umd (new in v2.3)\n\n`--umd` / `.set('umd', true)`: UMD compatible export.\n\nThe resulting bundle can be loaded in Node (directly via require()), in AMD (as an external module) or alternatively as a global (in the browser). All you need to do is to add `--umd` to your build to include the UMD wrapper.\n\nCreating the bundle:\n\n    gluejs \\\n      --umd \\\n      --include ./lib/ \\\n      --include ./node_modules/microee/ \\\n      --global App \\\n      --main lib/index.js \\\n      --out app.js \\\n\nIn node:\n\n    node -e \"console.log(require('./app.js'););\"\n\nIn AMD/Require.js,`config.js`, assuming `--global` was set to `App`:\n\n    {\n      paths: { \"myapp\": \"/app.js\" },\n      myapp: {\n        deps: [ ... ],\n        exports: 'App'\n      }\n    }\n\nafter which the module is accessible as `myapp`.\n\nNote that Require.js might not pick up modules defined like this unless you do at least one asynchronous require() call, e.g. you need to run the no-op code `require(['foo'], function(foo){ });` before `require('foo')` will work. This seems to be a quirk in the Require.js AMD shim.\n\nUpgrade note: `--amd`, an older option which was only compatible with AMD/requirejs, is now equivalent to `--umd`.\n\n## --verbose\n\n`--verbose` / `.set('verbose', true)`: More verbose output, such as files being filtered out and processed.\n\n## --silent\n\n`--silent` / `.set('silent', true)`: disable verbose logging\n\n## A few notes about npm dependencies\n\nThe main file is determined by looking at the \"main\" key in package.json and resolution follows the require() rules as documented in the Node API docs.\n\nOnly files ending with .js are included in the builds, since require() only works with .js, .json and .node files (the last one being for compiled native modules).\n\nThe .npmignore file is honored. It works like a .gitignore file. This is the preferred way of excluding files and directories from npm dependencies according to `npm help developers`.\n\n## Writing transform modules\n\nBy default, gluejs only handles files that end with \".js\".\n\nYou can create custom transform modules that handle other types of files, such as templates for your favorite templating language.\n\nHere is an example:\n\n    var path = require('path'),\n        jade = require('jade');\n\n    module.exports = function(filename) {\n      // gluejs modules can be skipped by returning false\n      if(path.extname(filename) != '.jade') {\n        return;\n      }\n\n      // Minitask \"sync\" function\n      return function(input) {\n        return 'var jade = require(\\'jade\\').runtime;\\n' +\n                'module.exports = ' +\n                jade.compile(input, { filename: filename }).toString() + ';';\n      };\n    };\n\n    // indicate that this is a gluejs module rather than a browserify module\n    module.exports.gluejs = true;\n\n### Benchmark methodology\n\nRan this:\n\n    /usr/bin/time -f \"\\n%E wall clock,\\n%U user mode CPU seconds,\\n%S kernel mode CPU seconds\" \\\n      gluejs \\\n      --no-cache \\\n      --jobs 1 \\\n      --command 'uglifyjs --no-copyright' \\\n      --no-report \\\n      --progress \\\n      ...\n\n## License\n\nBSD\n","_attachments":{},"homepage":"https://github.com/mixu/gluejs#readme","bugs":{"url":"https://github.com/mixu/gluejs/issues"},"license":"BSD-3-Clause"}