{"_id":"wascally","_rev":"63-2074e744784942a41185611c7e15a453","name":"wascally","description":"Abstractions to simplify working with the wascally wabbitMQ","dist-tags":{"latest":"0.3.0"},"versions":{"0.0.11":{"name":"wascally","version":"0.0.11","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.0.11","dist":{"shasum":"c7109c76e9583d9ede9bcdf68d0d5f53178d4e61","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.0.11.tgz","integrity":"sha512-rgCsZpMB7Jt9AGLlzgCR5b2Jo1MJUg4Ub7hIEAYsqFM/+WQDG5pUEZXjJL1mM3zuO3dm6S5dDcv+EkxdQLsfuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIENjv5Z3IYR4glsSM1oq69K9iZ/mLWSIegf0jbAv9VZSAiAI+ZJ5cS0QmZ6FVNPOeGvPYK0o/zFpzUxsR/2Yp25SjQ=="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.0":{"name":"wascally","version":"0.1.0","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.0","dist":{"shasum":"6af9e307e05aad31f758e8c7e9c52d906f748bdd","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.0.tgz","integrity":"sha512-6xs+PDXTJu7eemqfpFtKOqRszQlag0tNj5Wel+qcqigBVdZJc//p8jVRnk03kFqnl9XKGFHUqPQMcRllXEAmOw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQpFeYX5FAFJ7a6Gb6gjJ9edM9FqsP+iAKb1TOOXeiJgIhAMkEXuYVcfDUmnnCoQSAsSwztL0ux4vjj9YxLN84HYtv"}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.1":{"name":"wascally","version":"0.1.1","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.1","dist":{"shasum":"5009b3223d6b0535ca77bae9bf9312b7c8ae0cad","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.1.tgz","integrity":"sha512-el4NKvO0AoltSmj7CupMXa0B2nmoK7VzWFftoib2S9lQXVCvZ0/zWSbGnPPZ59WXsTU9sUb+5LTa8ytgdrgoSw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJ/yftpiTWM6ZBN+5Bx/aIkBFydFxgouMIzQat9ZUrFwIhAKnLJTJwBMULGbOhBwDVzjBCYsT2KnCUB67vkYnl0dC9"}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.2":{"name":"wascally","version":"0.1.2","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.2","dist":{"shasum":"5677957927696957be13ab30dbdc546fdf5845e8","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.2.tgz","integrity":"sha512-JaKjH6fS8JmON3wzg5acn7G9zHM42rwt7o18Kl/QsxDfcB6wfK6X165WXFHj6WH3BgNx/PFmhgeUl+D6EsZtiw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCS7d5VqiilMR1qEZ0gqjzb4Skx70EdWwtVtvN6URK58wIhANl1i2WE9RvnIsL28IqZujE5xzk/e9MJqEbZ4dnVlG3w"}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.3":{"name":"wascally","version":"0.1.3","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.3","dist":{"shasum":"c10dc6bb37912b5ebf7c6951cb1847b0f3c27e46","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.3.tgz","integrity":"sha512-ndubi7b5e5RsE4YJGbLKgPJe6pvWudn2QGWJ6VAIA31DszgwV+mvjlh5qzRB3lVPfm5VimPKPKv3XNVVv9MPLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFVo6tr8nNSyR3syIXJzOxzSulm3jWXUzAePwd9RlYAgAiBH4qW6GWrJA1kfD9fnLY9vUvnX07aIAQ0Tq2DIER+ZCQ=="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.4":{"name":"wascally","version":"0.1.4","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.4","dist":{"shasum":"9fd630cc2a23421649df66232b89fb0f43e4f3f8","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.4.tgz","integrity":"sha512-bRIlcK/KRBLOY8p4q1vyDtgJXuHCVdsYOkd4I+hh8O4JfdN0L80VVaEqDAqv9PEDdTUK8t160TU8bTpgthPNoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICAkGYEslbRe7jj3LBaJj0Dvl5pkQOsLsnho7tZMzSRLAiADfRP79V12MMR7avMawyGwAJ+4mURsI11y+GYEPWrfKA=="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.5":{"name":"wascally","version":"0.1.5","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.5","dist":{"shasum":"ada8d4a2a5c024995c2d07df4d7eec3d9a0c88cf","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.5.tgz","integrity":"sha512-fwoj/z/iR0UeFSr20E+biRtxcHzFpscMHiBb/CQ0oNzZz0nif4exZcSBaBrJAx7Re2M33XSBMlK8PkiD1SUr0w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCszzq8p78/SfZQ6vj+elMT6xs7EI3Id9JVbjZ9nH4DMAIhAJ9C7vYtXUVjEPTlASPj5eQdIVs6R5Z8BBu3r+2yU5d2"}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.6":{"name":"wascally","version":"0.1.6","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.6","dist":{"shasum":"51fe162e6ce6d9b1ec03b17c59a4c382b88dfaba","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.6.tgz","integrity":"sha512-J7aJsuZjjiElfqO0bTjPeAmkXpbf99cND6ZWeqTvBxFpWQ84UpJsSBE8SThGqVFGj3UFf1o1ogc8Ehy6R3jiJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIElpWmkF0dVhJ/D6J5FvNURLp8oKvPZzU3yQRYWAvwanAiA3Z7h7x6TP02LZwIw7kPByB8UPgQryT9fAUrcLH3AFtw=="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.7":{"name":"wascally","version":"0.1.7","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.7","dist":{"shasum":"d8e5725c503ce0e4685a26257892c72b8eeb7bcf","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.7.tgz","integrity":"sha512-owl5C5VWJETtRs73AzY1TKQZDuq40Xuns0x4a1qAqoypVWiJy/kRNCMaFU+eree/Sf9RWz2RtUIPxG8MU5+9cw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7EhhvwEE6Ih+5vWLaZaFqmvGXBbwLWDRGHdbH38o+jwIgMnYm+jJVpN/eAijyildJfwdYHiWrmUNTMFiHxL8GEwE="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.8":{"name":"wascally","version":"0.1.8","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.8","dist":{"shasum":"5ae65713d4915bce6d1236c0205a9a7f6daaeadf","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.8.tgz","integrity":"sha512-2k2tl4d3AHJQ2Z2L2Za8c0TxlC9Hm5CEWAyskE1KuoMU092gukrEH8l2ZjOD8CtvxZ8T1Z5VKwlApsi5cA994Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtlaIqWn8zZ+03sv03kZ+7dQT6CWnL1rgxbttNPmdNQwIgLWJWaVhCy3hW58Xyt5lmCBwAynKgjBD/nZdyRVxElIM="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.1.9":{"name":"wascally","version":"0.1.9","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"lodash":"~2.4.1","amqplib":"~0.1.3","when":"~3.0.0","postal":"~0.9.0-rc1","monologue.js":"~0.1.4","bunyan":"~0.22.1"},"_id":"wascally@0.1.9","dist":{"shasum":"3df0c7f0fce628f4013c4284560219370d65f4a6","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.1.9.tgz","integrity":"sha512-RQDoHPXbhW4N9B31lY1i4j/pfAYWBPI8HhG3+wE8rwS5jzL1zbJ5+lAh7YFh/nZ8oJjqiO8wvHdvlMfvpabPKA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB0V1ci5fY0iv0yWAc1rVGnd6Uhu9YVN1qeg+3eeFlFtAiEAl64SmRuWzIjm6cKrupcsaZFruvgy9r4WNiwvAi6JZno="}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.2.0-1":{"name":"wascally","version":"0.2.0-1","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","bunyan":"~0.22.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.9.0-rc1","when":"~3.0.0"},"_id":"wascally@0.2.0-1","dist":{"shasum":"bf5068cb80c854cf912bb593e18fb58f437a2267","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-1.tgz","integrity":"sha512-70IvEavcDpv0v82r+TskvjVMFIn1+xwAhLRTgs40Hxko4a5BAY9RnSwC0dakBiL2sz5gcN44ihSweCD4OqiuFQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0lsWjcglxMsHHQSZ3En/GJFyNqgxtn1wMnvJWCSwlwwIhALIfDhmVKkLkcj55J1zXYOFLBJUoubkar9DgJ5GMjjQf"}]},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}]},"0.2.0-2":{"name":"wascally","version":"0.2.0-2","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.9.0-rc1","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"392e0f03e529cc1b7c446680ea4f2d6bebc56999","_id":"wascally@0.2.0-2","_shasum":"001f5b866d7b070250661e0e58812f4f4676c74f","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"001f5b866d7b070250661e0e58812f4f4676c74f","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-2.tgz","integrity":"sha512-csuvhyc3xNkKW41qxxFTHSro9+00dFWfLcUypUxMzIoz8ENKZlq8h+F00LIglmv4SEpeZXdmDrnPFMX9OcA7EA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDP5EBSCjA654zzpKQFbSr/zEPslYFFPMAVX7ZDqeGIXAIhANnD4neyP4UuvDWe+DhZnYVDvqAIwQ03MWgrrycHmu/p"}]}},"0.2.0-3":{"name":"wascally","version":"0.2.0-3","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.9.0-rc1","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"ad794b54c14ea9a190ec0906385b4566bfebbe62","_id":"wascally@0.2.0-3","_shasum":"bfa26ec64c9bbfed8f1abfb33d7ab2942459cde2","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"bfa26ec64c9bbfed8f1abfb33d7ab2942459cde2","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-3.tgz","integrity":"sha512-1zB84qtwHRMpPx6n2x33VPprsokQoUUX68XfoncALil3TjGUdfjiZIFvsvpuSTc2ON3uWNUB/nMk/PWBzCUOoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE7kP5Tg93ES0Z7cpMMJtPKcoF7/pJZBgBxRvstY+bOlAiEAyvASIASjH94hfjgHToGJqj6NPbeuZfTE8QWXKXXMCEI="}]}},"0.2.0-4":{"name":"wascally","version":"0.2.0-4","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.9.0-rc1","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"534979c1e2845042f6f30b28a9c8027f1357b629","_id":"wascally@0.2.0-4","_shasum":"feea446476d40328f249a593054f00c135e58007","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"feea446476d40328f249a593054f00c135e58007","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-4.tgz","integrity":"sha512-6wXg41JOikouCZtqB5xHSHCspn+FvrLXfWMtggXGOxZO7jIdijMXM/VcZ7Tp9MF831GR6ZZs2FmKHlPDZuqJmg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAtaA96YCX3AcaRJN7+2kNVIYRKXT+4MGS4ByADR64bQAiBRo0RHErsvc+7Lki4Lk1sCJH2BXqdt8HnDVih4iw1tyQ=="}]}},"0.2.0-5":{"name":"wascally","version":"0.2.0-5","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.9.0-rc1","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"2c5b147c8a27f755b27aadd430521535e569cc6c","_id":"wascally@0.2.0-5","_shasum":"6edfe7f94024afde4bf8cb13e23848a58fcb1af1","_from":".","_npmVersion":"1.4.26","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"6edfe7f94024afde4bf8cb13e23848a58fcb1af1","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-5.tgz","integrity":"sha512-Likm3JYasvciS3ct1BMbTdbya6sodkEDPBERQ1ymcZbirBZNZvQnZyVpMPmtpUbCs8c5WpC9sb6HrKsdbw1L9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFXC03mfs3KyMPCMDkkRiF0EliD74tqVeH4YufcpHO+mAiAR61CHB78Uu6qcNY++FyhEp6IjtuZkl/ZeoHcvdz+0+g=="}]}},"0.2.0-6":{"name":"wascally","version":"0.2.0-6","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.11.0","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"2c5b147c8a27f755b27aadd430521535e569cc6c","_id":"wascally@0.2.0-6","_shasum":"b996f19a5ddca5b1d72db83c5db6c742d8d96e31","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"b996f19a5ddca5b1d72db83c5db6c742d8d96e31","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-6.tgz","integrity":"sha512-H+JRl0J6uPPeIrgK8vSz8lhEJwXCjm8l5v+HWwaFXbmEWa/v1YVJ7bdEjs7jX3UVualXuHiWYNxGfZWoibffcA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEI5CXxZhsK3REjoFm0+4pZBgcjG0uv0Z178HXZrBXuwAiEAjH2syyA091EszHwqb4PEmf71MWg/YzOPvSbhWl1a2So="}]}},"0.2.0-7":{"name":"wascally","version":"0.2.0-7","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.11.0","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"fcc6a69eced87a94798e5c8d6ca2df63bebfa93f","_id":"wascally@0.2.0-7","_shasum":"94a3d79f1f36bd36efa2a05efd2311af7e5c8524","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"94a3d79f1f36bd36efa2a05efd2311af7e5c8524","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-7.tgz","integrity":"sha512-kLaWUjILwtZQRSc1mLmiW8EmoOTtWxKAPrkmwhcTnuamGOODOBmWTlgfgoO/UFzKKDslBBiYYc4pOU/4YOwxoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICq1M+1YtD1zR9cfGdbDbSblL6TqPwxOB88LK0gN4L5aAiBMPR3CM6/dmXAasXI+FtyY6hQJrYBerfB9KvBaN23irg=="}]}},"0.2.0-8":{"name":"wascally","version":"0.2.0-8","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Derick Bailey","url":"http://derickbailey.com/"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.5.6","should":"~3.1.3","gulp-mocha":"~0.4.1","processhost":"~0.1.6"},"dependencies":{"amqplib":"~0.2.0","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"~0.11.0","when":"~3.0.0","gulp-mocha":"~0.4.1","gulp":"~3.8.1"},"gitHead":"f1a1199efb5e6b3e03e19cc35c7bf97228eb3328","_id":"wascally@0.2.0-8","_shasum":"335964458f7047ebc941dbc3ed1d47a1b96cf27b","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"335964458f7047ebc941dbc3ed1d47a1b96cf27b","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0-8.tgz","integrity":"sha512-iCYeczi6gPb9BP09Kf/dEmAMHo6zgy6kjbJUmUpjgLUI+Ib6ioq0i/BEa+ovXd1GRVwx9mDkRtKkVfWhHyI6cg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC4MMBm025blWQdDP/uoXJjJ47xADwIrMUPuOCzEVCICAiEApVTpPaC9ufgmjnlKqx/nJCwkG5St0qvhgBosAQH5CE0="}]}},"0.2.0":{"name":"wascally","version":"0.2.0","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Derick Bailey","url":"http://derickbailey.com/"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","gulp-istanbul":"^0.5.0","gulp-mocha":"~0.4.1","istanbul":"^0.3.5","open":"0.0.5","processhost":"~0.1.6","should":"~3.1.3","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.0","when":"~3.0.0","whistlepunk":"0.0.1"},"gitHead":"97e587e8d629ccd932478d01dec155936e7d10f4","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.0","_shasum":"e39b49aa151fec174cd12d1b271de47a7f330098","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.35","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"e39b49aa151fec174cd12d1b271de47a7f330098","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.0.tgz","integrity":"sha512-GSJuJ0CbgUMw6BH8eIxl7zH3a5uEbZ6fxRyXQrjOviKueUbWDmnxcfmI8idFnaBSj+pTKacGxOUgbcFNWBLaAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICYPGMROSLtVMac9DECH63Ub8KCE1jV3fjC4FPKZCfbwAiEA6pZkfQUhiWBll2HdpRVi8sEnK3Rx6sokGZDyFiugMTA="}]}},"0.2.1":{"name":"wascally","version":"0.2.1","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Derick Bailey","url":"http://derickbailey.com/"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","biggulp":"0.*.*","should":"~3.1.3","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"a0d93426d4460897c9d1a8e8f05e139956c9beaa","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.1","_shasum":"fa68e6482978eca96b3836ff1433170f6e3f01cb","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.35","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"fa68e6482978eca96b3836ff1433170f6e3f01cb","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.1.tgz","integrity":"sha512-M2WV1X1iHl2tBUiXX3gbH26M/zKdr5za2MOx/bJ1a2h2TmIoB3QsYK9L0JkQ4rds+2BWTTlGgxry+ftQtceq7g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/j/390EGZOV2JqmESdJzlIknvwV38KTHOiezihnjAiQIgR25dSyeElqxZ1JGkHs2G9Qkrhvho5dSe0M+YMV/qoBc="}]}},"0.2.2":{"name":"wascally","version":"0.2.2","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp test"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","biggulp":"0.*.*","should":"~3.1.3","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"0c81824787b1ab3c13a62f16f243876d5ac9a72b","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.2","_shasum":"5c73de2c76dfafe8d38a38ce8cefdd5d95de4125","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.35","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"5c73de2c76dfafe8d38a38ce8cefdd5d95de4125","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.2.tgz","integrity":"sha512-N211FRelEL1w8m74qDlbgvMBnv/fgNabl+lMPRJC0ISR1P8DcLj3bizD771LD1pHEyyC7W57ErlbfNqNEWPzAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB6WODkRYHODEqrg32M5OHK/iR2oRUSjMqXAs8woSiakAiB+r8VD5jcD7X3fW5OI6Jds/YBNpsUl3v9RMIJ+4MGzNw=="}]}},"0.2.3":{"name":"wascally","version":"0.2.3","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp coverage"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"a285b5efcbe3ffed3d4ebcdef069bd31b320ef3b","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.3","_shasum":"2eae4dcec5532ea671d0c346d1206c30de3d7db9","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.35","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"2eae4dcec5532ea671d0c346d1206c30de3d7db9","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.3.tgz","integrity":"sha512-ki+Eb76D9at6nUPp8yI+L4lMX19uXEy3NpmnMAJK6UnBSR1eLNXmNdUOqQBxE7TXjUfxP2zBQUGaF4eJIGefOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9AamKVah3L1omTqPqLt0yuHKBRkAvt1YK/oKvdaztNAIhAImbuCkqCMZosgZLlYc7iBE1NQs8aiuRdmEfMol8uw7m"}]}},"0.2.4":{"name":"wascally","version":"0.2.4","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp coverage"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"6984bdfc47028874aaa650e5e8155703a213e5e1","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.4","_shasum":"f0d1d52cad182dddc0a78d98a698d4022f8956de","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"f0d1d52cad182dddc0a78d98a698d4022f8956de","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.4.tgz","integrity":"sha512-T+jxOb05a+Dqk2zed2x4688Meac9zULh6g134TAvXIrepv7IaL4fYKiP82ixW6a8vf5N1kczUaEd06SDgJ8B9g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIApE0oKLJqcQNijqDrOxfpASwtRVyYQzcmy8W8uJVkpKAiBQxcKJ1EOCXcTJMqdhBQuBuqdUh4WUzUaHD5RtHTLQxQ=="}]}},"0.2.5":{"name":"wascally","version":"0.2.5","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"https://github.com/leankit-labs/wascally"},"scripts":{"test":"gulp coverage"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT License - http://opensource.org/licenses/MIT","devDependencies":{"gulp":"~3.8.1","biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","sinon":"^1.12.2"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"^0.3.6","monologue.js":"~0.1.4","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"6a271b57e2e25b3ff48d61429b7eb6c9e2a6616d","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally","_id":"wascally@0.2.5","_shasum":"a96427ef3970bb83569abcef7580a89a612a11f0","_from":".","_npmVersion":"2.7.5","_nodeVersion":"0.12.0","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"}],"dist":{"shasum":"a96427ef3970bb83569abcef7580a89a612a11f0","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.5.tgz","integrity":"sha512-fK1N/PHU1bhO/yfynQUFgAqsSIMMKFiAU+L4lOy9AW8YSTM0K11S36oB8OiAhwzin1+OU6iAvOqSuiSQfYcNvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2gKveu6gQxdopA0ZrMf/rmskDcSZbAl5v/7DLRO9/owIgMIHZqeUG/w/incu30PhmpjalMppSImEqGc9dGOUB+p8="}]}},"0.2.6":{"name":"wascally","version":"0.2.6","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"scripts":{"test":"gulp test-and-exit"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT","devDependencies":{"biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","gulp":"~3.8.1","sinon":"^1.12.2","sinon-as-promised":"^3.0.0"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"~1.0.1","monologue.js":"~0.3.3","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"76e55061ec7b6b33578ebbf26e1d3293ceee86eb","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally#readme","_id":"wascally@0.2.6","_shasum":"7a7f34f65f1ac32a6d85d0a826658b0d15b026af","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"ianevatt","email":"ian.evatt@leankit.com"},"dist":{"shasum":"7a7f34f65f1ac32a6d85d0a826658b0d15b026af","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.6.tgz","integrity":"sha512-mwwfJ2E/z0TYYsfPk1ngxEIk0SIDdeDonkmmnq1+d9hV8IUTXP0TNbvz4ntm7ThojvDmgFfkjj8cbUbziNQqwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR6D7cFe/v3YD/3WknRs0yjT30jdOPlm9MFJvW13W1xQIgBiYvrtbaFHvhumyYXIfLVwP/f4z9qCL9NUA1n5m5TdE="}]},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}]},"0.2.7":{"name":"wascally","version":"0.2.7","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"scripts":{"test":"gulp test-and-exit"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Jim Cowart","url":"http://github.com/ifandelse"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT","devDependencies":{"biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","gulp":"~3.8.1","sinon":"^1.12.2","sinon-as-promised":"^3.0.0"},"dependencies":{"amqplib":"~0.3.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"~1.0.1","monologue.js":"~0.3.3","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"d6d763456248b55765b2d29fa06e0b80483a4a83","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally#readme","_id":"wascally@0.2.7","_shasum":"c7cee3770eb5caf64a60354a6f107c704e04346f","_from":".","_npmVersion":"2.10.1","_nodeVersion":"0.12.4","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"dist":{"shasum":"c7cee3770eb5caf64a60354a6f107c704e04346f","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.7.tgz","integrity":"sha512-mMlNJVeSBVNib3YLEhdR72yUXV4xvvlDmuFr5zbGE9eSQF4L4T1zQXwZWcK0IuJ2402X4Rh5Sn3PuA41Jxxhpw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHIAWSh9n2otF4gR3JWOcGH2mw7ZOgKTpU6Io57uktbgIhAIC939tVhINAjyPW4d95+jzKIgNldAB4BdE4yAwKpptl"}]},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}]},"0.2.9":{"name":"wascally","version":"0.2.9","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"scripts":{"test":"gulp test-and-exit"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"Joseph Frazier","url":"http://github.com/josephfrazier"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Jim Cowart","url":"http://github.com/ifandelse"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"}],"license":"MIT","devDependencies":{"biggulp":"0.*.*","chai":"^2.0.0","chai-as-promised":"^4.2.0","gulp":"~3.8.1","sinon":"^1.12.2","sinon-as-promised":"^3.0.0"},"dependencies":{"amqplib":"~0.4.0","debug":"^2.1.1","lodash":"~2.4.1","machina":"~1.0.1","monologue.js":"~0.3.3","node-uuid":"^1.4.1","postal":"1.0.*","when":"~3.0.0","whistlepunk":"0.2.0"},"gitHead":"1579e9f27c848552a9e3e38cb0d566d65d15c8f0","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally#readme","_id":"wascally@0.2.9","_shasum":"4e85e244fdfc5be5a50e87604b7bf5d6e2191655","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"dist":{"shasum":"4e85e244fdfc5be5a50e87604b7bf5d6e2191655","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.9.tgz","integrity":"sha512-KBq77rSCK2DuN5FxBnRV4BXHwuIIDsSYc+jfKh0NpBwAN0Opb8oGOm+tZ3ObpjJQhUPq6XnU6owVG586I8o4Bw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBruleg0i14crqzzl4HQFWAfUiYJDH6bjcNmmCBoEsWmAiEAr5ljQyNA99+YOthZpI/M3ygwP5CdSsj6igJ00HijXKw="}]},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}]},"0.2.10":{"name":"wascally","version":"0.2.10","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"scripts":{"lint":"jshint ./","test":"gulp test-and-exit"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"Joseph Frazier","url":"https://github.com/josephfrazier"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Jim Cowart","url":"http://github.com/ifandelse"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"},{"name":"Michael Tuttle","url":"https://github.com/openam"}],"license":"MIT","devDependencies":{"biggulp":"^0.2.2","chai":"^3.4.1","chai-as-promised":"^5.1.0","gulp":"^3.9.0","sinon":"^1.17.2","sinon-as-promised":"^4.0.0"},"dependencies":{"amqplib":"~0.4.0","debug":"^2.2.0","lodash":"^3.10.1","machina":"^1.1.2","monologue.js":"^0.3.4","node-uuid":"^1.4.7","postal":"^1.0.7","when":"^3.7.5","whistlepunk":"^0.3.2"},"gitHead":"edc752b6acc1f3fb2ab151277300300d512de875","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally#readme","_id":"wascally@0.2.10","_shasum":"34e30de698042594b5ebadfa398b2f9e0a4a04d9","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"dist":{"shasum":"34e30de698042594b5ebadfa398b2f9e0a4a04d9","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.2.10.tgz","integrity":"sha512-f2MzhFIcPwtKuvahs8ZLkT17AJFkuq2nucOzwYeqX9v7Gm+s71Yqe0HQmgENPJgxjgpvDJOmtGgI6KfkIQQ6xQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAXe2dFQLiMlq193wXOtu10/LzcQ+Aq635CgFnj/SAY2AiBJsRnZX0pAzwhtPDtE5FqKKFeb9K4fdnW/Wh8rtgNx0Q=="}]},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}]},"0.3.0":{"name":"wascally","version":"0.3.0","description":"Abstractions to simplify working with the wascally wabbitMQ","main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"scripts":{"lint":"jshint ./","test":"gulp test-and-exit"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"author":{"name":"LeanKit"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"Joseph Frazier","url":"https://github.com/josephfrazier"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Jim Cowart","url":"http://github.com/ifandelse"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"},{"name":"Michael Tuttle","url":"https://github.com/openam"}],"license":"MIT","devDependencies":{"biggulp":"^0.2.2","chai":"^3.4.1","chai-as-promised":"^5.1.0","gulp":"^3.9.0","sinon":"^1.17.2","sinon-as-promised":"^4.0.0"},"dependencies":{"amqplib":"~0.4.0","debug":"^2.2.0","lodash":"^3.10.1","machina":"^1.1.2","monologue.js":"^0.3.4","node-uuid":"^1.4.7","postal":"^1.0.7","when":"^3.7.5","whistlepunk":"^0.3.2"},"gitHead":"ff8b4dbb264f46722f0ba4215184e5971018a257","bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"homepage":"https://github.com/leankit-labs/wascally#readme","_id":"wascally@0.3.0","_shasum":"daeab1ed0436999fcfe047e6907a961bc1f6014b","_from":".","_npmVersion":"3.8.3","_nodeVersion":"5.10.0","_npmUser":{"name":"arobson","email":"asrobson@gmail.com"},"dist":{"shasum":"daeab1ed0436999fcfe047e6907a961bc1f6014b","tarball":"https://registry.npmjs.org/wascally/-/wascally-0.3.0.tgz","integrity":"sha512-IlA6F9fQ/dRYv1dqCydSOlrs3vwjSf1Aaf+mkwS1WUJe1wnCh+YLXGNtWjTassuvd54WuwKRauN3l54zeyD00A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE1Prz5+krYfqWDmXp2VQ4VS7YJEzDtiQJfpsAIzshZFAiAJXfzVcewRca0G7sWlP65k8vPO1kfw6N+IRz0grngyjQ=="}]},"maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/wascally-0.3.0.tgz_1465070208264_0.8135506920516491"}}},"readme":"# Wascally\n\n### No longer under activate development. Please see [rabbot](https://github.com/arobson/rabbot) for a similar API with more features and better failure semantics.\n\n[![Version npm](https://img.shields.io/npm/v/wascally.svg?style=flat)](https://www.npmjs.com/package/wascally)\n[![npm Downloads](https://img.shields.io/npm/dm/wascally.svg?style=flat)](https://www.npmjs.com/package/wascally)\n[![Dependencies](https://img.shields.io/david/LeanKit-Labs/wascally.svg?style=flat)](https://david-dm.org/LeanKit-Labs/wascally)\n\nThis is a very opinionated abstraction over amqplib to help simplify certain common tasks and (hopefully) reduce the effort required to use RabbitMQ in your Node services.\n\n### Features:\n\n * Gracefully handle re-connections\n * Automatically re-define all topology on re-connection\n * Automatically re-send any unconfirmed messages on re-connection\n * Support the majority of RabbitMQ's extensions\n * Handle batching of acknowledgements and rejections\n * Topology & configuration via the JSON configuration method (thanks to @JohnDMathis!)\n\n### Assumptions & Defaults:\n\n * Fault-tolerance/resilience over throughput\n * Default to publish confirmation\n * Default to ack mode on consumers\n * Heterogenous services that include statically typed languages\n * JSON as the only serialization provider\n\n### Demos\n\n * [pubsub](https://github.com/LeanKit-Labs/wascally/blob/master/demo/pubsub/README.md)\n\n# API Reference\nThis library implements promises for many of the calls via when.js.\n\n## Connectivity Events\nWascally emits both generic and specific connectivity events that you can bind to in order to handle various states:\n\n* Any Connection\n * `connected`\n * `closed`\n * `failed`\n* Specific Connection\n * `[connectionName].connected.opened`\n * `[connectionName].connected.closed`\n * `[connectionName].connected.failed`\n\nThe connection object is passed to the event handler for each event. Use the `name` property of the connection object to determine which connection the generic events fired for.\n\n> !IMPORTANT! - wascally handles connectivity for you, mucking about with the connection directly isn't supported (don't do it).\n\n\n## Sending & Receiving Messages\n\n### Publish\nThe publish call returns a promise that is only resolved once the broker has accepted responsibility for the message (see [Publisher Acknowledgments](https://www.rabbitmq.com/confirms.html) for more details). If a configured timeout is reached, or in the rare event that the broker rejects the message, the promise will be rejected. More commonly, the connection to the broker could be lost before the message is confirmed and you end up with a message in \"limbo\". Wascally keeps a list of unconfirmed messages that have been published _in memory only_. Once a connection is re-established and the topology is in place, Wascally will prioritize re-sending these messages before sending anything else.\n\nIn the event of a disconnect, all publish promises that have not been resolved are rejected. __This behavior is a problematic over-simplification and subject to change in a future release.__\n\nPublish timeouts can be set per message, per exchange or per connection. The most specific value overrides any set at a higher level. There are no default timeouts set at any level. The timer is started as soon as publish is called and only cancelled once wascally is able to make the publish call on the actual exchange's channel. The timeout is cancelled once publish is called and will not result in a rejected promise due to time spent waiting on a confirmation.\n\n### publish( exchangeName, options, [connectionName] )\nThis syntax uses an options object rather than arguments, here's an example showing all of the available properties:\n\n```javascript\nrabbit.publish( 'exchange.name', {\n\t\troutingKey: 'hi',\n\t\ttype: 'company.project.messages.textMessage',\n\t\tcorrelationId: 'one',\n\t\tbody: { text: 'hello!' },\n\t\tmessageId: '100',\n\t\texpiresAfter: 1000 // TTL in ms, in this example 1 second\n\t\ttimestamp: // posix timestamp (long)\n\t\theaders: {\n\t\t\t'random': 'application specific value'\n\t\t},\n\t\ttimeout: // ms to wait before cancelling the publish and rejecting the promise\n\t},\n\tconnectionName: '' // another optional way to provide connection name if needed\n);\n```\n\n### publish( exchangeName, typeName, messageBody, [routingKey], [correlationId], [connectionName] )\nMessages bodies are simple objects. A type specifier is required for the message which will be used to set AMQP's properties.type. If no routing key is provided, the type specifier will be used. A routing key of '' will prevent the type specifier from being used.\n\n```javascript\n// the first 3 arguments are required\n// routing key is optional and defaults to the value of typeName\n// connectionName is only needed if you have multiple connections to different servers or vhosts\n\nrabbit.publish( 'log.entries', 'company.project.messages.logEntry', {\n\t\tdate: Date.now(),\n\t\tlevel: logLevel,\n\t\tmessage: message\n\t}, 'log.' + logLevel, someValueToCorrelateBy );\n```\n\n### request( exchangeName, options, [connectionName] )\nThis works just like a publish except that the promise returned provides the response (or responses) from the other side.\n\n```javascript\n// when multiple responses are provided, all but the last will be provided via the .progress callback.\n// the last/only reply will always be provided to the .then callback\nrabbit.request( 'request.exchange', {\n\t\t// see publish example to see options for the outgoing message\n\t} )\n\t.progress( function( reply ) {\n\t\t// if multiple replies are provided, all but the last will be sent via the progress callback\n\t} )\n\t.then( function( final ) {\n\t\t// the last message in a series OR the only reply will be sent to this callback\n\t} );\n```\n\n### handle( typeName, handler, [context] )\n\n> Notes:\n> * Handle calls should happen __before__ starting subscriptions.\n> * The message's routing key will be used if the type is missing or empty on incoming messages\n\nMessage handlers are registered to handle a message based on the typeName. Calling handle will return a reference to the handler that can later be removed. The message that is passed to the handler is the raw Rabbit payload. The body property contains the message body published. The message has `ack`, `nack` (requeue the message) and `reject` (don't requeue the message) methods control what Rabbit does with the message.\n\n#### Explicit Error Handling\nIn this example, any possible error is caught in an explicit try/catch:\n\n```javascript\nvar handler = rabbit.handle( 'company.project.messages.logEntry', function( message ) {\n\ttry {\n\t\t// do something meaningful?\n\t\tconsole.log( message.body );\n\t\tmessage.ack();\n\t} catch( err ) {\n\t\tmessage.nack();\n\t}\n} );\n\nhandler.remove();\n```\n\n#### Automatically Nack On Error\nThis example shows how to have wascally wrap all handlers with a try catch that:\n\n * nacks the message on error\n * console.log that an error has occurred in a handle\n\n```javascript\n// after this call, any new callbacks attached via handle will be wrapped in a try/catch\n// that nacks the message on an error\nrabbit.nackOnError();\n\nvar handler = rabbit.handle( 'company.project.messages.logEntry', function( message ) {\n\tconsole.log( message.body );\n\tmessage.ack();\n} );\n\nhandler.remove();\n\n// after this call, new callbacks attached via handle will *not* be wrapped in a try/catch\nrabbit.ignoreHandlerErrors();\n```\n\n#### Late-bound Error Handling\nProvide a strategy for handling errors to multiple handles or attach an error handler after the fact.\n\n```javascript\nvar handler = rabbit.handle( 'company.project.messages.logEntry', function( message ) {\n\tconsole.log( message.body );\n\tmessage.ack();\n} );\n\nhandler.catch( function( err, msg ) {\n\t// do something with the error & message\n\tmsg.nack();\n} );\n```\n\n#### !!! IMPORTANT !!! ####\nFailure to handle errors will result in silent failures and lost messages.\n\n### Unhandled Messages\nIn previous versions, if a subscription was started in ack mode (the default) without a handler to process the message, the message would get lost in limbo until the connection (or channel) was closed and then the messages would be returned to the queue. This is very confusing and undesirable behavior. To help protect against this, the new default behavior is that any message received that doesn't have any elligible handlers will get `nack`'d and sent back to the queue immediately.\n\nThis is _still_ problematic because it can create churn on the client and server as the message will be redelivered indefinitely.\n\nTo change this behavior, use one of the following calls:\n\n> Note: only one of these strategies can be activated at a time\n\n#### onUnhandled( handler )\n```javascript\nrabbit.onUnhandled( function( message ) {\n\t // handle the message here\n} );\n```\n\n#### nackUnhandled() - default\nSends all unhandled messages back to the queue.\n```javascript\nrabbit.nackUnhandled();\n```\n\n#### rejectUnhandled()\nRejects unhandled messages so that will will _not_ be requeued. **DO NOT** use this unless there are dead letter exchanges for all queues.\n```javascript\nrabbit.rejectUnhandled();\n```\n\n### startSubscription( queueName, [connectionName] )\n\n> Recommendation: set handlers for anticipated types up before starting subscriptions.\n\nStarts a consumer on the queue specified. `connectionName` is optional and only required if subscribing to a queue on a connection other than the default one.\n\n## Message Format\nThe following structure shows and briefly explains the format of the message that is passed to the handle callback:\n\n```javascript\n{\n\t// metadata specific to routing & delivery\n\tfields: {\n\t\tconsumerTag: \"\", // identifies the consumer to rabbit\n\t\tdeliveryTag: #, // identifies the message delivered for rabbit\n\t\tredelivered: true|false, // indicates if the message was previously nacked or returned to the queue\n\t\texchange: \"\" // name of exchange the message was published to,\n\t\troutingKey: \"\" // the routing key (if any) used when published\n\t},\n\tproperties:{\n\t\tcontentType: \"application/json\", // wascally's default\n\t\tcontentEncoding: \"utf8\", // wascally's default\n\t\theaders: {}, // any user provided headers\n\t\tcorrelationId: \"\", // the correlation id if provided\n\t\treplyTo: \"\", // the reply queue would go here\n\t\tmessageId: \"\", // message id if provided\n\t\ttype: \"\", // the type of the message published\n\t\tappId: \"\" // not used by wascally\n\t},\n\tcontent: { \"type\": \"Buffer\", \"data\": [ ... ] }, // raw buffer of message body\n\tbody: , // this could be an object, string, etc - whatever was published\n\ttype: \"\" // this also contains the type of the message published\n}\n```\n\n## Message API\nWascally defaults to (and assumes) queues are in ack mode. It batches ack and nack operations in order to improve total throughput. Ack/Nack calls do not take effect immediately.\n\n### message.ack()\nEnqueues the message for acknowledgement.\n\n### message.nack()\nEnqueues the message for rejection. This will re-enqueue the message.\n\n### message.reject()\nRejects the message without re-queueing it. Please use with caution and consider having a dead-letter-exchange assigned to the queue before using this feature.\n\n### message.reply( message, [more], [replyType] )\nAcknowledges the messages and sends the message back to the requestor. The `message` is only the body of the reply. Providing true to `more` will cause the message to get sent to the .progress callback of the request promise so that you can send multiple replies. The `replyType` argument sets the type of the reply message. (important when messaging with statically typed languages)\n\n### Queues in `noBatch` mode\nWascally now supports the ability to put queues into non-batching behavior. This causes ack, nack and reject calls to take place against the channel immediately. This feature is ideal when processing messages are long-running and consumer limits are in place. Be aware that this feature does have a significant impact on message throughput.\n\n## Reply Queues\nBy default, wascally creates a unique reply queue for each connection which is automatically subscribed to and deleted on connection close. This can be modified or turned off altogether.\n\nChanging the behavior is done by passing one of three values to the `replyQueue` property on the connection hash:\n\n> !!! IMPORTANT !!! wascally cannot prevent queue naming collisions across services instances or connections when using the first two options.\n\n### Custom Name\nOnly changes the name of the reply queue that wascally creates - `autoDelete` and `subscribe` will be set to `true`.\n\n```javascript\nrabbit.addConnection( {\n\t// ...\n\treplyQueue: 'myOwnQueue'\n} );\n```\n\n### Custom Behavior\nTo take full control of the queue name and behavior, provide a queue definition in place of the name.\n\n> wascally provides no defaults - it will only use the definition provided\n\n```javascript\nrabbit.addConnection( {\n\t// ...\n\treplyQueue: {\n\t\tname: 'myOwnQueue',\n\t\tsubscribe: 'true',\n\t\tdurable: true\n\t}\n} );\n```\n\n### No Automatic Reply Queue\n> Only pick this option if request/response isn't in use or when providing a custom overall strategy\n\n```javascript\nrabbit.addConnection( {\n\t// ...\n\treplyQueue: false\n} );\n```\n\n## Managing Connections\n\n### addConnection ( options )\n\nThe call returns a promise that can be used to determine when the connection to the server has been established.\n\nOptions is a hash that can contain the following:\n * name\t\tString\t\tthe name of this connection. Defaults to \"default\" when not supplied.\n * server\tString\t\tthe IP address or DNS name of the RabbitMQ server. Defaults to \"localhost\"\n * port\t\tString\t\tthe TCP/IP port on which RabbitMQ is listening. Defaults to 5672\n * vhost\tString\t\tthe named vhost to use in RabbitMQ. Defaults to the root vhost, '%2f' (\"/\")\n * protocol\tString\t\tthe connection protocol to use. Defaults to 'amqp://'\n * user\t\tString\t\tthe username used for authentication / authorization with this connection. Defaults to 'guest'\n * pass\t\tString\t\tthe password for the specified user. Defaults to 'guest'\n * timeout\tnumber\t\thow long to wait for a connection to be established. No default value\n * heartbeat\tnumber\thow often the client and server check to see if they can still reach each other, specified in seconds. Defaults to 30 (seconds)\n * replyQueue\tString\tthe name of the reply queue to use (see above)\n * publishTimeout\tnumber\tthe default timeout in milliseconds for a publish call\n\nNote that the \"default\" connection (by name) is used when any method is called\nwithout a connection name supplied.\n\n```javascript\nrabbit.addConnection( {\n\tuser: 'someUser',\n\tpass: 'sup3rs3cr3t',\n\tserver: 'my-rqm.server',\n\tport: 5672,\n\ttimeout: 2000,\n\tvhost: '%2f',\n\theartbeat: 10\n} );\n```\n\n## Managing Topology\n\n### addExchange( exchangeName, exchangeType, [options], [connectionName] )\nThe call returns a promise that can be used to determine when the exchange has been created on the server.\n\nValid exchangeTypes:\n * 'direct'\n * 'fanout'\n * 'topic'\n\nOptions is a hash that can contain the following:\n * autoDelete\t\ttrue|false\t\tdelete when consumer count goes to 0\n * durable \t\t\ttrue|false\t\tsurvive broker restarts\n * persistent \t\ttrue|false\t\ta.k.a. persistent delivery, messages saved to disk\n * alternate \t\t'alt.exchange'\tdefine an alternate exchange\n * publishTimeout\t2^32\t\t\ttimeout in milliseconds for publish calls to this exchange\n\n### addQueue( queueName, [options], [connectionName] )\nThe call returns a promise that can be used to determine when the queue has been created on the server.\n\nOptions is a hash that can contain the following:\n * autoDelete\t\ttrue|false\t\tdelete when consumer count goes to 0\n * durable \t\t\ttrue|false\t\tsurvive broker restarts\n * exclusive\t\ttrue|false\t\tlimits queue to the current connection only (danger)\n * subscribe\t\ttrue|false\t\tauto-start the subscription\n * limit \t\t\t2^16\t\t\tmax number of unacked messages allowed for consumer\n * noAck\t\t\ttrue|false \t\tthe server will remove messages from the queue as soon as they are delivered\n * noBatch\t\t\ttrue|false \t\tcauses ack, nack & reject to take place immediately\n * queueLimit\t\t2^32\t\t\tmax number of ready messages a queue can hold\n * messageTtl\t\t2^32\t\t\ttime in ms before a message expires on the queue\n * expires\t\t\t2^32\t\t\ttime in ms before a queue with 0 consumers expires\n * deadLetter \t\t'dlx.exchange'\tthe exchange to dead-letter messages to\n * maxPriority\t\t2^8\t\t\t\tthe highest priority this queue supports\n\n### bindExchange( sourceExchange, targetExchange, [routingKeys], [connectionName] )\nBinds the target exchange to the source exchange. Messages flow from source to target.\n\n### bindQueue( sourceExchange, targetQueue, [routingKeys], [connectionName] )\nBinds the target queue to the source exchange. Messages flow from source to target.\n\n## Configuration via JSON\n\n> Note: setting subscribe to true will result in subscriptions starting immediately upon queue creation.\n\nThis example shows most of the available options described above.\n```javascript\n\tvar settings = {\n\t\tconnection: {\n\t\t\tuser: 'guest',\n\t\t\tpass: 'guest',\n\t\t\tserver: '127.0.0.1',\n\t\t\t// server: '127.0.0.1, 194.66.82.11',\n\t\t\t// server: ['127.0.0.1', '194.66.82.11'],\n\t\t\tport: 5672,\n\t\t\ttimeout: 2000,\n\t\t\tvhost: '%2fmyhost'\n\t\t\t},\n\t\texchanges:[\n\t\t\t{ name: 'config-ex.1', type: 'fanout', publishTimeout: 1000 },\n\t\t\t{ name: 'config-ex.2', type: 'topic', alternate: 'alternate-ex.2', persistent: true },\n\t\t\t{ name: 'dead-letter-ex.2', type: 'fanout' }\n\t\t\t],\n\t\tqueues:[\n\t\t\t{ name:'config-q.1', limit: 100, queueLimit: 1000 },\n\t\t\t{ name:'config-q.2', subscribe: true, deadLetter: 'dead-letter-ex.2' }\n\t\t\t],\n\t\tbindings:[\n\t\t\t{ exchange: 'config-ex.1', target: 'config-q.1', keys: [ 'bob','fred' ] },\n\t\t\t{ exchange: 'config-ex.2', target: 'config-q.2', keys: 'test1' }\n\t\t]\n\t};\n```\n\nTo establish a connection with all settings in place and ready to go call configure:\n```javascript\n\tvar rabbit = require( 'wascally' );\n\n\trabbit.configure( settings ).done( function() {\n\t\t// ready to go!\n\t} );\n```\n\n## Closing Connections\nWascally will attempt to resolve all outstanding publishes and recieved messages (ack/nack/reject) before closing the channels and connection. If you would like to defer certain actions until after everything has been safely resolved, then use the promise returned from either close call.\n\n> !!! CAUTION !!! - using reset is dangerous. All topology associated with the connection will be removed meaning wasclly will not be able to re-establish it all should you decide to reconnect.\n\n### close( [connectionName], [reset] )\nCloses the connection, optionall resetting all previously defined topology for the connection. The `connectionName` uses `default` if one is not provided.\n\n### closeAll( [reset] )\nCloses __all__ connections, optionally resetting the topology for all of them.\n\n## AMQPS, SSL/TLS Support\nProviding the following configuration options setting the related environment varibles will cause wascally to attempt connecting via AMQPS. For more details about which settings perform what role, refer to the amqplib's page on [SSL](http://www.squaremobius.net/amqp.node/doc/ssl.html).\n\n```javascript\n\tconnection: { \t\t// sample connection hash\n\t\tcaPath: '', \t// comma delimited paths to CA files. RABBIT_CA\n\t\tcertPath: '', \t// path to cert file. RABBIT_CERT\n\t\tkeyPath: '',\t// path to key file. RABBIT_KEY\n\t\tpassphrase: '', // passphrase associated with cert/pfx. RABBIT_PASSPHRASE\n\t\tpfxPath: ''\t\t// path to pfx file. RABBIT_PFX\n\t}\n```\n\n## Channel Prefetch Limits\n\nWascally mostly hides the notion of a channel behind the scenes, but still allows you to specify channel options such as the channel prefetch limit. Rather than specifying\nthis on a channel object, however, it is specified as a `limit` on a queue defintion.\n\n```js\nqueues: [{\n  // ...\n\n  limit: 5\n}]\n\n// or\n\nrabbit.addQueue(\"some.q\", {\n  // ...\n\n  limit: 5\n});\n```\n\nThis queue configuration will set a prefetch limit of 5 on the channel that is used for consuming this queue.\n\n**Note:** The queue `limit` is not the same as the `queueLimit` option - the latter of which sets the maximum number of messages allowed in the queue.\n\n## Additional Learning Resources\n\n### Watch Me Code\nThanks to Derick Bailey's input, the API and documentation for wascally have improved a lot. You can learn from Derick's hands-on experience in his [Watch Me Code](https://sub.watchmecode.net/categories/rabbitmq/) series.\n\n### RabbitMQ In Action\nAlvaro Vidella and Jason Williams literally wrote the book on [RabbitMQ](http://www.manning.com/videla/).\n\n### Enterprise Integration Patterns\nGregor Hophe and Bobby Woolf's definitive work on messaging. The [site](http://www.enterpriseintegrationpatterns.com/) provides basic descriptions of the patterns and the [book](http://www.amazon.com/Enterprise-Integration-Patterns-Designing-Deploying/dp/0321200683) goes into a lot of detail.\n\nI can't recommend this book highly enough; understanding the patterns will provide you with the conceptual tools need to be successful.\n\n## Contributing\nPRs with insufficient coverage, broken tests or deviation from the style will not be accepted.\n\n### Behavior & Integration Tests\nPRs should include modified or additional test coverage in both integration and behavioral specs. Integration tests assume RabbitMQ is running on localhost with guest/guest credentials and the consistent hash exchange plugin enabled. You can enable the plugin with the following command:\n\n```bash\nrabbitmq-plugins enable rabbitmq_consistent_hash_exchange\n```\n\nRunning gulp will run both sets after every file change and display a coverage summary. To view a detailed report, run gulp coverage once to bring up the browser.\n\n### Vagrant\n\nWascally now provides a sample `Vagrantfile` that will set up a virtual machine that runs RabbitMQ. Under the hood, it uses the official RabbitMQ Docker image. It will forward RabbitMQ's default ports to `localhost`.\n\n**First, you will need to copy the sample file to a usable file:**\n\n```bash\n$ cp Vagrantfile.sample Vagrantfile\n```\n\nAdjust any necessary settings. Then, from the root of the project, run:\n\n```bash\n$ vagrant up\n```\n\nThis will create your box. Right now, it supports the `virtualbox` and `vmware_fusion` providers. To access the box, run:\n\n```bash\n$ vagrant ssh\n```\n\nOnce inside, you can view the RabbitMQ logs by executing:\n\n```bash\n$ docker logs rabbitmq\n```\n\nWhen the Vagrant box is running, RabbitMQ can be accessed at `localhost:5672` and the management console at `http://localhost:15672`.\n\nClick here for more information on [Vagrant](http://vagrantup.com), [Docker](http://docker.com), and [official RabbitMQ Docker image](https://registry.hub.docker.com/_/rabbitmq/).\n\n*To run tests using Vagrant:*\n\nExecute from the **host machine:**\n\n```bash\n$ vagrant up\n$ gulp\n```\n### Style\nThis project has both an `.editorconfig` and `.esformatter` file to help keep adherance to style simple. Please also take advantage of the `.jshintrc` file and avoid linter warnings.\n\n## Roadmap\n * additional test coverage\n * support RabbitMQ backpressure mechanisms\n * (configurable) limits & behavior when publishing during connectivity issues\n * ability to capture/log unpublished messages on shutdown\n * add support for Rabbit's HTTP API\n * enable better cluster utilization by spreading connections out over all nodes in cluster\n","maintainers":[{"name":"arobson","email":"asrobson@gmail.com"},{"name":"ianevatt","email":"ian.evatt@leankit.com"}],"time":{"modified":"2022-06-28T21:53:05.255Z","created":"2014-05-07T23:52:32.963Z","0.0.11":"2014-05-07T23:52:32.963Z","0.1.0":"2014-05-17T15:46:36.419Z","0.1.1":"2014-05-17T15:48:34.800Z","0.1.2":"2014-05-20T18:14:27.815Z","0.1.3":"2014-05-21T17:31:05.125Z","0.1.4":"2014-05-21T17:37:42.270Z","0.1.5":"2014-05-21T18:16:18.723Z","0.1.6":"2014-05-21T21:51:05.796Z","0.1.7":"2014-05-22T18:36:22.989Z","0.1.8":"2014-05-22T20:11:20.317Z","0.1.9":"2014-05-28T13:26:33.132Z","0.2.0-1":"2014-06-16T17:37:52.601Z","0.2.0-2":"2014-07-04T18:18:59.429Z","0.2.0-3":"2014-07-18T03:45:32.872Z","0.2.0-4":"2014-07-18T05:39:07.397Z","0.2.0-5":"2014-10-23T22:00:53.012Z","0.2.0-6":"2014-12-04T09:52:51.243Z","0.2.0-7":"2014-12-04T10:00:15.473Z","0.2.0-8":"2015-01-27T11:56:07.164Z","0.2.0":"2015-02-11T20:11:34.568Z","0.2.1":"2015-02-18T09:08:43.415Z","0.2.2":"2015-02-19T02:34:15.296Z","0.2.3":"2015-03-02T08:37:14.649Z","0.2.4":"2015-03-17T06:53:10.569Z","0.2.5":"2015-04-27T21:34:15.436Z","0.2.6":"2015-06-01T14:58:01.056Z","0.2.7":"2015-06-12T00:25:50.047Z","0.2.9":"2015-11-25T15:29:53.007Z","0.2.10":"2015-12-12T21:34:08.516Z","0.3.0":"2016-06-04T19:56:51.144Z"},"contributors":[{"name":"Alex Robson","email":"asrobson@gmail.com","url":"http://github.com/arobson"},{"name":"Doug Neiner","url":"http://code.dougneiner.com"},{"name":"Derick Bailey","url":"http://derickbailey.com/"},{"name":"Joseph Frazier","url":"https://github.com/josephfrazier"},{"name":"John Mathis","url":"http://github.com/JohnDMathis"},{"name":"Austin Young","url":"http://github.com/LeankitAustin"},{"name":"Jim Cowart","url":"http://github.com/ifandelse"},{"name":"Scott Walters","url":"http://github.com/LeankitScott"},{"name":"Eric Satterwhite","url":"http://codedependant.net/"},{"name":"Leonardo Bispo de Oliveira","url":"http://blog.bispooliveira.de"},{"name":"Michael Tuttle","url":"https://github.com/openam"}],"author":{"name":"LeanKit"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/leankit-labs/wascally#readme","repository":{"type":"git","url":"git+https://github.com/leankit-labs/wascally.git"},"bugs":{"url":"https://github.com/leankit-labs/wascally/issues"},"users":{"derickbailey":true,"rhyslbw":true}}