{"_id":"seneca-mesh","_rev":"26-d5dbc0a5ddf821bea23a1656b6e5055c","name":"seneca-mesh","description":"Mesh your Seneca.js microservices together - no more service discovery!","dist-tags":{"latest":"1.5.0"},"versions":{"0.1.0":{"name":"seneca-mesh","version":"0.1.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"^0.2.2","lodash":"^3.10.1","swim":"https://github.com/rjrodger/swim-js","seneca-balance-client":"0.1.0"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"https://github.com/senecajs/seneca"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"63b81d6714ab770f23b4cf0849e605b79b46d421","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.1.0","_shasum":"7271e86d923efacfde505f7dd7d3590a60610dc1","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"7271e86d923efacfde505f7dd7d3590a60610dc1","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.1.0.tgz","integrity":"sha512-1juZGp0jymhyk1B/9Z8edzkzcHJrsgDF+yydPtV0UKBzBRiCkSSduN0dFxTKt08k1NE1W0iEx5522UE1Y0ipfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMQmNUuLvIefBr/SrLutHn75Zm2W2OdvfAvnFdSH5pqgIhANNY3yDQRpNKHiJMEVPkI9lK97/689M9X7RJzy+CR6Dc"}]},"directories":{}},"0.2.0":{"name":"seneca-mesh","version":"0.2.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"^0.2.2","lodash":"^3.10.1","swim":"https://github.com/rjrodger/swim-js"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"https://github.com/senecajs/seneca","seneca-balance-client":"https://github.com/rjrodger/seneca-balance-client"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"ef61db899cd12474afd9d67530efdcf440372974","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.2.0","_shasum":"1f5df78d0e21a4bcb249b22a77eb4241e20e4b2c","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"1f5df78d0e21a4bcb249b22a77eb4241e20e4b2c","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.2.0.tgz","integrity":"sha512-bhgXKIYJMkQws28W3e6yhCaHGax3h+gprTdY47X+O2ar0+8HDU3AkF95WoRLshFsuc0L1xtyxI3KOdMkeDmRkw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICzxeN8eRNQVIdnic45bHBJ2M0QZUVx98soTb3vKKCGZAiEAqSSOALGNlDqaJakypihKwqpXJ03LE48prHzeiicsxJY="}]},"directories":{}},"0.3.0":{"name":"seneca-mesh","version":"0.3.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"^0.2.2","lodash":"^3.10.1","swim":"https://github.com/rjrodger/swim-js"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"https://github.com/senecajs/seneca","seneca-balance-client":"https://github.com/rjrodger/seneca-balance-client"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"18cb30b1ff3cf70e71a68edfca84433ba673ea8a","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.3.0","_shasum":"0df1db003171a6edd2de1b79ccb2d624fd279dc5","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"0df1db003171a6edd2de1b79ccb2d624fd279dc5","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.3.0.tgz","integrity":"sha512-XmJctzsw3YqzIjtvsJ7EAPrEqlKD7c/qp7MC7NMQL93Ddv3K+2xRPMfrltnbeTm80Hz4V25DUM2r6oVfYpwVsg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSjf3X448zWkIZG+5Y5nfdxjkwN3eEiyAgoaQhhqZIDQIgKkZbZI9mHKRWKs6gGRUGGanTeYNpHRlSfJru/vInTIo="}]},"directories":{}},"0.4.0":{"name":"seneca-mesh","version":"0.4.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -t 80 -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"^0.2.2","lodash":"^3.10.1","nid":"^0.3.2","sneeze":"^0.3.2","swim":"https://github.com/rjrodger/swim-js"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"plugin","seneca-balance-client":"0.2.0"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"e7e1540091eaf8ee95a9f35cc0f6d1ab8b00686f","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.4.0","_shasum":"93076983dce85249f28b9137799e11471cd65340","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"93076983dce85249f28b9137799e11471cd65340","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.4.0.tgz","integrity":"sha512-Dh70YiJ7lmmj6nPRzlYXhJP8mwTsXAQXbz2T5jJDN+uz3xkVFvsnnRyMYLRO9aW5VdCz+t6u6qcJsEcKpKIHMA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICXhy5/7LEfSgbFNo7OyMvTheBcfqQHQPo6y8BEsstTwAiADARCwCgcYeUa6lz57bm1L3YFDy/VO+61NGRobsMMRaA=="}]},"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.4.0.tgz_1454457557235_0.7362616532482207"},"directories":{}},"0.5.0":{"name":"seneca-mesh","version":"0.5.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -t 80 -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"^0.2.2","lodash":"^3.10.1","nid":"^0.3.2","sneeze":"^0.3.2","swim":"https://github.com/rjrodger/swim-js"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"plugin","seneca-balance-client":"0.2.0"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"dc8c5df54a59c6513083cd9e86faab393b54f93a","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.5.0","_shasum":"2d79b5eef8fd07f72bdb945f1f426aa343ef54b0","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"2d79b5eef8fd07f72bdb945f1f426aa343ef54b0","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.5.0.tgz","integrity":"sha512-QXX2wsXFTTshdox3PizfAw+tPXLUl7AesuX/ZunZhM0rCAvuqbMrVZunulkFPxJayNRdZyphrcxk/Ts/BZj4LQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCa+K4W/t+7YifrpHtc40iDZsPB2+Jt5UVKm7zqVrok6gIhANcWzSQi9ViPxW5ZhZUmxwgJk9GZ9uE+jn4OHHoWPl7T"}]},"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.5.0.tgz_1454775344336_0.8752262906637043"},"directories":{}},"0.6.0":{"name":"seneca-mesh","version":"0.6.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -t 80 -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"0.2.2","lodash":"4.5.0","nid":"0.3.2","sneeze":"0.4.0"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"git+https://github.com/senecajs/seneca","seneca-balance-client":"git+https://github.com/rjrodger/seneca-balance-client"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"9d5bdc389d6c6ed0350141c927517cb1a9ab89bd","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.6.0","_shasum":"5d321471b1bc3c57d27bca55d2913325038da227","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"5d321471b1bc3c57d27bca55d2913325038da227","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.6.0.tgz","integrity":"sha512-zDqwxWuQ9MMPyj5BAsxL0tjfZuQEvQ4N4uZvhF/QwKiC+RZiO5C3ZtrYRCzszkkKEfo5QjB+sZUUdJyqbut+rg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdCK/vfczIsBYQXwwiEq9KBXzqRhzOTQgzPLx/k7NkfQIhAOyy0yyA67/YkVR+1yd1jUPtZUd+9mFoci5V4DJ6gW/W"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.6.0.tgz_1457624681868_0.6058543424587697"},"directories":{}},"0.7.0":{"name":"seneca-mesh","version":"0.7.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -t 80 -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"dependencies":{"jsonic":"0.2.2","lodash":"4.5.0","nid":"0.3.2","sneeze":"0.5.0"},"devDependencies":{"docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","lab":"6.2.0","seneca":"git+https://github.com/senecajs/seneca","seneca-balance-client":"0.4.0"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"0e8161a2089d463bfbb4ddc6be066ca8898fa2db","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.7.0","_shasum":"307f2b31a76dc2dd043ff0bbb68757aadd6603c4","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.1","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"307f2b31a76dc2dd043ff0bbb68757aadd6603c4","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.7.0.tgz","integrity":"sha512-gA2JF3Gmrd1UitjgONiHR9oyARtRYlaJKKTED6olVG1fsnEWFtCx60daS+djpJLB6Mpdtl+Dbyzjk69Hbhyn5g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGc6gfSdasA2SDIgNKddtlDVxlrtyQ7leuWz/t4rIrwXAiAbVc3GW2bW09oSsVYDrVnuQ2cPgqdTQr3+fUYasF6etg=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.7.0.tgz_1457720070290_0.20328212273307145"},"directories":{}},"0.8.0":{"name":"seneca-mesh","version":"0.8.0","description":"Seneca mesh transport.","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"}],"scripts":{"test":"lab test/*.test.js -r console -t 70 -I Reflect -v","annotate":"docco mesh.js -o doc"},"repository":{"type":"git","url":"https://github.com/rjrodger/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=0.12"},"dependencies":{"ip":"1.1.3","jsonic":"0.2.2","lodash":"4.5.0","nid":"0.3.2","node-discover":"0.6.0","optioner":"0.8.0","rif":"0.3.0","sneeze":"0.7.1"},"devDependencies":{"chairo":"2.2.1","color":"0.11.3","docco":"0.7.0","eslint-config-seneca":"1.1.1","eslint-plugin-standard":"1.3.1","hapi":"13.5.0","lab":"6.2.0","seneca":"2.1.0","seneca-balance-client":"0.5.0","seneca-consul-registry":"0.1.0"},"peerDependencies":{"seneca":"*"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"7e1573916911a7a0f7ecb3a317b29270aa2f2688","bugs":{"url":"https://github.com/rjrodger/seneca-mesh/issues"},"homepage":"https://github.com/rjrodger/seneca-mesh","_id":"seneca-mesh@0.8.0","_shasum":"ab105cbf6576a89fd3c7df279bd2caffaf04f7f2","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"ab105cbf6576a89fd3c7df279bd2caffaf04f7f2","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.8.0.tgz","integrity":"sha512-st8JFLDryqMiDavck6DeR4dYmKKM7xZPENulifxvBn69NxuYvzQ0EKFso2SSIzeTa3/Kf3RywtmS+vMGJg4Wyg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDpoub7xj//MqsBkoOvB3VV2ahayjq7UZ9zwEz9mNGOkAiA8M9Xrxwc8dR4Jnj5wdinMWj4YLKvulz5QMRAEJDqEEA=="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.8.0.tgz_1469664813033_0.5134436620865017"},"directories":{}},"0.9.0":{"name":"seneca-mesh","version":"0.9.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"}],"scripts":{"test":"lab test/*.test.js -r console -L -t 70  -v","annotate":"docco mesh.js -o docs/annotated","lint":"lab *.js -dL"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=4.0.0"},"dependencies":{"ip":"1.1.3","jsonic":"0.2.2","lodash":"4.15.0","nid":"0.3.2","node-discover":"0.6.0","optioner":"0.8.0","rif":"0.3.0","sneeze":"0.7.1"},"devDependencies":{"chairo":"2.2.1","color":"0.11.3","docco":"0.7.x","eslint-config-seneca":"3.x.x","eslint-plugin-hapi":"4.x.x","eslint-plugin-standard":"2.x.x","hapi":"14.2.0","lab":"11.0.x","pre-commit":"1.1.3","seneca":"plugin","seneca-balance-client":"0.6.0","seneca-consul-registry":"0.1.0"},"files":["README.md","LICENSE","mesh.js"],"pre-commit":["test"],"gitHead":"b0f353a5f72050e35ba8da1837c49eac7f903ffe","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@0.9.0","_shasum":"01ceba937112c94292b9855c585992ce14f3b0ce","_from":".","_npmVersion":"3.8.6","_nodeVersion":"5.11.0","_npmUser":{"name":"mihaidma","email":"mihaizn@gmail.com"},"dist":{"shasum":"01ceba937112c94292b9855c585992ce14f3b0ce","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.9.0.tgz","integrity":"sha512-ylPdHl0HLfkJcyoiasxISVDknBtD9O8RjY93muj2TqbTFlHJsMTpeJv5UmezbCznd+F7ZDxPkwbOoLhBml07NQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDu60tWMXi/UN73aKWFAoSVNzo5owQOVH9e48EFakpkigIhAPpcahC/tRdxbEoPyQz8cYKCz6Vpx3ojb74m0sJ2u3NK"}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.9.0.tgz_1472215292513_0.8743354482576251"},"directories":{}},"0.10.0":{"name":"seneca-mesh","version":"0.10.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab test/*.test.js -r console -L -t 80 -c -v","annotate":"docco mesh.js -o docs/annotated","lint":"lab *.js -dL","coveralls":"lab -s -P test -r lcov | coveralls","coverage":"lab -v -P test -L -t 78 -r html > docs/coverage.html"},"repository":{"type":"git","url":"https://github.com/senecajs/seneca-mesh"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=4.0.0"},"dependencies":{"ip":"1.1.3","jsonic":"0.2.2","lodash":"4.15.0","nid":"0.3.2","node-discover":"0.6.0","optioner":"0.8.0","rif":"0.3.0","sneeze":"0.8.0"},"devDependencies":{"chairo":"2.2.1","color":"0.11.3","coveralls":"2.11.x","docco":"0.7.x","eslint-config-seneca":"3.x.x","eslint-plugin-hapi":"4.x.x","eslint-plugin-standard":"2.x.x","hapi":"15.0.2","lab":"11.0.x","code":"4.0.x","seneca":"plugin","seneca-balance-client":"0.6.0","seneca-consul-registry":"0.1.0"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"caeb4a6363a2242e0117c3ac85477037f59692e7","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh","_id":"seneca-mesh@0.10.0","_shasum":"94e718c3f25607ab546bb05ae54d598594e222b9","_from":".","_npmVersion":"2.15.9","_nodeVersion":"4.5.0","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"94e718c3f25607ab546bb05ae54d598594e222b9","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.10.0.tgz","integrity":"sha512-Pd5/+OVv4C37KKAi8MHwqqO+qFXtW4GxMPY0GuyKkUWF2zspwOaTp8A+NTr6G7WuEzUaTMqb0YxVMZkGA18Wkg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCo/OuBmPhrurade6NKtKJ2lipSFZqG8mlBE1Vwc+VZQIgJ9aGtfKgpDpOB2ifP4UaAAKlUw+AlQnggh38FC7yAnA="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/seneca-mesh-0.10.0.tgz_1488890701186_0.4026767013128847"},"directories":{}},"0.11.0":{"name":"seneca-mesh","version":"0.11.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab test/*.test.js -r console -L -t 80 -c -v","annotate":"docco mesh.js -o docs/annotated","lint":"lab *.js -dL","coveralls":"lab -s -P test -r lcov | coveralls","coverage":"lab -v -P test -L -t 78 -r html > docs/coverage.html","prettier":"prettier --write --no-semi --single-quote mesh.js"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=4.0.0"},"dependencies":{"ip":"1.1.3","jsonic":"0.3.0","lodash":"4.17.4","nid":"0.3.2","node-discover":"0.6.0","optioner":"0.8.0","rif":"0.3.0","sneeze":"0.8.0"},"devDependencies":{"chairo":"2.2.1","color":"0.11.3","coveralls":"2.13.x","docco":"0.7.x","hapi":"15.0.2","lab":"14.0.x","code":"4.1.x","seneca-repl":"1.0.x","seneca":"plugin","seneca-balance-client":"0.6.1","seneca-consul-registry":"0.1.0","prettier":"1.4.x"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"4b821f663260fec6e2494ee28ccad4a5d15c5199","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@0.11.0","_shasum":"2fee11097e65a3f594f307ae9f3c1af657a8a03e","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.2","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"2fee11097e65a3f594f307ae9f3c1af657a8a03e","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.11.0.tgz","integrity":"sha512-NAX/4mI8JEcuOmdO40l/tQw3MeFsZcJw/VaowttbPBNyraUTpSyVSEK2vz0yKhFSbgBjLzgAgiKrSr0E0dcMNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHbGNiaJGyNw7At5PZk5ZESiZjCvkt0we1wqWzSmoU/NAiEAvRcrPCZtma7MebhbZvumVIXD+ZQSlr/IgDo3C7dhsdI="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh-0.11.0.tgz_1502368454791_0.04600796499289572"},"directories":{}},"0.12.0":{"name":"seneca-mesh","version":"0.12.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab test/*.test.js -r console -L -t 80 -c -v","lint":"lab *.js -dL","coveralls":"lab -s -P test -r lcov | coveralls","coverage":"lab -v -P test -L -t 78 -r html > coverage.html","prettier":"prettier --write --no-semi --single-quote mesh.js"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=4.0.0"},"dependencies":{"ip":"1.1","jsonic":"0.3","lodash":"4.17","nid":"0.3","node-discover":"0.6","node-uuid":"1.4.7","optioner":"1.1","rif":"0.3","sneeze":"0.9"},"devDependencies":{"color":"0","coveralls":"3","hapi":"16","lab":"14","code":"4","seneca-repl":"1.2","seneca":"github:senecajs/seneca","seneca-balance-client":"0.7","seneca-consul-registry":"0.2","prettier":"1"},"files":["README.md","LICENSE","mesh.js"],"gitHead":"f9e25c0744cc44afd848bc88252214d3f933bbcf","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@0.12.0","_npmVersion":"6.1.0","_nodeVersion":"8.11.2","_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"integrity":"sha512-6NDKX4+UnZmfG2YiS3fVRVuC/iXS7Ojl5vLgwp4kAYuO/K/MflDvUqBcA6uwUDqCK5A4TjS2BRdhLwBB8+y/qg==","shasum":"4ac445bf796a234fb2269dab50177fdab32cb41a","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-0.12.0.tgz","fileCount":5,"unpackedSize":35354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDHJECRA9TVsSAnZWagAAviUP/A/mJDlxNGwAdfqiQXg2\niJdIo/mzC2b1Ig1acbseSmBkGxtMnTyBcy19DEZr8zsLsH8nvxXcNWKURHDF\nsL/W6NmfkosqQqFCfNsRGoO6Q08vhxAUzAhjwWX0ncSm/aTZEXq9sdhHnzJu\nQ7L0mW6UO2HmKGhXnueeiL/KzzgEgfhlJHWWdDv6KXYN9R0Sl9KWMcUu8I03\nwfAuudVWpDOFYKvQqgO/+E6fc0ioCtxKy9FjySr0D/cYluRAqy+L6qIvFmug\nJgRlQu8SJdr1pdmx5xFONojRlFHU30SVv/0sVIs8cGUqqb5rNsPCATRoz/0g\nHw6pVyerUlB/9oex1wSC0VgYB86+PhNNUos1x3BoOjpJUPZeftPTL7rJGb43\nYBexwkyaL6clT1BgmOAwDr5VCEY084lY/OxcEhz6d1LBXIr/Jo30gO6dFffy\ngAefG07iBjhl5TRl7/1LTMSmquhVP4/k1xMsJkssL8jPprs5rrHENFFPZV+O\nHvsiiPPHHNr8NBpTs7+wltaWr5ZykK9EOnFOKL4Otdy2sD+rbWzMRAwzyjtW\nbuoyitYUfyfCcOUj5Mjapjs4nnfEEWRmQZ4TwYjAH+pELYFdDr2OXMiv2mpp\nY8ykBhPhJBTuFf8Bj+jImKglDovrapPHjgtDKvDJ+Zx0MmzbFuapiJd9VhK6\ncVu3\r\n=3d33\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKDNS/4tKL/KVhBFy8sXSnCHeLv2WTfYgvfUzNFXh9gQIgRh9MdgFUwls7UDfyCdupiv/a1gBuXnofLdNj/QtDJbQ="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_0.12.0_1527542337783_0.010211360088318022"},"_hasShrinkwrap":false},"1.0.0":{"name":"seneca-mesh","version":"1.0.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote entity.js lib/*.js test/*.js","clean-npm":"rm -rf node_modules package-lock.json","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run prettier && npm test && npm run repo-tag && npm publish --access public"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.11","nid":"^0.3.2","node-discover":"^0.6.2","optioner":"^1.1.0","rif":"^0.3.0","sneeze":"^1.0.0"},"devDependencies":{"code":"^4.1.0","color":"^0.11.4","coveralls":"^3.0.2","hapi":"^18.1.0","lab":"^18.0.2","prettier":"^1.16.4","seneca":"^3.8.2","seneca-balance-client":"^0.7.0","seneca-consul-registry":"^0.2.0","seneca-repl":"^1.2.0"},"gitHead":"c37fcb95ede64fdd11a031428fc2aee2d2138775","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.0.0","_npmVersion":"6.5.0","_nodeVersion":"10.13.0","_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"dist":{"integrity":"sha512-+DrpJbVZoOzYcGPXNvre6JLOuvbPKtKMW15+vWQjm/PhnB4KCksBUulZVtDcPMS/v/VsUpkogKkgaGvfUCpwgA==","shasum":"360de3d3cf57ebd7f505931904480b98c572df85","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.0.0.tgz","fileCount":5,"unpackedSize":35380,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbEAYCRA9TVsSAnZWagAAAwIP/RotkKfZGamm7tGvzQn7\nzQ2WEEskQZoM5dA6WFrBWc8hXkMha+7BAGx+pS3Eb1qlkqOo2hKMVHr2uO/V\noR/0wcjbV5FLtr4d0UdE0i0zOiIYNTZtdgPgmJgwT/cI+zSOkit5xc9gIfH/\numEv/0MjqmapTE5EEgzn6aHR+3Ub2m/gSqn5dweDzNZ2abSD/7f9onDcg389\n1IR5jsCqjAVNRR+8ktXEsOU646jG2xsvBS76eWDps3mMAniKv2tgc1lnLIl5\nHwsoo7SN2TBQ573j3VOfv8HGlBcoCwPPjnq1XKDkR5TnslRI7XmfEFGUFV63\n1s+BO8C6jIWbvgOkfqGdTgWt7llC+u0eIVUiZ2F8YQMkIevaXIul/OvtQD52\nVEtytCh+1IGmE43GHU6DoB4GM9WBvJyfsRjy9aahsgqHvd74gPS6KIA8t+0f\nmSs6K5ng6ANytHEio1DHcTQIJ/9SOQIyOan6aY7NFb80Njkn3hheGPw1rd0T\nUBCMYme1p3VP9VSIy/lYl0bFvcZodnAAIAjL7IfAF3aWNXRbeUUnOZsiz+ov\nqkXYC8CTvZU/driB28ZmexMu8LAt/phJztzHr8zVhIn4K4T0B6KmBiT8UPP9\nnc0serRAs2GQurgjpHZF6scqq6H9v3LB2JU2i2kSCPcVI2kbsbDcLZ7gbufQ\nnRUH\r\n=dEUv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAqGbIRW05hI/DWygvzMzDRjynZMPe2ebCk8lQFpnkOBAiBd4EKvQpVffiHU9T3aUchTfo3ZdxsuFdDvOqrW2KaroA=="}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.0.0_1550598167114_0.5446126614366888"},"_hasShrinkwrap":false},"1.1.0":{"name":"seneca-mesh","version":"1.1.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote entity.js lib/*.js test/*.js","clean-npm":"rm -rf node_modules package-lock.json","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run prettier && npm test && npm run repo-tag && npm publish --access public"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"@hapi/code":"^5.3.1","ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.15","nid":"^0.3.2","node-discover":"^0.6.2","optioner":"^4.0.0","rif":"^0.3.0","sneeze":"^1.0.0"},"devDependencies":{"color":"^0.11.4","coveralls":"^3.0.5","hapi":"^18.1.0","lab":"^18.0.2","prettier":"^1.18.2","seneca":"plugin","seneca-balance-client":"^1.0.0","seneca-consul-registry":"^0.2.0","seneca-repl":"^1.2.0"},"gitHead":"66f9bdace5204e9d3e826f6a29a2fbaf30ee13ef","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"dist":{"integrity":"sha512-AxcrdSDhpglNXGGBKme1bJQZCkIDCL3QwoFZnbWAk+tDoJKtwgKH91sXgOJ6PqSuq02+FUaq5I0aQ2fBna6rAA==","shasum":"bf58c843188aa4cfd7a3b6556671a75d89fd18ec","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.1.0.tgz","fileCount":5,"unpackedSize":35727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdNi4aCRA9TVsSAnZWagAA5xUP/R1Z5VhxL1SjS6olH6ed\nSOIGUb41JpSgnCoyH6I+mTSMoSdiy4gHEU8o34XEnHT3dhQLztWJ1GW5DOXa\nII3wDOKvT/2Qq7W4/w9MCY02zN/iXZrLcrncElXWQ7vTdaOnaigyOXxNHu50\nmHObDkayK0eC3RVocR0vTpy6QNMm/zCii/f1KGFot/uA/A0cWg/3ndloe0zQ\nxqlIiFcN/J5aB+QNZtA2JtDW0AJUcntfYOieiY4hRtF8RvqWG//4EYJ0YQxc\nYLbJgV6bhegxzCMJp4k4Pp/EBeA5DF1bSPjIdnplr1YAjQ8QXoKKOGlRG+Yp\ny5SEtHvduO9fzdDnigo0OTcWWDFGzW/ls6my0otJsekUJgUiuld8X2qwd6zg\nlJeDqKIwL7wYuX0vPqTU0B4tPM9/C+d3RzvY86UHTiO1icSer//LnANMVff8\nPRpBXB5tQmT3UYIpkh9tLz6Z48ChT6geDsqRYQMEwSnerl3hB14e1COIO/7n\nXvbABHyupTRiyEZcbjBMv6jLK4pEPtroqEZ72WynxhsW1wJf0O62bX+7qjcA\nNWcRT8G0PaHzv6uAf4kIECmAdZrqPqaBPtmC04/QFLg4cZrB3pyUo4kM3ut/\nCV6jy2WfoREZH1gLzJmdBWqlCrQhhsLPd6aesHh7l0ZXn6hI8KuwTb8cjA5y\nVw5y\r\n=HaEy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDshtM9gNRW43Ox0ZXAWVP6esagqYAWmfbcQr5RfXI8NQIgUnVfS5gxMVjzdJSi9ebEqPXVVxL5uxzpWwJhCD4wdGM="}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.1.0_1563831833167_0.25506673222825094"},"_hasShrinkwrap":false},"1.2.1":{"name":"seneca-mesh","version":"1.2.1","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote entity.js lib/*.js test/*.js","clean-npm":"rm -rf node_modules package-lock.json","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run prettier && npm test && npm run repo-tag && npm publish --access public --registry=http://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"@hapi/code":"^6.0.0","ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.15","nid":"^0.3.2","node-discover":"^1.0.0","optioner":"^4.1.2","rif":"^0.3.0","sneeze":"^1.1.1"},"devDependencies":{"@hapi/hapi":"^18.3.2","@hapi/lab":"^20.2.2","@seneca/repl":"^1.5.1","acorn":"^7.0.0","color":"^3.1.2","coveralls":"^3.0.6","prettier":"^1.18.2","seneca":"plugin","seneca-balance-client":"^1.1.1","seneca-consul-registry":"^0.2.0"},"gitHead":"6c727d9e5d8499ed4dafa376724b4d99ac2e2006","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.2.1","_nodeVersion":"10.15.3","_npmVersion":"6.11.3","dist":{"integrity":"sha512-39VE7JaLMiqHdyAlH/iuy7fl0VWEFD1Smy+3TxE5O8meyXjIArKX0R3y1QbDuI4kD65ARMoobp3BySHn/Lb9Rg==","shasum":"f6ed1d59f890887ffafcdec1843915466023e993","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.2.1.tgz","fileCount":5,"unpackedSize":35799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddpfACRA9TVsSAnZWagAAqGkQAJ7INSxpDFt0VSgdKXNE\nTih/Vm+njFaTajPG1vGyEaSJfzYiPAgy1KyAR3BEFLVnetAuo/keoTwI9pe3\nYjL5gmi+XuXritCdSmdI5ApRWqZPmDSEsQKNyj1aW1CHHQXB4co0IhotpGbc\nF/s+WFcs5m6iHPhQ3eLGGOrQFZK4u3Oq2pOVy2XYOU6HT6y9aB99bGBuOjOx\n/Gcr2YqVB3VRF0P0Ravhk3Mdk/jGNE/R+ZtB+xbL5tnlvTK1hDr2MUjCO0Lz\n+jIEPU1wG1pr6pnZEK9jDtQo+/QF0KSK0NmKUz4m6h9E+CufZAlgaUomjn4X\noj+TSOdLm3L/H5lk5ZIbK1904MmD/UTGSNQrLC7O0ZtAjHXTgtqH3ufxaCLK\nFRyztyfnK8fV3yLIgkzE/HETPbq+DmG9f5T49dSy4VvOWLjJq24YxW2TaeNF\nA388uOQStqsFxZfPLO11W2XTHwxXGI+o5SkZRWYD7pHpxYQSPO/4fFjne23K\ne83doXqwz4YMWsroGdBy58MykDdoje5DsU2uR3wK6Kvq5OLJFp44nDGvr7jY\n8MSU5VTry95ofwosTfPk0s7EECeKdQd+ssbNOyAPC5isXDdbeitq76Gt5QSG\nmsyuySGfvRGlnaxkg6KIfkiXYkRVR5gzLVL4B+8XQBgvnZNY8ygHRWu58/BM\nQdOk\r\n=TcgT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjq97DE8lzxxp1EMubFHvMseVUaGNLfjd9HEoVdk+P9AIhALmNP7EXJCnTyGxCyfMPI4TCSdHNmIQnwwnW9eU7H1Ks"}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.2.1_1568053184052_0.14676657665638282"},"_hasShrinkwrap":false},"1.3.0":{"name":"seneca-mesh","version":"1.3.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote entity.js lib/*.js test/*.js","clean":"rm -rf node_modules package-lock.json yarn.lock","reset":"npm run clean && npm i && npm test","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run clean && npm i --registry http://registry.npmjs.org && npm run repo-publish-quick","repo-publish-quick":"npm run prettier && npm test && npm run repo-tag && npm publish --access public --registry=http://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.15","nid":"^0.3.2","node-discover":"^1.0.0","optioner":"^5.0.0","rif":"^0.3.0","sneeze":"^1.1.1"},"devDependencies":{"@hapi/code":"^8.0.1","@hapi/hapi":"^18.3.2","@hapi/lab":"^22.0.3","@seneca/repl":"^2.2.0","color":"^3.1.2","coveralls":"^3.0.9","prettier":"^1.19.1","seneca":"plugin","seneca-balance-client":"^1.2.0","seneca-consul-registry":"^0.2.0"},"gitHead":"20746614766057668b93362ade7ccb66813af4a9","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.3.0","_nodeVersion":"10.15.3","_npmVersion":"6.13.1","dist":{"integrity":"sha512-e9NFkM2mIt9s6gfC4bo417fAUKxZR1hRIcB8ucZbSIC4MHW4YIPE2kYFZmLKC/3atkU2M9oGTdNUPp2oeFiTwQ==","shasum":"99f85d48ba35dbef6ddf33a12d8ea783a97d7512","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.3.0.tgz","fileCount":5,"unpackedSize":35952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMK2rCRA9TVsSAnZWagAAN4cP/1utEz9vUA4iw1x1zZNF\nbkECNDnfGmhqcROjT16G1RVA8RXNciWF7fokU4Xmq11lCaHTowxfm9RNbgOF\nYOv29ZlLfCkw/ofV56w22CJoAN3FGZCdD21ICQihYI8yaAk0jeNPdKSsqOIG\nh1L5TvMPuXGAfRJIMp0+h52hGQahBJM2y6qP0nnqF2MSPvEq6fvd5xG4w6Nb\nEmy85IOVn7ebJD683g6hkwxFbPT9JCyJgJs9oHQIm3ZkVwtQeeStTEdGrFST\nCQWTw+iaeml952uz2zn4v8slLtfjAN3yTysJ9m5RxdBpNCrjejVLkDyeIDwV\ngnxTGKUErFHb3FhUqlCualWqCs5qFSmxWIlgkRYeyhRY+HwrFB5k1VeXYbKF\nf91IBeiDxXjIEtubBTeom3gv6T1L8PFFK03SfDIM2jJdayNO0k29dL6KRP0W\nyhD1hVUekRSwB6Hho6JoWqyoatkFJqoS9VSMA34FvDnSIzz79qH55W79SqPp\nvnvinAil9ynuy8uAVtvgP9XTwTwPGVWtc97lIWqeGNIcO/aKe5ch2nH/CqzH\nlZ8GIGM7WJgwiLolo27cTs0w+Rr4Zz76VpDOOGoWfH3QPeZoPGABb0Lk3naz\nwDtSnqXANVfcnCaWVv6UiQ5+ysOdvIBTmweiMVjAflHTDDkN304QKT8wvOE8\n5ewT\r\n=XobJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPXmCdp+RMhbOzgVkG1D+wewqBm87Xiqt/6z37FDnotgIhAIU5GcJTDnZcSscA0MTbn+4i9rvAKPFVf3IRiHpyLz2m"}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.3.0_1580248491055_0.9622280876562497"},"_hasShrinkwrap":false},"1.4.0":{"name":"seneca-mesh","version":"1.4.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote entity.js lib/*.js test/*.js","clean":"rm -rf node_modules package-lock.json yarn.lock","reset":"npm run clean && npm i && npm test","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run clean && npm i --registry http://registry.npmjs.org && npm run repo-publish-quick","repo-publish-quick":"npm run prettier && npm test && npm run repo-tag && npm publish --access public --registry=http://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.15","nid":"^0.3.2","node-discover":"^1.0.0","optioner":"^5.0.0","rif":"^0.3.0","sneeze":"^2.0.0"},"devDependencies":{"@hapi/code":"^8.0.1","@hapi/hapi":"^18.3.2","@hapi/lab":"^22.0.3","@seneca/repl":"^2.2.0","color":"^3.1.2","coveralls":"^3.0.9","prettier":"^1.19.1","seneca":"plugin","seneca-balance-client":"^1.2.0","seneca-consul-registry":"^0.2.0"},"gitHead":"062ebcab0b7d000badd2d8946ce31685133bc1ce","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.4.0","_nodeVersion":"12.14.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-0b44l8n9ZPh66yQAsQbwoSTZ8yjJi72K5WA5KEmiTrGlG2CsHoWIS2iR48DJlXJbj4tptaVRJxe3/fLvoT8VnQ==","shasum":"94b57175090a752a1c6168477cccc4449eefacd0","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.4.0.tgz","fileCount":5,"unpackedSize":35952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMvQQCRA9TVsSAnZWagAAYOQP+gNlFnLdFrQHAUDCbdIf\nomUhcE2pzyl64+9urtxtdb/PAGhpi4HvNgJH9VoLt3mZPfA0NrXfERoIC9A2\nN19zq8/5xb/hgVPaQoww+sMhYOaakbk7+3cpBxv6HJxtn3j28tj36oc2dnZ7\nnfm3KOy3hFgsuQT6t7NLSmgYjgHlqrSxW4bbMuHWQpq2rYqMHE92qnXENqLK\n2Td7syRBLGHU4RmJeLPwzPsKiDvu2+5Okf8a/d0nl7HqUqs7zhbXP+sFE+Oc\nehJnJjZLuhbgukDn48pOlUOUbOQJ4kx4tCepp+GDT7yRY9m39/3aRmxC7Ajz\nc36hg9gj5yoyIu6zSdHMky/p5Jl62RsF4aizClyCzyjguJg5dSD3RHKfvaMc\nYbYS6mYiwwWoAPTg3F8d/VGI4kl806kDb/r+ce5tI274tpr/oK+I+u9eWH4c\njPm9onhCpE1mXAtakMK5kVRVANwln5CaDxlqMJ/ffevhUnoQ/FpuxYXroDsa\nIIHJ26sONVkbNZgGn/OfqnGreBdW9Ay5+fIv0SkaYydnUo+PRnJeZn7m/qIW\nsUlkSvI2fDFW2aylgiG1GSkiLBQ1qmlRd53rGg3RSZazZ/73VhH3235eXnd+\n/aML7jirrwwuuOVNoKPEEzVtlYhp8FESFW5spvGaexGZQg2H4SKnbvANLSEN\n88DE\r\n=AS2n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7b2Xwi8ZBMSkX+spfJIFJobY5Uo09c0GQZRPmnuLBQQIgMrl+Pe911VKYDur4YgsYmkBAP51oaBpfkGGYEs9xk80="}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.4.0_1580397583857_0.9443607682277178"},"_hasShrinkwrap":false},"1.5.0":{"name":"seneca-mesh","version":"1.5.0","description":"Mesh your Seneca.js microservices together - no more service discovery!","main":"mesh.js","license":"MIT","author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"scripts":{"test":"lab -v -t 80 -I URL,URLSearchParams,BigUint64Array,BigInt64Array,BigInt","coveralls":"lab -s -P test -r lcov -I URL,URLSearchParams | coveralls","coverage":"lab -v -P test -t 80 -r html -I URL,URLSearchParams > coverage.html","prettier":"prettier --write --no-semi --single-quote *.js test/*.js","clean":"rm -rf node_modules package-lock.json yarn.lock","reset":"npm run clean && npm i && npm test","repo-tag":"REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo TAG: v$REPO_VERSION && git commit -a -m v$REPO_VERSION && git push && git tag v$REPO_VERSION && git push --tags;","repo-publish":"npm run clean && npm i --registry http://registry.npmjs.org && npm run repo-publish-quick","repo-publish-quick":"npm run prettier && npm test && npm run repo-tag && npm publish --access public --registry=http://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"keywords":["seneca","plugin","transport","load","balance","client"],"engines":{"node":">=8"},"dependencies":{"ip":"^1.1.5","jsonic":"^0.3.1","lodash":"^4.17.15","nid":"^1.1.0","node-discover":"^1.1.3","optioner":"^5.0.1","rif":"^0.3.0","sneeze":"^3.0.0"},"devDependencies":{"@hapi/code":"^8.0.1","@hapi/hapi":"^19.1.1","@hapi/lab":"^22.0.4","@seneca/repl":"^2.2.0","color":"^3.1.2","coveralls":"^3.1.0","prettier":"^2.0.5","seneca":"^3.20.6","seneca-balance-client":"^1.2.0","seneca-consul-registry":"^0.2.0"},"gitHead":"09e9939d7b0935db0f76502ed2eafef9a964bb49","bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","_id":"seneca-mesh@1.5.0","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-acyw5iadvTgJ7fXXde9rLiHzFqr5HmteWmJk9N/LJZH14LdAZzvs1ATgSI5BY9XTiRIc/Mxs/Mbna3QzgBt3TQ==","shasum":"c49b34b0616ee51becea26c4fb16280ddc5a53fd","tarball":"https://registry.npmjs.org/seneca-mesh/-/seneca-mesh-1.5.0.tgz","fileCount":5,"unpackedSize":35972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevekSCRA9TVsSAnZWagAAwJsP/0fN2jmK95oNVbE/deU7\n4v2q5+GTsRng5tgHqtcHh66eXVZ0fhGRgwB76ABOIiv9yiiStuXhgC17hJeu\nPEbht6nxWUR9uFWNf0PZpGPOEszK7/Q/gfyQwJ+VdZpV8F91Hzr+/gSIup/F\nmGS56sApmYZp3EAUe4HfapNdSbPwy89SjaTPSMh84ZGl14Dcj0/cA9FooHUY\ncP2CMNcSGv40E8Lj/HTQETWKXE5Slvn0YKrSr5lTph5KyCFmDa4UsTku5AGm\nYa69K9lUvYky6Z30L+KxySYmpzKW1aO0IR7BpjZOY4XvciBxYAaMaG7BNHft\n0K6dYvLqlkfbKuqSgJqRzSWgHuXmoBtcyCsG1gIg+V1JoJUlZKgTcBoynIUW\nmI7VPKNL5J2wKfFth0NmgG617K4awwoDRG0peDaDWnhfJMunIhVSFzcDb17R\n/a2PZUjaKHY14K/2FCW/Yn9xP9po8VxKXMsQiPzedUTIE31e4uWul5/i40hM\nMJnbvKJtWMbS41959EjDWNxlQXc4GTuxcgk/ggqRwq5HOhUkX8VKyVPSHtgR\nZpwfBdc+RmODLdjPwfm2cChPhFO13Y0Nw/dJhq4x516QR+muSUqOvX5+Ud5Z\n/ttiu5cag0HhTDNPgvdCzlw7ifRNpMMtGdlXpy4pf/5J3QWhjExYY+dL0vy4\nXI61\r\n=lvXb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDp5q8ld8y2wWgdz9/45moHaIURDKY/UeD9LAAUCpBtEAiAZmkz0KByhlkU69dMkCZ6WFS34v9rqp4P8h0rPgzGLsQ=="}]},"maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/seneca-mesh_1.5.0_1589504273725_0.07089725931200141"},"_hasShrinkwrap":false}},"readme":"![Seneca](http://senecajs.org/files/assets/seneca-logo.png)\n> Mesh your [Seneca.js][] microservices together - no more service discovery!\n\n# seneca-mesh\n[![npm version][npm-badge]][npm-url]\n[![Build Status][travis-badge]][travis-url]\n[![Gitter][gitter-badge]][gitter-url]\n\n- __Lead Maintainer:__ [Richard Rodger][Lead]\n- __Sponsor:__ [nearForm][Sponsor]\n\nThis plugin allows you to wire up Seneca microservices using automatic\nmeshing. It uses the [SWIM gossip algorithm][] for automatic service\ndiscovery within the microservice network.\n\nTo join the network, all a service has to do is contact one other\nservice already in the network. The network then shares information\nabout which services respond to which patterns. There is no need to\nconfigure the location of individual services anywhere.\n\nMany thanks to Rui Hu for the excellent\n[swim](https://github.com/mrhooray/swim-js) module that makes this\nwork.\n\nIf you're using this module, and need help, you can:\n\n- Post a [github issue][],\n- Tweet to [@senecajs][],\n- Ask on the [Gitter][gitter-url].\n\nIf you are new to Seneca in general, please take a look at\n[senecajs.org][]. We have everything from tutorials to sample apps to\nhelp get you up and running quickly.\n\n\n### Seneca compatibility\n\nSupports Seneca versions **3.x** and above.\n\n## Install\nTo install, use npm\n\n```sh\nnpm install seneca-balance-client\nnpm install seneca-mesh\n```\nThe _seneca-mesh_ plugin depends on the [seneca-balance-client](Balance) plugin.\n\nAnd in your code:\n\n```js\nrequire('seneca')()\n  .use('mesh', { ... options ... })\n```\n\nUsing Windows? _seneca-mesh_ uses some native modules, so make sure to\n[configure\nmsbuild](https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules).\n\n\n\n## Quick Example\n\nCreate a microservice. The service translates color names into\nhex values.\n\n```js\n// color-service.js\nvar Seneca = require('seneca')\n\nSeneca()\n  // Uncomment to get detailed logs\n  // .test('print')\n  \n  // provide an action for the format:hex pattern\n  .add('format:hex', function (msg, reply) {\n\n    // red is the only color supported!\n    var color = 'red' === msg.color ? '#FF0000' : '#FFFFFF'\n\n    reply({color: color})\n  })\n\n  // load the mesh plugin\n  .use('mesh', {\n\n    // this is a base node\n    isbase: true,\n\n    // this service will respond to the format:hex pattern\n    pin: 'format:hex'\n  })\n```\n\nRun the service (and leave it running) using:\n\n```sh\n$ node color-service.js\n```\n\nCreate a client for the service. This client joins the mesh network,\nperforms an action, and then leaves.\n\n```js\n// color-client.js\nvar Seneca = require('seneca')\n\nSeneca({log: 'test'})\n\n  // load the mesh plugin\n  .use('mesh')\n\n  // send a message out into the network\n  // the network will know where to send format:hex messages\n  .act({format: 'hex', color: 'red'}, function (err, out) {\n\n    // prints #FF0000\n    console.log(out.color)\n  })\n```\n\nRun the client in a separate terminal using:\n\n```sh\n$ node color-client.js\n```\n\nThe client finds the service using the mesh network. In this simple\ncase, the `color-service` is configured as a *base* node, which means\nthat it listens on a pre-defined local UDP port. The client checks for\nbase nodes on this port.\n\n**Notice that the client did not need any infomation about the service\n  location.**\n\nTo join a network, you do need to know where the base nodes are. Once\nyou've joined, you don't even need the bases anymore, as the network keeps\nyou informed of new services.\n\nTo find base nodes, _seneca-mesh_ provides support for discovery via\nconfiguration, multicast, service registries, and custom\napproaches. Base nodes are **not** used for service discovery. They\nserve only as a convenient means for new nodes to join the network.\n\nIn the above example, UDP multicast was used by default. In production\nyou'll need to choose a discovery mechanism suitable for your network.\n\n\nThe [examples](/examples) folder contains code for this\nexample, and other scenarios demonstrating more complex network\nconfigurations:\n\n  * [local-dev-mesh](/examples/20-local-dev-mesh): local development, including a web service API.\n  * [multicast-discovery](/examples/30-multicast-discovery): multicast allows base nodes to discover each other - zero configuration!\n  * [consul-discovery](/examples/40-consul-discovery): base node discovery using a service registry, when multicast is not available.\n\nAs a counterpoint to mesh-based configuration, the\n[local-dev](/examples/10-local-dev) example is a reminder of the\nburden of traditional service location.\n\n\n## Development monitor\n\nYou can monitor the status of your local development network using the\n`monitor` option:\n\n```\n// monitor.js\nSeneca({tag: 'rgb', log: 'silent'})\n  .use('mesh', {\n    monitor: true\n  })\n```\n\nThis prints a table of known services to the terminal. Use keys\n`Ctrl-C` to quit, and `p` to prune failed services. In the case of the\n[multicast-discovery](/examples/30-multicast-discovery) example, the\nmonitor will output something like:\n\n<img src=\"https://github.com/senecajs/seneca-mesh/blob/master/monitor.png\">\n\n\n\n\n## Deployment\n\nSeneca-mesh has been tested under the following deployment configurations:\n\n  * Single development machine using localhost (loopback network interface)\n  * Multiple machines using VirtualBox (enable host network)\n  * Docker containers using host networking (--net=\"host\")\n  * Docker swarm using an overlay network (not multicast not supported here by Docker)\n  * Amazon Web Services on multiple instances (multicast not supported by Amazon)\n\nSee the [test](/test) and [test/docker](/test/docker) folders for example code.\n\nSee also the [Full system](#Full systems) examples for deployment configurations.\n\nMulticast service discovery is the most desirable from an ease of\ndeployment perspective, as you don't have to do anything - base nodes\ndiscover each other, and services discover base nodes. Unfortunately\nmulticast networking is often not supported by the underlying network.\n\nAs best-practice deployment model, consider running a least one base\nnode per machine. This provides considerable redundancy for services\njoining the network.\n\n\n## Base discovery\n\nOnce a service has joined the SWIM network, it will find all the other\nservices. SWIM solves that problem for you, which is why it is so\nawesome.\n\nBut you stil have to join the network initially. You can do so by\npointing a new service at any other service, and it will \"just\nwork\". However in practice it is useful to have the concept of a base\nnode that provides bootstrapping functionality as a its primary\npurpose. The problem then reduces to finding base nodes.\n\nNote: not all base nodes need to alive - you can provide a list of\nbase nodes containing nodes that are down. SWIM will continue anyway\nso long as at least one node is up.\n\n\nSeneca-mesh provides the following strategies:\n\n  * _defined_: the base nodes are pre-defined and provided to the\n    service via configuration or environment variables. This is no\n    worse than having other kinds of well-known services in your\n    system, such as databases. By following a consistent approach you\n    can provide a list of nodes dynamically - e.g. using the AWS CLI\n    to list all instances in your VPC (`aws ec2 describe-instances`).\n\n  * _custom_: you can provide a custom function that returns a list of\n    bases, resolved by your own custom approach.\n\n  * _registry_: load the list of bases from a key-value registry such\n    as [Consul](consul.io). This strategy leverages the\n    [seneca-registry](https://www.npmjs.com/package/seneca-registry)\n    set of plugins, so you can use not only _consul_, but also _etcd_,\n    _ZooKeeper_, and so on.\n\n  * _multicast_: base nodes broadcast their existence via IP\n    multicast. New services briefly listen to the broadcast to get the\n    list of base nodes, and then drop out. This keeps broadcast\n    traffic to a minimum. Note: you need to get the broadcast address\n    right for your network - time to run `ifconfig -a`!\n\n  * _guess_: If a base node is running locally, then the service can\n    find it by searching at the default location: UDP 127.0.0.1:39999.\n    If you've specified a different IP for the service to bind to,\n    then that IP will also be checked. This is the usual mode for\n    local development.\n\n\nThe strategies are executed in the order listed above. By default,\n_seneca-mesh_ only moves onto the next strategy if the current one\nfailed to produce any bases (this is configurable).\n\n\n## Message flows\n\nEach service speficies the messages patterns that it cares about using\nthe _pin_ setting. As a convenience, you can use _pin_ at the top\nlevel of the options, however the more complete form is an array of\npatterns specifications listed in the _listen_ option.\n\nThus\n\n```js\nseneca.use('mesh', {\n  pin: 'foo:bar'\n})\n```\n\nis equivalent to:\n\n```js\nseneca.use('mesh', {\n  listen: [\n    {pin: 'foo:bar'}\n  ]\n})\n```\n\nEach entry in the _listen_ array specifies the listening models for a\ngiven pattern. In particular, you can specify that the listening model:\n\n  * _consume_: assume the message is from a work queue; consume the message, and generate a reply. This is the default.\n  * _observe_: assume the message is published to multiple services; do not generate a reply\n\nAs an example, consider a microservice that generates HTML\ncontent. The `get:content` message expects a reply containing the HTML\ncontent, and is intended for just one instance of the service, to\navoid redundant work. The `clear:cache` message is published to all\ninstances of the service to indicate that underlying data for the HTML\ncontent has changed, and the content must be regenerated for the next\n`get:content` message. Define the mesh patterns as follows:\n\n\n```js\nseneca.use('mesh', {\n  listen: [\n    {pin: 'get:content'}, // model:consume; the default\n    {pin: 'clear:cache', model:'observe'}\n  ]\n})\n```\n\nSeneca-mesh uses the\n[HTTP transport](https://github.com/senecajs/seneca-transport) by default. To\nuse other transports, you can add additional options to each entry of the listen\narray. These options are passed to the transport system as if you have\ncalled `seneca.listen` directly:\n\n\n```js\nseneca.use('redis-transport')\nseneca.use('mesh', {\n  listen: [\n    {pin: 'get:content'}, // model:consume; the default\n    {pin: 'clear:cache', model:'observe', type:'redis'}\n  ]\n})\n```\n\n## Message Patterns\n\n### `role:mesh,get:members`\n\nYou can send this message to any node, and the response will be a list\nof all known patterns in the network.\n\nHere's a useful little service that lets you submit messages to the network via a REPL:\n\n\n```js\nrequire('seneca')({\n  tag: 'repl',\n  log: { level: 'none' }\n})\n  .use('mesh')\n  .repl({\n    port: 10001,\n    alias: {\n      m: 'role:mesh,get:members'\n    }\n  })\n```\n\nAnd on the command line:\n\n```sh\n# telnet localhost 10001\n```\n\nThe alias `m` can be used as a shortcut.\n\n\n## Options\n\nThe _seneca-mesh_ plugin accepts the following set of options. Specify these when loading the plugin:\n\n```js\nrequire('seneca')\n    .use('mesh', {\n      // options go here\n    })\n```\n\nThe options are:\n\n  * _isbase_: Make this node a base node. Default: false.\n\n  * _bases_: An array of pre-defined base nodes. Specify strings in\n             the format: 'IP:PORT'. Default: [].\n\n  * _pin_: the action pattern that this service will respond to. Default: null\n\n  * _listen_: an array of action patterns that this service will respond to. Default: null\n\n  * _stop_: base node discovery stops as soon as a discovery\n    strategies provides a list of suggested nodes. Default: true\n\n  * _discover_: define the base node discovery options:\n\n    * _defined_: use defined base nodes, specified via the _bases_\n      option.\n      * _active_: activate this discovery strategy. Default: true\n\n    * _custom_: provide a function with signature `function (seneca,\n      options, bases, next)` that returns an array of base nodes. See\n      unit test [`single-custom`](/test/mesh.test.js) for\n      an example.\n      * _active_: activate this discovery strategy. Default: true\n\n      * _find_: the custom function\n\n    * _registry_: use the `role:registry` patterns to load the list of\n      base nodes. Set to false to disable. Default is a set of\n      sub-options - see code for details.\n      * _active_: activate this discovery strategy. Default: true\n\n    * _multicast_: base nodes broadcast their existence via IP\n    multicast. New services briefly listen to the broadcast to get the\n    list of base nodes, and then drop out. This keeps broadcast\n    traffic to a minimum. Note: you need to get the broadcast address\n    right for your network - time to run `ifconfig -a`!\n      * _active_: activate this discovery strategy. Default: true\n\n      * _address_: the broadcast address of the network interface used\n        for multicast.\n\n    * _guess_: Guess the location of a base by assuming it is on the\n      same host. Default: true.\n      * _active_: activate this discovery strategy. Default: true\n\n\n## Full systems\n\nYou can review the source code of these example projects to see seneca-mesh in action:\n\n* [NodeZoo Live system](https://github.com/nodezoo/nodezoo-system)\n* [NodeZoo Workshop, iteration 5](https://github.com/nodezoo/nodezoo-workshop#iteration-05-mesh-networking)\n* [ramanajun.io twitter clone](https://github.com/senecajs/ramanujan)\n\n\n## Test\nTo run tests, use npm:\n\n```sh\nnpm run test\n```\n\n## Contributing\nThe [Seneca.js org][] encourages __open__ and __safe__ participation.\n\n- __[Code of Conduct][CoC]__\n\nIf you feel you can help in any way, be it with documentation, examples,\nextra testing, or new features please get in touch.\n\n\n## License\nCopyright (c) 2015-2016, Richard Rodger and other contributors.\nLicensed under [MIT][].\n\n[MIT]: ./LICENSE\n[npm-badge]: https://badge.fury.io/js/seneca-mesh.svg\n[npm-url]: https://badge.fury.io/js/seneca-mesh\n[Seneca.js org]: https://github.com/senecajs/\n[Seneca.js]: https://www.npmjs.com/package/seneca\n[@senecajs]: http://twitter.com/senecajs\n[senecajs.org]: http://senecajs.org/\n[travis-badge]: https://travis-ci.org/senecajs/seneca-mesh.svg\n[travis-url]: https://travis-ci.org/senecajs/seneca-mesh\n[gitter-badge]: https://badges.gitter.im/Join%20Chat.svg\n[gitter-url]: https://gitter.im/senecajs/seneca\n[github issue]: https://github.com/senecajs/seneca-mesh/issues\n[Balance]: https://github.com/senecajs/seneca-balance-client\n[Lead]: https://github.com/senecajs/\n[Sponsor]: http://nearform.com\n[CoC]: http://senecajs.org/contribute/details/code-of-conduct.html\n[SWIM gossip algorithm]: https://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf\n","maintainers":[{"name":"adrianrossouw","email":"npm@daemon.co.za"},{"name":"mcdonnelldean","email":"mcdonnelldean@outlook.com"},{"name":"mihaidma","email":"mihaizn@gmail.com"},{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"time":{"modified":"2022-06-26T17:39:01.651Z","created":"2015-12-15T17:16:00.416Z","0.1.0":"2015-12-15T17:16:00.416Z","0.2.0":"2015-12-24T13:55:01.628Z","0.3.0":"2015-12-27T04:10:16.599Z","0.4.0":"2016-02-02T23:59:19.932Z","0.5.0":"2016-02-06T16:15:45.474Z","0.6.0":"2016-03-10T15:44:44.316Z","0.7.0":"2016-03-11T18:14:32.630Z","0.8.0":"2016-07-28T00:13:35.727Z","0.9.0":"2016-08-26T12:41:33.450Z","0.10.0":"2017-03-07T12:45:03.182Z","0.11.0":"2017-08-10T12:34:15.850Z","0.12.0":"2018-05-28T21:18:59.228Z","1.0.0":"2019-02-19T17:42:47.314Z","1.1.0":"2019-07-22T21:43:53.342Z","1.2.1":"2019-09-09T18:19:44.231Z","1.3.0":"2020-01-28T21:54:51.217Z","1.4.0":"2020-01-30T15:19:44.009Z","1.5.0":"2020-05-15T00:57:53.818Z"},"homepage":"https://github.com/senecajs/seneca-mesh#readme","keywords":["seneca","plugin","transport","load","balance","client"],"repository":{"type":"git","url":"git+https://github.com/senecajs/seneca-mesh.git"},"contributors":[{"name":"Richard Rodger","url":"http://richardrodger.com"},{"name":"Emer Rutherford","url":"https://github.com/eeswr"},{"name":"jaamison","url":"https://github.com/jaamison"},{"name":"Dean McDonnell","url":"https://github.com/mcdonnelldean"},{"name":"Shane Lacey","url":"https://github.com/shanel262"},{"name":"Mihai Dima","url":"https://github.com/mihaidma"}],"author":{"name":"Richard Rodger","url":"http://richardrodger.com"},"bugs":{"url":"https://github.com/senecajs/seneca-mesh/issues"},"license":"MIT","readmeFilename":"README.md","users":{"rjrodger":true,"tmurngon":true}}