{"_id":"larry","_rev":"47-faa1941afbe4e5fdb96b1a7256a8c901","name":"larry","description":"A packaging tool for bundling project releases","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1":{"name":"larry","version":"0.0.1","_id":"larry@0.0.1","maintainers":[{"name":"shamasis","email":"mail@shamasis.net"}],"bin":{"larry":"bin/larry"},"dist":{"shasum":"5787684bfcf0321a370d96a668052fcc3870d266","tarball":"https://registry.npmjs.org/larry/-/larry-0.0.1.tgz","integrity":"sha512-kApr5l8fdMOm6S/5+ybFtLhsq96o6tpx9aMYA/IY2bTEDnIrkfDzDPTfw65cQ42M8/Aa5CFPGFaCjJK1FFZVFQ==","signatures":[{"sig":"MEYCIQDZz2JaAt6t3xH/UXQm1TAHKsRd5PP8PVP8+4RuC6EO2AIhAKvya9V3/uoCa8NcCfhevOLqtdaNoMmitpyccOgjR/5z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","scripts":{"test":"scripts/test","drone":"scripts/drone"},"_npmUser":{"name":"shamasis","email":"mail@shamasis.net"},"repository":{"url":"https://bitbucket.org/fusioncharts/larry.git","type":"git"},"_npmVersion":"1.2.24","description":"A packaging tool for bundling project releases","directories":{},"dependencies":{"JSV":"~4.0.2","wrench":"~1.5.7","adm-zip":"~0.4.4","commander":"~2.1.0","underscore":"~1.5.2"},"jshintConfig":{"asi":false,"es3":false,"sub":false,"boss":true,"evil":false,"expr":true,"node":true,"curly":true,"debug":false,"devel":false,"forin":false,"immed":true,"noarg":true,"nonew":false,"proto":false,"undef":true,"eqeqeq":false,"eqnull":true,"freeze":true,"indent":4,"newcap":true,"shadow":false,"unused":true,"bitwise":false,"browser":false,"globals":{},"latedef":true,"noempty":false,"iterator":false,"laxbreak":false,"laxcomma":false,"loopfunc":false,"multistr":false,"notypeof":false,"plusplus":false,"quotmark":"double","supernew":false,"trailing":false,"camelcase":true,"funcscope":false,"lastsemic":false,"scripturl":false,"smarttabs":false,"globalstrict":false},"devDependencies":{"jshint":"~2.4.1","jasmine-node":"~1.12.0"}},"0.0.2":{"name":"larry","version":"0.0.2","_id":"larry@0.0.2","maintainers":[{"name":"shamasis","email":"mail@shamasis.net"},{"name":"fusioncharts","email":"mail@labs.fusioncharts.com"},{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"}],"bin":{"larry":"bin/larry"},"dist":{"shasum":"3936b414870a86f8bbf798b9e9dcc8521739f3a5","tarball":"https://registry.npmjs.org/larry/-/larry-0.0.2.tgz","integrity":"sha512-WPmjZ0j4Binh8hQRODCWKGIXdteD+Xbn/4D8NEOdXbb/5EJTlWbj1k1WElm2g/kBTsNVcBNXtICpZmZai6BC+w==","signatures":[{"sig":"MEUCICO+bK3cl11hKa3+ydgmuJmZuIvWIk2btxRiU/LNUZrnAiEAocxCnOb+6hB8xRwnHqEDYN8768jW4EbUYADl2u9pJtw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","scripts":{"test":"scripts/test","drone":"scripts/drone"},"_npmUser":{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"},"repository":{"url":"https://bitbucket.org/fusioncharts/larry.git","type":"git"},"_npmVersion":"1.3.14","description":"A packaging tool for bundling project releases","directories":{},"dependencies":{"JSV":"~4.0.2","wrench":"~1.5.7","archiver":"~0.6.1","commander":"~2.1.0","underscore":"~1.5.2"},"jshintConfig":{"asi":false,"es3":false,"sub":false,"boss":true,"evil":false,"expr":true,"node":true,"curly":true,"debug":false,"devel":false,"forin":false,"immed":true,"noarg":true,"nonew":false,"proto":false,"undef":true,"eqeqeq":false,"eqnull":true,"freeze":true,"indent":4,"newcap":true,"shadow":false,"unused":true,"bitwise":false,"browser":false,"globals":{},"latedef":true,"noempty":false,"iterator":false,"laxbreak":false,"laxcomma":false,"loopfunc":false,"multistr":false,"notypeof":false,"plusplus":false,"quotmark":"double","supernew":false,"trailing":false,"camelcase":true,"funcscope":false,"lastsemic":false,"scripturl":false,"smarttabs":false,"globalstrict":false},"devDependencies":{"jshint":"~2.4.1","jasmine-node":"~1.12.0"}},"0.0.3-beta":{"name":"larry","version":"0.0.3-beta","_id":"larry@0.0.3-beta","maintainers":[{"name":"shamasis","email":"mail@shamasis.net"},{"name":"fusioncharts","email":"mail@labs.fusioncharts.com"},{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"}],"bin":{"larry":"bin/larry"},"dist":{"shasum":"31c767863eaea658ddd14af84a7ed580b59db236","tarball":"https://registry.npmjs.org/larry/-/larry-0.0.3-beta.tgz","integrity":"sha512-onq4oQt29TEiINHIo2wH2WRU0WhXu2eZSc2tVjGI2Lr0gHHok+U6fF0XXC2GybYxcZNJgsrRU+iwE68i+InTag==","signatures":[{"sig":"MEUCIDlGu8GLzlDj+0qKY76PMn4Bb1dUasmo1m2jWIXhVjnzAiEA50Jvvdj0QjSZnIyRLtyqyvioGy12e9sblbtfzWohc6w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","scripts":{"test":"scripts/test","drone":"scripts/drone"},"_npmUser":{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"},"repository":{"url":"https://bitbucket.org/fusioncharts/larry.git","type":"git"},"_npmVersion":"1.3.14","description":"A packaging tool for bundling project releases","directories":{},"dependencies":{"JSV":"~4.0.2","wrench":"~1.5.7","archiver":"~0.6.1","commander":"~2.1.0","underscore":"~1.5.2"},"jshintConfig":{"asi":false,"es3":false,"sub":false,"boss":true,"evil":false,"expr":true,"node":true,"curly":true,"debug":false,"devel":false,"forin":false,"immed":true,"noarg":true,"nonew":false,"proto":false,"undef":true,"eqeqeq":false,"eqnull":true,"freeze":true,"indent":4,"newcap":true,"shadow":false,"unused":true,"bitwise":false,"browser":false,"globals":{},"latedef":true,"noempty":false,"iterator":false,"laxbreak":false,"laxcomma":false,"loopfunc":false,"multistr":false,"notypeof":false,"plusplus":false,"quotmark":"double","supernew":false,"trailing":false,"camelcase":true,"funcscope":false,"lastsemic":false,"scripturl":false,"smarttabs":false,"globalstrict":false},"devDependencies":{"jshint":"~2.4.1","jasmine-node":"~1.12.0"}},"0.0.4":{"name":"larry","version":"0.0.4","_id":"larry@0.0.4","maintainers":[{"name":"shamasis","email":"mail@shamasis.net"},{"name":"fusioncharts","email":"mail@labs.fusioncharts.com"},{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"}],"bin":{"larry":"bin/larry"},"dist":{"shasum":"2377fa9f9e6652892aeb3056e65fae60d5feaf00","tarball":"https://registry.npmjs.org/larry/-/larry-0.0.4.tgz","integrity":"sha512-nBYuN3Fjz0QhK6E1Tj1OdcuqUnvMHztPrKKJuYq6toIs1i0Z24hnAPrunsUeZh7Ug7wpZP2WJsMlhVTYBCPubg==","signatures":[{"sig":"MEUCIQDxj1/x07WTLiSCcoaGuoj1rXCcx4pzOgKgcOGE3+TTDAIgc+v7hWezX2a5yUczJPB3w3M8/coINcvYiWaF8DK/v5A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","scripts":{"test":"scripts/test","drone":"scripts/drone"},"_npmUser":{"name":"kaustavdm","email":"kaustav.dasmodak@yahoo.co.in"},"repository":{"url":"https://bitbucket.org/fusioncharts/larry.git","type":"git"},"_npmVersion":"1.3.14","description":"A packaging tool for bundling project releases","directories":{},"dependencies":{"JSV":"~4.0.2","ascli":"0.3.0","wrench":"~1.5.7","archiver":"~0.6.1","commander":"~2.1.0","underscore":"~1.5.2"},"jshintConfig":{"asi":false,"es3":false,"sub":false,"boss":true,"evil":false,"expr":true,"node":true,"curly":true,"debug":false,"devel":false,"forin":false,"immed":true,"noarg":true,"nonew":false,"proto":false,"undef":true,"eqeqeq":false,"eqnull":true,"freeze":true,"indent":4,"newcap":true,"shadow":false,"unused":true,"bitwise":false,"browser":false,"globals":{},"latedef":true,"noempty":false,"iterator":false,"laxbreak":false,"laxcomma":false,"loopfunc":false,"multistr":false,"notypeof":false,"plusplus":false,"quotmark":"double","supernew":false,"trailing":false,"camelcase":true,"funcscope":false,"lastsemic":false,"scripturl":false,"smarttabs":false,"globalstrict":false},"devDependencies":{"jshint":"~2.4.1","jasmine-node":"~1.12.0"}}},"time":{"created":"2014-02-11T16:07:30.026Z","modified":"2024-06-19T09:47:33.673Z","0.0.1":"2014-02-11T16:07:35.885Z","0.0.2":"2014-02-26T12:38:40.553Z","0.0.3-beta":"2014-05-10T05:04:10.594Z","0.0.4":"2014-07-04T11:37:46.205Z"},"maintainers":[{"email":"hmeherranjan@gmail.com","name":"meherhowji"},{"email":"kaustav.dasmodak@yahoo.co.in","name":"kaustavdm"},{"email":"mail@shamasis.net","name":"shamasis"}],"repository":{"url":"https://bitbucket.org/fusioncharts/larry.git","type":"git"},"readme":"# Larry #\n\n[![Build Status][drone-badge]](https://drone.io/bitbucket.org/fusioncharts/larry/latest)\n\nLarry is a generic packaging tool for applications that need to bundle their source code in packages, ready to be shipped.\n\n## Usage ##\n\nUsage: `larry [options]`\n\n### Options ###\n\nParameter             | Description\n---------------------:|:-----------\n`-h, --help`          | Output usage information\n`-V, --version`       | Output the version number\n`-c, --config [path]` | Path to JSON configuration file. Default './larry.json' in the current directory.\n`-q, --quiet          | Let not Larry chatter while he does his job.\n\n## Configuration ##\n\nConfiguration of Larry has three main parts - options, components and packages. These configurations need to be put in a JSON file, which is passed to the `larry` executible with the `--config` option. A sample configuration file can be seen at [`tests/fixtures/config/larry.json`](tests/fixtures/config/larry.json).\n\n### Options ###\n\nThese are general options for Larry, the `options` object can contain:\n\nKey              | Description\n----------------:|:-------------------------------\n`input`          | Base input directory (required).\n`output`         | Base output directory (required).\n`archive`        | Whether to turn on archiving for all packages. Default `true`.\n\nA sample `options` object will look like:\n\n```json\n{\n    \"options\": {\n        \"input\"   : \"./src/artefacts\",\n        \"output\"  : \"./out\",\n        \"archive\" : true\n    }\n}\n```\n\n### Components ###\n\nA component definition contains all the component properties that would be needed while packaging. `components` in the configuration will be an array of objects where each item in the array will define a new component. A component can be used by multiple packages.\n\nEach item in the `components` array can contain:\n\nKey                   | Description\n---------------------:|:-----------------------------\n`name`                | Name of the component.\n`description`         | A description of the component.\n`include`             | An array of paths to be included, relative to `options.input`.\n`destination`         | An array of destination paths corresponding to items in `include`.\n`excludePattern`      | A regex string. Files matching this regex string will be excluded.\n`enabled`             | If `false`, disables the component. Default `true`.\n\nA sample `components` object will look like:\n\n```json\n{\n    \"components\": [\n        {\n            \"name\": \"component-1\",\n            \"include\": [\n                \"node_modules/\",\n                \"src\"\n                ],\n            \"destination\": [\n                \"bin/ok\",\n                \"files/src\"\n            ],\n            \"excludePattern\": \".*\\\\.json\"\n        },\n        {\n            \"name\": \"component-2\",\n            \"include\": [\n                \"node_modules/\",\n                \"src\"\n            ],\n            \"destination\": [\n                \"bin2/ok\",\n                \"files2/src\"\n            ]\n        }\n    ]\n}\n```\n\n### Packages ###\n\nA package definition contains a list of all components that will be part of the package. Similar to `components`, `packages` option will be an array of objects, where each item will define a new package.\n\nEach item in the `packages` array can contain:\n\nKey                 | Description\n-------------------:|:--------------------------------\n`name`              | Name of the package.\n`description`       | Description of the component.\n`components`        | An array of component names to include in this package.\n`archive`           | Whether to archive the package or not. Overrides `options.archive`.\n`archiveRoot`       | If `archive` is `true`, this is the name of the root folder within the archive.\n\nA sample `packages` object will look like:\n\n```json\n{\n    \"packages\": [\n        {\n            \"name\": \"p1\",\n            \"enabled\": true,\n            \"components\": [\n                \"component-1\"\n            ],\n            \"archiveRoot\": \"package1\",\n            \"archive\": true\n        },\n        {\n            \"name\": \"p2\",\n            \"enabled\": true,\n            \"components\": [\n                \"component-1\",\n                \"component-2\"\n            ],\n            \"archive\": false\n        }\n    ]\n}\n```\n\n## Roadmap ##\n\n - Add support for `includePattern` in components.\n - Add support to exclude files or folders by path in components.\n - Add preprocess and postprocess hook support for packages.\n - Add package verification support after they have been created.\n\n[drone-badge]: https://drone.io/github.com/fusioncharts/larry/status.png\n\n[![Analytics](https://ga-beacon.appspot.com/UA-45124206-2/larry/index)](https://github.com/igrigorik/ga-beacon)\n","readmeFilename":"README.md","users":{"bhargav3":true,"shamasis":true,"riteshpandey":true}}