{"_id":"@brigade/pooled-thrift-client","_rev":"6-9dddc5bb5b292c9e296c213c3fe9466e","name":"@brigade/pooled-thrift-client","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.1":{"name":"@brigade/pooled-thrift-client","version":"1.0.1","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"dist/index.js","scripts":{"build":"babel src -d dist","lint":"eslint .","prepublish":"npm run build","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"babel-cli":"^6.26.0","babel-polyfill":"^6.26.0","babel-preset-env":"^1.6.1","eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"dc0d7abf8f36a6c2932a16f4e4d75bce9c019c5a","_id":"@brigade/pooled-thrift-client@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-/HlGKZmCniESAp3SB+VvOabnIPvDN7ZiuxAsByUiG35kIL7bdzgjBC23HREvgTHGYeqYFtU7SeaS++4nOpdbgw==","shasum":"ad8db9b717fc0914046d14935fcecf92dbf39eff","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDw9UqbFSlALBwo2lJJ4krovu7PJWv+tL5uQYh/qqhVtwIgNvh9ZIrwLUOIk7gSJCwX8WwDAhzaZ1MiQ+sXK0XUNMg="}]},"maintainers":[{"name":"anujdas","email":"anujdas@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client-1.0.1.tgz_1516655738445_0.35489339265041053"},"directories":{}},"1.0.2":{"name":"@brigade/pooled-thrift-client","version":"1.0.2","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"dist/index.js","scripts":{"build":"babel src -d dist","lint":"eslint .","prepublish":"npm run build","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"babel-runtime":"^6.26.0","generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-runtime":"^6.23.0","babel-preset-env":"^1.6.1","eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"714f92c8a53c56aa5a24aabe86cdf2381ed34d5c","_id":"@brigade/pooled-thrift-client@1.0.2","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-8+6UIK8MV/xfyqED1wNmk7wT/hcfJs8V0UDJBt55DmZvM4i2PLTDZgSSq5KXSJ8O+QeDToCbaX7IYCNEqTZGFA==","shasum":"15a9d325b78cb2b8a7be77d3029b326a8bac76c7","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-1.0.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBhwkCdbbfZGcVf1VsMLUEiI0Xpquf4P6n7Jf1gcZDjNAiEA+2lmWXyJwwgELtjb3k1mp1UFAhzCwkDqX+rZfXDeOsU="}]},"maintainers":[{"name":"trotzig","email":"henric.trotzig@gmail.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client-1.0.2.tgz_1516661469008_0.5761276814155281"},"directories":{}},"1.0.3":{"name":"@brigade/pooled-thrift-client","version":"1.0.3","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"dist/index.js","scripts":{"build":"babel src -d dist","lint":"eslint .","prepublish":"npm run build","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"babel-runtime":"^6.26.0","generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-transform-runtime":"^6.23.0","babel-preset-env":"^1.6.1","eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"5cae3ea6ba1999d183b13c804ea005801918a724","_id":"@brigade/pooled-thrift-client@1.0.3","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-cIoy+wSMv2CIYbifGYkaQyU7J5+UuJr81aoRW84/u172a0R0uvesDEbShPsElKKyLZa+aD5lTaTD4kmB2/0tGg==","shasum":"6be0df0fc70281970f09dfe1968f02aff0d21768","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-1.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNiR0SB9OiV6L9QNU7fAEBawek/L3hnPwO0kX+MilEsQIgEPISvIhgYnf11DoBA5xQXuHqY7OGDLd/QIjqeEKdBt4="}]},"maintainers":[{"name":"trotzig","email":"henric.trotzig@gmail.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client-1.0.3.tgz_1516825711636_0.22718364535830915"},"directories":{}},"1.1.0":{"name":"@brigade/pooled-thrift-client","version":"1.1.0","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"src/index.js","engines":{"node":">= 6"},"scripts":{"lint":"eslint .","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"e537a82807f345a3689b2dc39e101d844766ce43","_id":"@brigade/pooled-thrift-client@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-FE3pr1z6O0uJJKDaH0JgDxS8VIP1IYQGfCbLefjDN6/1z4uBuBS8AN9YqDACHrkX4ozqQ9yAJZ/txVUBztcHSQ==","shasum":"e040f013e3333e54f19b5e694242eca56260cf8e","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-1.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA6UP2H+l0BbbfhxWIS5MQRGinmGoob5qJfIRX31Ha9DAiBxgSEOEG/+CkuSl1TDnEswjQyJBT/E8toVZq65XO2d3Q=="}]},"maintainers":[{"name":"trotzig","email":"henric.trotzig@gmail.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client-1.1.0.tgz_1516924402885_0.2565534356981516"},"directories":{}},"1.1.1":{"name":"@brigade/pooled-thrift-client","version":"1.1.1","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"src/index.js","engines":{"node":">= 6"},"scripts":{"lint":"eslint .","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"9313a8130184e93785443a3b719de8dd4759ec88","_id":"@brigade/pooled-thrift-client@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-eKqxlZapIEhocOb2hPE9o6x61gfnyLlD5gnBmF9Y7J+YvNwQspID7OcOm+ZVcBnxFcav9lYLRmh0/jzjLE0zrw==","shasum":"5a599250043aa82977dd060a05e167c6f6a30839","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-1.1.1.tgz","fileCount":15,"unpackedSize":34893,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDzUkCRA9TVsSAnZWagAAUDUP/Ryyk51Vwoz3WhosgNKA\nLJze0LBV3xSSeb1ruxe6p2i47QaWzTrOqumzAT2kk5e97Rj7sr7Yd8OiHS5S\nhznxr6k52MorMcHjHo0acfopU9TABKtkubx+dtYAx5495ruWa1wBWEKkamYV\n+jeFEfsfBUj07jpbzh18voglgGJ0ei6/ePs9RZF9orm9zUMoKymedASBWtZ0\n4Kj0prJpiX2T2VruetwKYy+JM+aPdICwZz7lZLpGqGf6uuVyZ4bHjI7x/9C3\nVJGcZwpOdEpoVsXkgB65seJPO31Pch/+KNbbeuMVzR/xwT4QT+bq936Y5zpm\nYC115huIloJIlvpplkNBjkKIr+13axmmXp05lRyjoHLmVdd5XtqyNqyxcLt9\n6l/By/bL6HzfDtoQDXZr/VVl0a/tqB64AJn32FEx5q+FHJzKkXosDLj8jZ1/\nw8bPM39lex4xzuqWIrshC+9gyQ/3ZYBRxBiFbNv390dcomGI0xYeOjI1iugt\nefC9tMw8uqbG5rzwv2Ak5cDUbsT+/TcUJauZF5TSng5SGXm7x74EdTMTIK/a\notEZtQDfv2w0/uxjcRvCu4pgVqgfwEEZ+ERUSHcYj3VHMxPrEfmOyNkd95Oo\njJRoHrkNwP4yBsjgEyNRBodjG4dK6resxv9j0o+7La9T8MlI5EFn3IoktfZ6\nVEl6\r\n=IeMz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgOK1Cp8FlJwb1lre2ltSY9RxsZL6yD2JFCRCwMNAxfwIgEwVdkL7GsJi242dBZl/RoXoDa6ZVoFqPE31iEzeRdY8="}]},"maintainers":[{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"trotzig","email":"henric.trotzig@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client_1.1.1_1527723300284_0.25246402264505563"},"_hasShrinkwrap":false},"2.0.0":{"name":"@brigade/pooled-thrift-client","version":"2.0.0","description":"A Thrift client utilising a pool of service connections and improved error handling/recovery","main":"src/index.js","engines":{"node":">= 6"},"scripts":{"lint":"eslint .","test":"jasmine"},"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"keywords":["thrift","client","pool"],"author":{"name":"Anuj Das"},"license":"Apache-2.0","bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","dependencies":{"generic-pool":"^3.4.0","thrift":"^0.11.0"},"devDependencies":{"eslint":"^4.13.1","eslint-config-brigade":"^7.0.0","jasmine":"^2.9.0"},"gitHead":"ed90bec8e61da753d7f7f85e1bd51e3da8dd601f","_id":"@brigade/pooled-thrift-client@2.0.0","_npmVersion":"6.1.0","_nodeVersion":"8.11.1","_npmUser":{"name":"anujdas","email":"anujdas@gmail.com"},"dist":{"integrity":"sha512-HERWbrCnaSM4uY+tWUL/4yaP4402wOBoxru33H/v2V/VN1ZhYw88XDQLdDO4WV05o9OsPpkHGiuvmpX9AnD6Sw==","shasum":"1ca098345de909a4a3e989572d22a2564eb23b6d","tarball":"https://registry.npmjs.org/@brigade/pooled-thrift-client/-/pooled-thrift-client-2.0.0.tgz","fileCount":15,"unpackedSize":35665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEdQFCRA9TVsSAnZWagAAZSgP/1LHcuKShyjuTh2OkX1F\nJhC3pCPlKXyr4+YgTxZR2CeH1UvRAN0vvTdWnIsMvB/QoFe6yPVYhrSHx61g\n+qUVYBN+Lz0CzPN8VI2+0XID3hQ6lTlvW0VUcqSfc8jBqWUtxoWzQrKgJHp0\n0qquHxW9UH9ScLMFmUDjYZ6UU4DBuvv9/sfK5Ow6NBwvCpgC22atwXYKjas/\naRSk2AFz0jitBqdQ/qzrU4VlLKR0RyfkjttCt/TIEXEUdZFooONTKWbH1BSj\nYutidKt3qxWb0L9fHb877IWM67fdCauVjwoP+B75XW8ejNki3bhM7D0Jr6U9\ndmPUhLxEhEVtc+QCM4PcdkOnbDd+US9HuDIGsiwsAgH7v4eLkSVGRJgcS7c9\nVnJHddsY9KQM2JYZVPriRsbMh6cwnLNhbhrxKdaCEVD+wciS4ebkIJf3Tl1p\nG7pruLiV2mhVZnE76x+iC5isle9pdZxvO1+IJhsxD+eiXd0VQC38FEpr+UW0\nQ0QAF/NNxs1tFbZ8a2H2QOG4ez8kURGaNq/77kcP+p2wuSeUsR7ymx2RVPLk\nDtFLOU6xhwXH0E9SVtIwTnOvFnXcQtilBVHc0seuiEhIf95pIwp0jaMUkFMD\nSBQeCZ62JgKb5BQjeWjt9T2W19qB1vDZmT4D+QHQc3JxBtZ3xZ5JxkljCpUQ\n7cZb\r\n=sXAF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxpYI7O4JMoffgIcYbIE9/bXibnQ8916XgTbmMdco/PAIgAOh4NPH8qto7aWt5wNHZFQmdXW3diPr9hyGRm7L/38k="}]},"maintainers":[{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"trotzig","email":"henric.trotzig@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pooled-thrift-client_2.0.0_1527895043837_0.4112109088824387"},"_hasShrinkwrap":false}},"readme":"# pooled-thrift-client\n\n[![npm version](https://badge.fury.io/js/%40brigade%2Fpooled-thrift-client.svg)](https://badge.fury.io/js/%40brigade%2Fpooled-thrift-client)\n[![Build Status](https://travis-ci.org/brigade/pooled-thrift-client.svg?branch=master)](https://travis-ci.org/brigade/pooled-thrift-client)\n\nA node Thrift client utilising a pool of service connections and improved error handling/recovery\n\n## Features\n\n- proper Promise support in pool instance con/destruction\n- correct behaviour on \"Internal Error\", aka, socket misalignment on\n  unhandled server errors\n- better/existent timeout support for: connections, pool checkout,\n  execution\n- builtin retry support using upstream Thrift code\n- faster detection and pruning of dead connections\n- async/await compatibility and other niceties\n\n## Example usage\n\nGiven a thrift file `calculator_service.thrift` with contents:\n```thrift\nexception OutOfRange {\n  1: string message\n}\nservice CalculatorService {\n  i32 add(1:i32 num1, 2:i32 num2) throws (1:OutOfRange out_of_range)\n}\n```\n\nCompile with the `thrift` command (installable via your package manager):\n```sh\nthrift --gen js:node calculator_service.thrift\n```\n\nThis will produce JS definitions for your service, which can then be used to create a client:\n```js\nconst CalculatorService = require('./CalculatorService');\nconst thriftClient = require('pooled-thrift-client');\n\n// host and port are mandatory see other config options in comments\nconst host = '127.0.0.1', port = 9000;\nconst client = thriftClient(CalculatorService, { host, port }, { poolOptions: { max: 5 } });\n\n// use the client as you would a regular client, get pooling for free\nclient.add(1, 2).then(sum => console.log(sum));\n```\n\n## Testing\n\nTests use the `calculator_service.thrift` example service located in\n`spec/support/thrift`. A compiled version is committed to this repository; to\nrecompile it, install `thrift` using your package manager (e.g., `brew install\nthrift`), then follow the instructions in the file.\n\nTests can be run using\n```sh\nnpm test\n```\n","maintainers":[{"name":"anujdas","email":"anujdas@gmail.com"},{"name":"herbstmb","email":"M@ttherb.st"},{"name":"joinbrigade","email":"services+npm@brigade.com"},{"name":"parris","email":"parris@letswoosh.com"},{"name":"trotzig","email":"henric.trotzig@gmail.com"}],"time":{"modified":"2022-04-04T20:37:50.399Z","created":"2018-01-22T21:15:38.540Z","1.0.1":"2018-01-22T21:15:38.540Z","1.0.2":"2018-01-22T22:51:09.788Z","1.0.3":"2018-01-24T20:28:31.701Z","1.1.0":"2018-01-25T23:53:24.110Z","1.1.1":"2018-05-30T23:35:00.346Z","2.0.0":"2018-06-01T23:17:23.915Z"},"homepage":"https://github.com/brigade/pooled-thrift-client#readme","keywords":["thrift","client","pool"],"repository":{"type":"git","url":"git+https://github.com/brigade/pooled-thrift-client.git"},"author":{"name":"Anuj Das"},"bugs":{"url":"https://github.com/brigade/pooled-thrift-client/issues"},"license":"Apache-2.0","readmeFilename":"README.md"}