{"_id":"kafkajs","maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"keywords":["kafka","sasl","scram"],"dist-tags":{"beta":"2.3.0-beta.3","latest":"2.2.4"},"author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"description":"A modern Apache Kafka client for node.js","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0Abadge.svg)](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"license":"MIT","versions":{"1.17.0-beta.8":{"name":"kafkajs","version":"1.17.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0451ea81d83111f85d2b5214d66cbae9f4c59b95","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...0451ea81d83111f85d2b5214d66cbae9f4c59b95"},"gitHead":"0451ea81d83111f85d2b5214d66cbae9f4c59b95","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.8","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-8DtG5Grhb+bw1osgMCSAtegTP1N9AAGg48Da5b+WC1BQDVBWHeQ9xa3oLpf+O7B9wLCOoIgOYrpkvOZ2JOmxfQ==","shasum":"f204f17c44c22bb5271d543f5ea7d76c7912716e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.8.tgz","fileCount":387,"unpackedSize":711475,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmD/vdOlRMxllrs0VqN/J8SI97o1Y6HJd3IRVMarNAXAIgI4JSinyqhuv2c5hK6nWD+gJws78XAq6p+jBDvNqXPEE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib36hACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1zA/+LG7JWy9wBPwPHlt2T4+HHY27k2Tn6QS0KVYDeiAyivCtPnqX\r\nzg852OM9C0zVBHzfuIjG1TayZfA3N8aWN5eyPUXN0e1KSUxgn6R9zk8hM1g/\r\nZGcjn5tuRuQfzYsSjQ1fxRu0i6rzKZOioxysoWnlgPGgwUEDZovwYIKTfU8y\r\nYsrojpYJdpDfRgTRQ5VJOot06gSc4HhtlEaxzfX/uAFsJWW1szZbUQUWy4ai\r\nr51op2UzJ3FdCLVjm/rtOdP5x3zlydrOvTzcY0BJPn0Na+eZt7W9TxC+89j5\r\nRW0eypiT3fKOruUoiRY4s92d0Qah032tv7BggZ9mjeKnf8zlaZAxTGejouj8\r\nFa/Sp1quRDl+QNUo9DMBzsOvVxSigVkmF8EFBMlQKge1/SflmJg4Qp4nuyIq\r\n2e8XkTUNRH2XkI4Sz/8t3qwgBcP3EpU88SQ8l9+OwjdElYpf+b2khMNuLFNC\r\n94xTUJPUzRrqDJMKU8tUZWWc3SdB84JSoE23HYCua7XlRdy68i/RHiJGQ+Ye\r\n07VUXCbWFeG0qnmFflTr2hWkqoFXWeftkbuOLqTABAiBRnEj9oP14jv99R5G\r\ney+GovsFuhPV6iffJbY9a7/0q+W6R9J23TM/1D5Ag9ai5wZ03IyMGepKRAZD\r\nGPRh+1pSzSqQifaD1CRCRVoHL/kv6cJ5NNE=\r\n=ehi2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.8_1651474081330_0.7789847235731184"},"_hasShrinkwrap":false},"1.17.0-beta.9":{"name":"kafkajs","version":"1.17.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2c15fd71ad420aac829628026936e8eddcd41156","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...2c15fd71ad420aac829628026936e8eddcd41156"},"gitHead":"2c15fd71ad420aac829628026936e8eddcd41156","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.9","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-Hvn3Y7fSD1fTmHQJtdh5w+4fZLAFyUaE7XkL9TMmaxaxbcKVumv3Xwusg+vgYwKUUqyroSz9KW4+suRf8hdG1A==","shasum":"f8b6ee7d888f57f0a063fbacee260681cec67fa2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.9.tgz","fileCount":387,"unpackedSize":710862,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhALyXNBxNP/boJRmoYLu0y4mwkKMTVgOZHnbM2I7zPAiEAvvGvg/REsKscpH15psXd1yEOsOPu0uupeaqCpsIFB4k="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib4qDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrHuQ//SiP1bV4LV/814yL37EmE+TENF5OL/hhxhXOTv3QiaG0f1hre\r\nLSPFEnALuSLxInoYG6JNepn9XE1+yi1PCoKwsqGZvWLpJpTfHRSn2fE0kc/p\r\ns9d/zX0T5fzzNMOowX22eO24EHJGjwiL6x3dhYqmHcpYi/Ri+1obC8zJOUAV\r\ngu0FNR2U2gwQCUnDrgynzhxAGpem9UpN4AqbHFBKXKKP8HdozuQfqWp9Zsr5\r\nj4IEV0ZChFw0mgD1ya5T0aG/aOCtGF8hbpeLPpw9+JeuIIwIAF51+640GEdj\r\n4ZJbUUJKluFXMRy5/pPRJZXUypTzlfA+scG9ibeH3PDS7mD8fxpkPKAYV7At\r\nszT5pujuICQ+Zk+VHy27mINy2ZlycGc81pXu3BRwE5H0rJ2hrUdtFgDMs3w7\r\nYaPOVtmQK3+BEoHNYlGwj1i5KFZKGwuM26YgW1XcTVfBVQS69IwmOOcr55fP\r\nwZPg1FM2Yo+5YLGjh/Q+7QARPAk/VeAu0ahO6nmkAp3PfTQVH4p8FU95/HUF\r\nh9KFRzGj43tOfkCupAQG+uPf0I9WcCRYXmnkNKMCtih5qedHdhEWPFlLQ35K\r\nW9Eq07BxkPVNq8lXUE+cA4qtvV/oxse0AkMiIAs72n5bWvCKxrdWqD3Ds25l\r\nk/6Btu1uGUWc2hROfqpt8mLsQkUZqXetaTc=\r\n=6nFj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.9_1651477122971_0.33339418085740236"},"_hasShrinkwrap":false},"1.17.0-beta.6":{"name":"kafkajs","version":"1.17.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"77d2bf831efd1f3528db2b7d65edd77412e71b59","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...77d2bf831efd1f3528db2b7d65edd77412e71b59"},"gitHead":"77d2bf831efd1f3528db2b7d65edd77412e71b59","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.6","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-TaKH1uB/E3rLeVbcyS4Jv+RVSeAHWTUb8sVLpFCfHni+ZAvpHNhxx6DcSZZ0AdsXNsiJTld18QETraTEo2MDpQ==","shasum":"723fba14c09df97daa16353dba5f7da070f04008","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.6.tgz","fileCount":388,"unpackedSize":712191,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICXp4QQ/n5ppmg08l0h41eOyvpvwmyGrKGzX+G3oV9I1AiAG2bs6zV0dd+w3LhrpE/xsZ/KjbnzyTyZCQIHXHGK27A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUCnZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmotfA/9Eyjg7ruAmgtvOjo04BU4XAnf0imMrQbfPNA8eXilXhV4vUyY\r\nMu/jPo6K7HzffNvF1ZXXyOVFrnh1BKlMmYbq+4qnZlG5z4rT185rsfmMir08\r\noCTB1IOdQk1abRx8uNrEKGfchGEDPES2okiYiAt92BbDDyQQ454DJmBecJ+d\r\nzZkcxRithblcbVj7x3I5f9kXDUB6BJ6BUFQ36XhzZiLiVG95f4nAt5mgxIh7\r\nLO96Nm8LssJ0Ulemy917gL9x5yStULOfmUxnbPhcGYzQ4fKBsVhz7yAq0h1E\r\nzZLqsfbwNgWLOekqPDDHXMDRkp9SLKRMPyFgHXXX+ZV91x9+Wj/BKqu1zqA7\r\nj3tFLlwD7DNWcEMDR+hUA1q3K0Bz5Xr+4QmPYF0NAFK5b2gXHkMlJnwnjnfv\r\nHlF/oDgJ6hQiZjWfmMU/ISCwCSmk47zmc3iuJqZDYyElJC8rml8YzGkPx+Ex\r\nZcB7wz41xWc1dWuzG5UPDiK1Q2kbxMgYasccKNupfSpN6/+wlVeu3ak2GBzP\r\n3XEsKgoA+Sb4i1YczKs5uoYvHyXkEf9THQzeI4m+Hr1d6clyBVk7wLhqmj0s\r\nHd8m1oRPavmhQLYGAfm5DrlbpKIBjKM/XZW/97VsBg0pjXDnCmVmq8lisnYB\r\nGCcWW++3vSLpO4con6qo2hwRVVTuT97Q3Og=\r\n=QGB/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.6_1649420761434_0.991641039483875"},"_hasShrinkwrap":false},"1.17.0-beta.7":{"name":"kafkajs","version":"1.17.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"cb05082d79d6a452df9fdd9c4f898c43ffc01892","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...cb05082d79d6a452df9fdd9c4f898c43ffc01892"},"gitHead":"cb05082d79d6a452df9fdd9c4f898c43ffc01892","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.7","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-1/qCa5/p1GikOnT+LIlVioQNHe3UfcqQK420ereCswDnVoALZevy0XEoqmzYCMD8g08IOK2kX1rC9G8UgeLx+w==","shasum":"7d6268dd648307cbac740a44356f51178626c736","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.7.tgz","fileCount":388,"unpackedSize":712190,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBN3k8bJ7dh2KT1PIHdaDfDTwtZlyjC9U/mRjNgo6SEHAiA+B8XjKCuKfZZWI8W9SK7GZUGaIekOpZQ4Z90eCbmswA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib3uvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqM+xAAjMF6P+sWmSXiU+EXPvf9TYMaP0JXd+v2YWAE3r4K6d5vKAl6\r\nQBblMwPnVTysj2N7yKsWLeqG1VgXEkc1nkgvkXIVQeeGHSku0fqVgjzPz39l\r\nNeeJCWOGhbgfgaGYTTOjFSe7eonUXogzTBJUcYouPpLJ4umsv+CUCptABMpd\r\nJGPfg1kLlAQVUPuhr3RsYrpjssfwHXJ6m7upko1jjkvwzo1mPUPmJiUzOvht\r\nhJI5Db3xdBPJT6WnTidD7CVwwRS78Nz04OduH90TIE2NTkNMsVBLlmI6iutU\r\n6XLAvo2hqj9El3wxErPO/2xkuGN6j9hLF2nH/8NZQQWqyqU9cAnwTcQZ3Fot\r\nztMmlyaeSbq9A92s5k+gDY4cRp5m2ApNqoys47gpWjqfavvneUkqHpmofP2u\r\n3eJOcsSuqm/8a/J8GItsGLhUdT6I3vTVbwQVZRDmBrp2SuoAVfJzSDVlK6Vg\r\nEvGDbeT59Osa1vjXv0HHjnrvfg7IS2M3vD3P91/DpdV+m/tv8XCzEmKyShwt\r\nBv9oeMMM5ZIpbKISuS9yq9z1WBmW50/Pb/eIbYDFhVs6ONCF9gVjNw8jJv0n\r\nMNFJh/tQy0SVtkVsd6x3VGvdA7KWTdAk8oGwGW24ruZTK1qTgkss2hgtLJRw\r\newAGJZHikX9JVroPyVVi/gY6C/YXsvV8MwM=\r\n=Z80i\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.7_1651473327161_0.9954414005693082"},"_hasShrinkwrap":false},"0.2.0":{"name":"kafkajs","version":"0.2.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"src/index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"e4bbd907c01875b792e0bde29eca18db721be85a","_id":"kafkajs@0.2.0","_npmVersion":"5.4.2","_nodeVersion":"8.8.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-nRZqN6ydbBQ2tnsb4jcd+XxeJTzpdzEv+oMRBmusRGC4Nkux9DfXRzVb4mD6aqA4ZMPGn9n8kuXtHOBDjxleiQ==","shasum":"2ca96a6e24a081dd43d9c8e2682690a76102c25e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIaFkzYnDEIM3Ec/PZOqH2oGNFrJcB6AxQdIZs0DoLRQIhAO8SQETT4zRp78+BEoA2FTEO0WTN8kkDeMjCBpdBISF9"}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.2.0.tgz_1510613534734_0.8126008815597743"},"directories":{}},"1.5.0-beta.3":{"name":"kafkajs","version":"1.5.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"readme":"[![KafkaJS](https://raw.githubusercontent.com/tulios/kafkajs/master/logo.png)](https://kafka.js.org)\n\n# [KafkaJS](https://kafka.js.org)\n\n[![Build Status](https://travis-ci.org/tulios/kafkajs.svg?branch=master)](https://travis-ci.org/tulios/kafkajs)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Admin client\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\n// Producing\nconst producer = kafka.producer()\n\nawait producer.connect()\nawait producer.send({\n  topic: 'test-topic',\n  messages: [\n    { value: 'Hello KafkaJS user!' },\n  ],\n})\n\n// Consuming\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'test-topic' })\n\nawait consumer.run({\n  eachMessage: async ({ topic, partition, message }) => {\n    console.log({\n      value: message.value.toString(),\n    })\n  },\n})\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\n### <a name=\"contributing-resources\"></a> Resources\n\nhttps://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol\n\nhttps://kafka.apache.org/protocol.html\n\n\n### <a name=\"contributing-testing\"></a> Testing\n\n```sh\nyarn test\n```\n\nor\n\n```sh\n# This will run a kafka cluster configured with your current IP\n./scripts/dockerComposeUp.sh\n./scripts/createScramCredentials.sh\nyarn test:local\n\n# To run with logs\n# KAFKAJS_LOG_LEVEL=debug yarn test:local\n```\n\nPassword for test keystore and certificates: `testtest`\nPassword for SASL `test:testtest`\n\n### <a name=\"environment-variables\"></a> Environment variables\n\n| variable                       | description                              | default |\n| ------------------------------ | ---------------------------------------- | ------- |\n| KAFKAJS_DEBUG_PROTOCOL_BUFFERS | Output raw protocol buffers in debug log | 0       |\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the logo ❤️\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","gitHead":"ede53cdb1ed5f2d8d69a1d660a59cc20f4fea519","_id":"kafkajs@1.5.0-beta.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-3xnyRiK02iCkN5DEXTk8z798yVEpW/UWzqxER+sCDKDp0w564vbz4kULmpnUBvgDeP52R7tBI3nPU+2qdVYCiw==","shasum":"95cfdd99e8d542a4637f14e101dacedaafa696bc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0-beta.3.tgz","fileCount":216,"unpackedSize":382084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbSa+CRA9TVsSAnZWagAAv/sP/1YDAgul18D6Zo52/CP0\ny2Xzg/QMGb4cG0Zm8cmVPlE9vcNtLbhXu7XZp+c7WLJ8cVouHuOsJTWhBiAK\ni+WvOMucK46MbkriOq5eCMhfFrGDPj/6wqZNCtTDcvecyaDwdrKx0DbMyzVB\nknE5flkVcxNu0T/7j1hSPw0RqabB4vplX089c6/KmZjjbLd+lrH9np1OzKNv\n6sxpEIWBeJZbOEhKpsOBqq9cOkegvJKnjA6qsTW8cV7K26ZBbxwFFCYLJGJN\nqhjxskuLocQzyjuFkL5HEW8zAOL6grNEOOnBsxlVK978Oxsg/v/pJIKmVUD3\nEYUO+kzhJE0vx1FCig8Jo6q0POC1J3/tBk3cCrmWh2iY1UVLd3//bbXmyb5D\nd3eAg0bRxlEKVf9yrECcgzJ6k9wO+s4pCwwQnsLZJ45IxzTl/C6dS216BpAQ\ng/lJS2g7K8qkwflJJew1ldKeDETlUWJvYxykI+kZmjnnb14/3tjfGoCZr5QM\ntCxmdwWEMWqJMxt5UTd/twcWUpW7+4eq9cgvTmE3u+a+gXlbLZzYWI3YybzY\nddmIef3mcrIzbdrqpkEVzhy+ZwaUdCXs/fi0jOvlwovfF9lgDZpafpWRVfSw\nf9sgNagtv5e6nLWlL4LUP7NscVUaL/JB91GqX1q+DOKvzLNkdlWpHh6zAKZ7\nMzhC\r\n=r+Ww\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICIl+na5jpfLfAC3eI2bE57F4+xrPGLJmNiJAWb9cq+7AiEAjn70F9ACitdr8r0+DfUyy0yNTL9mbpr8yzzFE93864o="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0-beta.3_1550657213442_0.7378234852068746"},"_hasShrinkwrap":false},"1.5.0-beta.4":{"name":"kafkajs","version":"1.5.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"readme":"[![KafkaJS](https://raw.githubusercontent.com/tulios/kafkajs/master/logo.png)](https://kafka.js.org)\n\n# [KafkaJS](https://kafka.js.org)\n\n[![Build Status](https://travis-ci.org/tulios/kafkajs.svg?branch=master)](https://travis-ci.org/tulios/kafkajs)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Admin client\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\n// Producing\nconst producer = kafka.producer()\n\nawait producer.connect()\nawait producer.send({\n  topic: 'test-topic',\n  messages: [\n    { value: 'Hello KafkaJS user!' },\n  ],\n})\n\n// Consuming\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'test-topic' })\n\nawait consumer.run({\n  eachMessage: async ({ topic, partition, message }) => {\n    console.log({\n      value: message.value.toString(),\n    })\n  },\n})\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\n### <a name=\"contributing-resources\"></a> Resources\n\nhttps://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol\n\nhttps://kafka.apache.org/protocol.html\n\n\n### <a name=\"contributing-testing\"></a> Testing\n\n```sh\nyarn test\n```\n\nor\n\n```sh\n# This will run a kafka cluster configured with your current IP\n./scripts/dockerComposeUp.sh\n./scripts/createScramCredentials.sh\nyarn test:local\n\n# To run with logs\n# KAFKAJS_LOG_LEVEL=debug yarn test:local\n```\n\nPassword for test keystore and certificates: `testtest`\nPassword for SASL `test:testtest`\n\n### <a name=\"environment-variables\"></a> Environment variables\n\n| variable                       | description                              | default |\n| ------------------------------ | ---------------------------------------- | ------- |\n| KAFKAJS_DEBUG_PROTOCOL_BUFFERS | Output raw protocol buffers in debug log | 0       |\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the logo ❤️\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","gitHead":"955a401730a80fbb736aa75187e53dc7b4d8167f","_id":"kafkajs@1.5.0-beta.4","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-pHw2rAFlP8oulLHuF1UsBi8E4DP+Ay1dF6xQhpxiuNXjwgxQCyBdG+yHAoOlF5IjCj2nW7Ufh/0BA/4QlLVyLA==","shasum":"0c70f38b0c25a3fa2fbbb08701d5255e110de68d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0-beta.4.tgz","fileCount":217,"unpackedSize":383784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcd6lECRA9TVsSAnZWagAA5GkP/2PuO+NIFYZc0B/v66uJ\nM5wPaIqRXY7Qg1fV4ruTVs2cips5cuLemEB5oGN1iEDs62e4VJFiYd9HM1zw\nGu2RvkYMpNFUMJaf8ivCgVHhBzPizHpyeKZM0EUdiaeIYT57nNkt6pTjUF36\nP912KGrkjvxkXoknORGn0QD9MTUJIST4V38gb+URUpmvFPi3NdigadRAcFGg\nqSwUTQqnay6ze3eB8i9hib7Ia8jqNT8RHv4MSvYvtL1Um7MaQHa/5iey1t3e\n85ISK7lAdsRdzKQ43hM82hlY0wXNf7s8Ag5fVgvdOsuE6JQA9KDa5RauwXvu\nmgq2eVWmiPlNX96qdmdJh7gdmAdGKZgSe1cmK7nueJjf915RkP5Cvhn0ysiM\nv03O0FBj7LUbDEux7Pqb+0hRQr6V6O3ibscnzrvpgGeOSVdRgruheFz8zka8\ngCh/cFPyb9Z+DAqoT0uUn2wzTMVJQj63rjJhI9fXeco3IGcsIn5TSWIQXsaZ\n2Pf4eRcdOBZaCtoaeu7YaMEIm+M4TBXPRawY6Oly5d3hKZoxMtqc87AhYwsh\nfJhr6TA+/wJa5jQlEGm1F9RKBGbcjk42/LjNnTlx3a/wVGRlKToMNxn8mt87\nPSQp/UKG96k8NjhC0FmSuLNR1UhWHFBsnHPOxCI5Qc1/tvnwuTHJ68vD8V8M\n1rrG\r\n=Gxc3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvIgh5OmmgvOBMlDtTuhYzUGevpqmHKXOZx3R/koL+8AIhAJHSBxjwrCLc8PF83fpyAyH0eEhBf7agCLqdvzaEjmM0"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0-beta.4_1551345987589_0.2569707289955476"},"_hasShrinkwrap":false},"1.10.0-beta.0":{"name":"kafkajs","version":"1.10.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"43e325e18133b8d6c1c80f8e95ef8610c44ec631","compare":"https://github.com/tulios/kafkajs/compare/master...43e325e18133b8d6c1c80f8e95ef8610c44ec631"},"gitHead":"43e325e18133b8d6c1c80f8e95ef8610c44ec631","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.10.0-beta.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-sBszea4rzBpC/qVUzDPIxwb0SrerGoVuP7QhagFFiFOnTK9MTgnzZUEzu4GPewu5/B3MXiBT21MKs3S+q3QZQg==","shasum":"2858b29d364bb7fc43d685dd0467f92ea1139fef","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.10.0-beta.0.tgz","fileCount":264,"unpackedSize":469761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdOvLGCRA9TVsSAnZWagAAt1sP/2rkQ6qD7iLt3vNpJPsb\n3EQo5yo5Loon1Qxp97QkKYIt1eKSBzVJX8LzLuUI6s0nGOP8QyIXss2+Nfn4\neh8NMZwB0doFr762mWw8v4u/TUW9PyJxS171QZhtseYhRTU5w5779ksI+DsK\n3gnA0vhn4ZMnCSK7uQqyIdlIz95U6wvjhCDtW+s5ZCeS6V/OWx9VuadzWy5M\nWl/liE/QAO/LfAONzKZiLbMKCMu5dTdkQG2Ub1WdtHPOd4nHKIlyMfiawLGs\n5sTNaDUTGYjCER5CDmG75/8pzOsT6uGPibZkHOF07hUYfMdlY+1Yfqx6x+cF\noOHIeEjmk81Jp8SIQZANCVsUemAXmfk9AeCEb0w++TL/QV/XMDwnfqi7GKBU\nevaFZkGR4Ao6mQfjPJcAo7XL7f2bIxzRH1mMRg3OWThilbzVFhDYbuu1ryNc\n6kOLErOHpKHWoWZc58RLpVzp0EF/g7X9pySdqKF49tV5yjnKeOysYcO2eKN1\navv0QRxHCptxx++YSHW1savvnzBTwwQy3vMlNim3pgzUoMXiBWsTDpvdAcg/\nr1UKCyK4bMhckt6Ff/cCBuNVz7GS3rY0DDh30AhqrhpXqEyxfkvB5U5WgQcY\nFHMz2J22mbto2Et470XicWrzqmuHe9KwmmrGLFPUNgPOUcxa2k23MW2voeAB\nUqCq\r\n=gE7o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG+72FLsDdyVBccaQIxB1JOPknEZpAdk8yxSbFknZUXoAiAO5YBe8WEqx3RJywBscAxTnqU35oq7kzA0UE1hZzt0Fw=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.10.0-beta.0_1564144326192_0.676925379849078"},"_hasShrinkwrap":false},"1.5.0-beta.1":{"name":"kafkajs","version":"1.5.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"readme":"[![KafkaJS](https://raw.githubusercontent.com/tulios/kafkajs/master/logo.png)](https://github.com/tulios/kafkajs)\n\n# KafkaJS\n\n[![Build Status](https://travis-ci.org/tulios/kafkajs.svg?branch=master)](https://travis-ci.org/tulios/kafkajs)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Admin client\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Configuration](#configuration)\n  - [SSL](#configuration-ssl)\n  - [SASL](#configuration-sasl)\n  - [Connection timeout](#configuration-connection-timeout)\n  - [Request timeout](#configuration-request-timeout)\n  - [Default retry](#configuration-default-retry)\n  - [Logging](#configuration-logging)\n- [Producing messages](#producing-messages)\n  - [Message headers](#producer-message-headers)\n  - [Producing to multiple topics](#producing-messages-to-multiple-topics)\n  - [Options](#producing-messages-options)\n  - [Custom partitioner](#producing-messages-custom-partitioner)\n  - [Retry](#producing-messages-retry)\n  - [Transactions](#producer-transactions)\n    - [Sending Messages](#producer-transaction-messages)\n    - [Sending Offsets](#producer-transaction-offsets)\n  - [Compression](#producing-messages-compression)\n    - [GZIP](#producing-messages-compression-gzip)\n    - [Snappy](#producing-messages-compression-snappy)\n    - [LZ4](#producing-messages-compression-lz4)\n    - [Other](#producing-messages-compression-other)\n- [Consuming messages](#consuming-messages)\n  - [eachMessage](#consuming-messages-each-message)\n  - [eachBatch](#consuming-messages-each-batch)\n  - [autoCommit](#consuming-messages-auto-commit)\n  - [fromBeginning](#consuming-messages-from-beginning)\n  - [Options](#consuming-messages-options)\n  - [Pause & Resume](#consuming-messages-pause-resume)\n  - [Seek](#consuming-messages-seek)\n  - [Custom partition assigner](#consuming-messages-custom-partition-assigner)\n  - [Describe group](#consuming-messages-describe-group)\n  - [Compression](#consuming-messages-compression)\n- [Admin](#admin)\n  - [Create topics](#admin-create-topics)\n  - [Delete topics](#admin-delete-topics)\n  - [Get topic metadata](#admin-get-topic-metadata)\n  - [Fetch consumer group offsets](#admin-fetch-offsets)\n  - [Reset consumer group offsets](#admin-reset-offsets)\n  - [Set consumer group offsets](#admin-set-offsets)\n  - [Describe configs](#admin-describe-configs)\n  - [Alter configs](#admin-alter-configs)\n- [Instrumentation](#instrumentation)\n- [Custom logging](#custom-logging)\n- [Retry (detailed)](#configuration-default-retry-detailed)\n- [Development](#development)\n  - [Environment variables](#environment-variables)\n\n## <a name=\"installation\"></a> Installation\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n## <a name=\"configuration\"></a> Configuration\n\nThe client must be configured with at least one broker. The brokers on the list are considered seed brokers and are only used to bootstrap the client and load initial metadata.\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\n// Create the client with the broker list\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n```\n\n### <a name=\"configuration-ssl\"></a> SSL\n\nThe `ssl` option can be used to configure the TLS sockets. The options are passed directly to [`tls.connect`](https://nodejs.org/api/tls.html#tls_tls_connect_options_callback) and used to create the TLS Secure Context, all options are accepted.\n\n```javascript\nconst fs = require('fs')\n\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  ssl: {\n    rejectUnauthorized: false,\n    ca: [fs.readFileSync('/my/custom/ca.crt', 'utf-8')],\n    key: fs.readFileSync('/my/custom/client-key.pem', 'utf-8'),\n    cert: fs.readFileSync('/my/custom/client-cert.pem', 'utf-8')\n  },\n})\n```\n\nRefer to [TLS create secure context](https://nodejs.org/dist/latest-v8.x/docs/api/tls.html#tls_tls_createsecurecontext_options) for more information. `NODE_EXTRA_CA_CERTS` can be used to add custom CAs. Use `ssl: true` if you don't have any extra configurations and want to enable SSL.\n\n### <a name=\"configuration-sasl\"></a> SASL\n\nKafka has support for using SASL to authenticate clients. The `sasl` option can be used to configure the authentication mechanism. Currently, KafkaJS supports `PLAIN`, `SCRAM-SHA-256`, and `SCRAM-SHA-512` mechanisms.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  // authenticationTimeout: 1000,\n  sasl: {\n    mechanism: 'plain', // scram-sha-256 or scram-sha-512\n    username: 'my-username',\n    password: 'my-password'\n  },\n})\n```\n\nIt is __highly recommended__ that you use SSL for encryption when using `PLAIN`.\n\n### <a name=\"configuration-connection-timeout\"></a> Connection Timeout\n\nTime in milliseconds to wait for a successful connection. The default value is: `1000`.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  connectionTimeout: 3000\n})\n```\n\n### <a name=\"configuration-request-timeout\"></a> Request Timeout\n\nTime in milliseconds to wait for a successful request. The default value is: `30000`.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  requestTimeout: 25000\n})\n```\n\n### <a name=\"configuration-default-retry\"></a> Default Retry\n\nThe `retry` option can be used to set the configuration of the retry mechanism, which is used to retry connections and API calls to Kafka (when using producers or consumers).\n\nThe retry mechanism uses a randomization function that grows exponentially.\n[Detailed example](#configuration-default-retry-detailed)\n\nIf the max number of retries is exceeded the retrier will throw `KafkaJSNumberOfRetriesExceeded` and interrupt. Producers will bubble up the error to the user code; Consumers will wait the retry time attached to the exception (it will be based on the number of attempts) and perform a full restart.\n\n__Available options:__\n\n| option           | description                                                                                                             | default |\n| ---------------- | ----------------------------------------------------------------------------------------------------------------------- | ------- |\n| maxRetryTime     | Maximum wait time for a retry in milliseconds                                                                           | `30000` |\n| initialRetryTime | Initial value used to calculate the retry in milliseconds (This is still randomized following the randomization factor) | `300`   |\n| factor           | Randomization factor                                                                                                    | `0.2`   |\n| multiplier       | Exponential factor                                                                                                      | `2`     |\n| retries          | Max number of retries per call                                                                                          | `5`     |\n| maxInFlightRequests          | Max number of requests that may be in progress at any time. If falsey then no limit.   | `null` _(no limit)_\n\nExample:\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  retry: {\n    initialRetryTime: 100,\n    retries: 8\n  }\n})\n```\n\n### <a name=\"configuration-logging\"></a> Logging\n\nKafkaJS has a built-in `STDOUT` logger which outputs JSON. It also accepts a custom log creator which allows you to integrate your favorite logger library. There are 5 log levels available: `NOTHING`, `ERROR`, `WARN`, `INFO`, and `DEBUG`. `INFO` is configured by default.\n\n##### Log level\n\n```javascript\nconst { Kafka, logLevel } = require('kafkajs')\n\n// Create the client with the broker list\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  logLevel: logLevel.ERROR\n})\n```\n\nThe environment variable `KAFKAJS_LOG_LEVEL` can also be used and it has precedence over the configuration in code, example:\n\n```sh\nKAFKAJS_LOG_LEVEL=info node code.js\n```\n\nNOTE: for more information on how to customize your logs, take a look at [Custom logging](#custom-logging)\n\n## <a name=\"producing-messages\"></a> Producing Messages\n\nTo publish messages to Kafka you have to create a producer. Simply call the `producer` function of the client to create it:\n\n```javascript\nconst producer = kafka.producer()\n```\n\nThe method `send` is used to publish messages to the Kafka cluster.\n\n```javascript\nconst producer = kafka.producer() // or with options kafka.producer({ metadataMaxAge: 300000 })\n\nasync () => {\n  await producer.connect()\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n\n  // before you exit your app\n  await producer.disconnect()\n}\n```\n\nExample with a defined partition:\n\n```javascript\n// ...require and connect...\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      { key: 'key1', value: 'hello world', partition: 0 },\n      { key: 'key2', value: 'hey hey!', partition: 1 }\n    ],\n  })\n}\n```\n\nThe method `send` has the following signature:\n\n```javascript\nawait producer.send({\n  topic: <String>,\n  messages: <Message[]>,\n  acks: <Number>,\n  timeout: <Number>,\n  compression: <CompressionTypes>,\n})\n```\n\n| property    | description                                                                                       | default |\n| ----------- |-------------------------------------------------------------------------------------------------- | ------- |\n| topic       | topic name                                                                                        | `null`  |\n| messages    | An array of objects with \"key\" and \"value\", example: <br> `[{ key: 'my-key', value: 'my-value'}]` | `null`  |\n| acks        | Control the number of required acks. <br> __-1__ = all replicas must acknowledge _(default)_ <br> __0__ = no acknowledgments <br> __1__ = only waits for the leader to acknowledge | `-1` all replicas must acknowledge |\n| timeout     | The time to await a response in ms                                                                | `30000` |\n| compression | Compression codec                                                                                 | `CompressionTypes.None` |\n| transactionTimeout | The maximum amount of time in ms that the transaction coordinator will wait for a transaction status update from the producer before proactively aborting the ongoing transaction. If this value is larger than the `transaction.max.timeout.ms` setting in the __broker__, the request will fail with a `InvalidTransactionTimeout` error | `60000` |\n| idempotent     | _Experimental._ If enabled producer will ensure each message is written exactly once. Acks _must_ be set to -1 (\"all\"). Retries will default to MAX_SAFE_INTEGER.                                                                | `false` |\n\nBy default, the producer is configured to distribute the messages with the following logic:\n\n- If a partition is specified in the message, use it\n- If no partition is specified but a key is present choose a partition based on a hash (murmur2) of the key\n- If no partition or key is present choose a partition in a round-robin fashion\n\n### <a name=\"producer-message-headers\"></a> Message headers\n\nKafka v0.11 introduces record headers, which allows your messages to carry extra metadata. To send headers with your message, include the key `headers` with the values. Example:\n\n```javascript\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      {\n        key: 'key1',\n        value: 'hello world',\n        headers: {\n          'correlation-id': '2bfb68bb-893a-423b-a7fa-7b568cad5b67',\n          'system-id': 'my-system'\n        }\n      },\n    ]\n  })\n}\n```\n\n### <a name=\"producing-messages-to-multiple-topics\"></a> Producing to multiple topics\n\nTo produce to multiple topics at the same time, use `sendBatch`. This can be useful, for example, when migrating between two topics.\n\n```javascript\nconst topicMessages = [\n  {\n    topic: 'topic-a',\n    messages: [{ key: 'key', value: 'hello topic-a' }],\n  },\n  {\n    topic: 'topic-b',\n    messages: [{ key: 'key', value: 'hello topic-b' }],\n  },\n  {\n    topic: 'topic-c',\n    messages: [\n      {\n        key: 'key',\n        value: 'hello topic-c',\n        headers: {\n          'correlation-id': '2bfb68bb-893a-423b-a7fa-7b568cad5b67',\n        },\n      }\n    ],\n  }\n]\nawait producer.sendBatch({ topicMessages })\n```\n\n`sendBatch` has the same signature as `send`, except `topic` and `messages` are replaced with `topicMessages`:\n\n```javascript\nawait producer.sendBatch({\n  topicMessages: <TopicMessages[]>,\n  acks: <Number>,\n  timeout: <Number>,\n  compression: <CompressionTypes>,\n})\n```\n\n| property      | description                                                                                                |\n| ------------- | ---------------------------------------------------------------------------------------------------------- |\n| topicMessages | An array of objects with `topic` and `messages`.<br>`messages` is an array of the same type as for `send`. |\n\n### <a name=\"producing-messages-options\"></a> Options\n\n| option                 | description                                                                          | default |\n| ---------------------- | ------------------------------------------------------------------------------------ | ------- |\n| createPartitioner      | Take a look at [Custom](#producing-messages-custom-partitioner) for more information | `null`  |\n| retry                  | Take a look at [Producer Retry](#producing-messages-retry) for more information      | `null`  |\n| metadataMaxAge         | The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions | `300000` - 5 minutes |\n| allowAutoTopicCreation | Allow topic creation when querying metadata for non-existent topics                  | `true`  |\n\n### <a name=\"producing-messages-custom-partitioner\"></a> Custom partitioner\n\nIt's possible to assign a custom partitioner to the producer. A partitioner is a function which returns another function responsible for the partition selection, something like this:\n\n```javascript\nconst MyPartitioner = () => {\n  // some initialization\n  return ({ topic, partitionMetadata, message }) => {\n    // select a partition based on some logic\n    // return the partition number\n    return 0\n  }\n}\n```\n\n`partitionMetadata` is an array of partitions with the following structure:\n\n`{ partitionId: <NodeId>, leader: <NodeId> }`\n\nExample:\n\n```javascript\n[\n  { partitionId: 1, leader: 1 },\n  { partitionId: 2, leader: 2 },\n  { partitionId: 0, leader: 0 }\n]\n```\n\nTo Configure your partitioner use the option `createPartitioner`.\n\n```javascript\nkafka.producer({ createPartitioner: MyPartitioner })\n```\n\n### <a name=\"producing-messages-retry\"></a> Retry\n\nThe option `retry` can be used to customize the configuration for the producer.\n\nTake a look at [Retry](#configuration-default-retry) for more information.\n\n### <a name=\"producer-transactions\"></a> Transactions\n\nKafkaJS provides a a simple interface to support Kafka transactions (requires Kafka >= v0.11).\n\n#### <a name=\"producer-transaction-messages\"></a> Sending Messages within a Transaction\n\nYou initialize a transaction by making an async call to `producer.transaction()`. The returned transaction object has the methods `send` and `sendBatch` with an identical signature to the producer. When you are done you call `transaction.commit()` or `transaction.abort()` to end the transaction. A transactionally aware consumer will only read messages which were committed.\n\n_Note_: Kafka requires that the transactional producer have the following configuration to _guarantee_ EoS (\"Exactly-once-semantics\"):\n\n- The producer must have a max in flight requests of 1\n- The producer must wait for acknowledgement from all replices (acks=-1)\n- The producer must have unlimitted retries\n\n```javascript\nconst client = new Kafka({\n  clientId: 'transactional-client',\n  brokers: ['kafka1:9092'],\n  // Cannot guarantee EoS without max in flight requests of 1\n  maxInFlightRequests: 1,\n})\n// Setting `idempotent` to `true` will correctly configure the producer\n// to use unlimitted retries and enforce acks from all replices\nconst producer = client.producer({ idempotent: true })\n\n// Begin a transaction\nconst  transaction = await producer.transaction()\n\ntry {\n  // Call one of the transaction's send methods\n  await transaction.send({ topic, messages })\n\n  // Commit the transaction\n  await transaction.commit()\n} catch (e) {\n  // Abort the transaction in event of failure\n  await transaction.abort()\n}\n```\n\n#### <a name=\"producer-transaction-offsets\"></a> Sending Offsets\n\nTo send offsets as part of a transaction, meaning they will be committed only if the transaction succeeds, use the `transaction.sendOffsets()` method. This is necessary whenever we want a transaction to produce messages derived from a consumer, in a \"consume-transform-produce\" loop.\n\n```javascript\nawait transaction.sendOffsets({\n  consumerGroupId, topics\n})\n```\n\n`topics` has the following structure:\n\n```\n[{\n  topic: <String>,\n  partitions: [{\n    partition: <Number>,\n    offset: <String>\n  }]\n}]\n```\n\n### <a name=\"producing-messages-compression\"></a> Compression\n\nSince KafkaJS aims to have as small footprint and as little dependencies as possible, only GZIP codec is part of the core functionality. Providing plugins supporting other codecs might be considered in the future.\n\n#### <a name=\"producing-messages-compression-gzip\"></a> GZIP\n\n```javascript\nconst { CompressionTypes } = require('kafkajs')\n\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    compression: CompressionTypes.GZIP,\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n}\n```\n\nThe consumers know how to decompress GZIP, so no further work is necessary.\n\n#### <a name=\"producing-messages-compression-snappy\"></a> Snappy\n\nSnappy support is provided by the package `kafkajs-snappy`\n\n```sh\nnpm install kafkajs-snappy\n# yarn add kafkajs-snappy\n```\n\n```javascript\nconst {  CompressionTypes, CompressionCodecs } = require('kafkajs')\nconst SnappyCodec = require('kafkajs-snappy')\n\nCompressionCodecs[CompressionTypes.Snappy] = SnappyCodec\n```\n\nTake a look at the official [readme](https://github.com/tulios/kafkajs-snappy) for more information\n\n#### <a name=\"producing-messages-compression-lz4\"></a> LZ4\n\nLZ4 support is provided by the package `kafkajs-lz4`\n\n```sh\nnpm install kafkajs-lz4\n# yarn add kafkajs-lz4\n```\n\n```javascript\nconst { CompressionTypes, CompressionCodecs } = require('kafkajs')\nconst LZ4 = require('kafkajs-lz4')\n\nCompressionCodecs[CompressionTypes.LZ4] = new LZ4().codec\n```\n\nThe package also accepts options to granularly control LZ4 compression & decompression. Take a look at the official [readme](https://github.com/indix/kafkajs-lz4) for more information.\n\n#### <a name=\"producing-messages-compression-other\"></a> Other\n\nAny other codec than GZIP can be easily implemented using existing libraries.\n\nA codec is an object with two `async` functions: `compress` and `decompress`. Import the libraries and define the codec object:\n\n```javascript\nconst MyCustomSnappyCodec = {\n  async compress(encoder) {\n    return someCompressFunction(encoder.buffer)\n  },\n\n  async decompress(buffer) {\n    return someDecompressFunction(buffer)\n  }\n}\n```\n\nNow that we have the codec object, we can add it to the implementation:\n\n```javascript\nconst { CompressionTypes, CompressionCodecs } = require('kafkajs')\nCompressionCodecs[CompressionTypes.Snappy] = MyCustomSnappyCodec\n```\n\nThe new codec can now be used with the `send` method, example:\n\n```javascript\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    compression: CompressionTypes.Snappy,\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n}\n```\n\n## <a name=\"consuming-messages\"></a> Consuming messages from Kafka\n\nConsumer groups allow a group of machines or processes to coordinate access to a list of topics, distributing the load among the consumers. When a consumer fails the load is automatically distributed to other members of the group. Consumer groups __must have__ unique group ids within the cluster, from a kafka broker perspective.\n\nCreating the consumer:\n\n```javascript\nconst consumer = kafka.consumer({ groupId: 'my-group' })\n```\n\nSubscribing to some topics:\n\n```javascript\nasync () => {\n  await consumer.connect()\n\n  // Subscribe can be called several times\n  await consumer.subscribe({ topic: 'topic-A' })\n  await consumer.subscribe({ topic: 'topic-B' })\n\n  // It's possible to start from the beginning:\n  // await consumer.subscribe({ topic: 'topic-C', fromBeginning: true })\n}\n```\n\nKafkaJS offers you two ways to process your data: `eachMessage` and `eachBatch`\n\n### <a name=\"consuming-messages-each-message\"></a> eachMessage\n\nThe `eachMessage` handler provides a convenient and easy to use API, feeding your function one message at a time. It is implemented on top of `eachBatch`, and it will automatically commit your offsets and heartbeat at the configured interval for you. If you are just looking to get started with Kafka consumers this a good place to start.\n\n```javascript\nasync () => {\n  await consumer.connect()\n\n  // Subscribe can be called several times\n  await consumer.subscribe({ topic: 'topic-name' })\n\n  // It's possible to start from the beginning:\n  // await consumer.subscribe({ topic: 'topic-name', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        key: message.key.toString(),\n        value: message.value.toString(),\n        headers: message.headers,\n      })\n    },\n  })\n\n  // before you exit your app\n  await consumer.disconnect()\n}\n```\n\n### <a name=\"consuming-messages-each-batch\"></a> eachBatch\n\nSome use cases require dealing with batches directly. This handler will feed your function batches and provide some utility functions to give your code more flexibility: `resolveOffset`, `heartbeat`, `isRunning`, and `commitOffsetsIfNecessary`. All resolved offsets will be automatically committed after the function is executed.\n\nBe aware that using `eachBatch` directly is considered a more advanced use case as compared to using `eachMessage`, since you will have to understand how session timeouts and heartbeats are connected.\n\n```javascript\n// create consumer, connect and subscribe ...\n\nawait consumer.run({\n  eachBatch: async ({ batch, resolveOffset, heartbeat, isRunning }) => {\n    for (let message of batch.messages) {\n      console.log({\n        topic: batch.topic,\n        partition: batch.partition,\n        highWatermark: batch.highWatermark,\n        message: {\n          offset: message.offset,\n          key: message.key.toString(),\n          value: message.value.toString(),\n          headers: message.headers,\n        }\n      })\n\n      await resolveOffset(message.offset)\n      await heartbeat()\n    }\n  },\n})\n```\n\n> `batch.highWatermark` is the last committed offset within the topic partition. It can be useful for calculating lag.\n\n> `eachBatchAutoResolve` configures auto-resolve of batch processing. If set to true, KafkaJS will automatically commit the last offset of the batch if `eachBatch` doesn't throw an error. Default: true.\n\n> `resolveOffset()` is used to mark a message in the batch as processed. In case of errors, the consumer will automatically commit the resolved offsets.\n\n> `commitOffsetsIfNecessary(offsets?)` is used to commit offsets based on the autoCommit configurations (`autoCommitInterval` and `autoCommitThreshold`). Note that auto commit won't happen in `eachBatch` if `commitOffsetsIfNecessary` is not invoked. Take a look at [autoCommit](#consuming-messages-auto-commit) for more information.\n\n> `uncommittedOffsets()` returns all offsets by topic-partition which have not yet been committed.\n\nExample:\n\n```javascript\nconsumer.run({\n  eachBatchAutoResolve: false,\n  eachBatch: ({ batch, resolveOffset, heartbeat, isRunning }) => {\n    for (let message of batch.messages) {\n      if (!isRunning()) break\n      await processMessage(message)\n      await resolveOffset(message.offset)\n      await heartbeat()\n    }\n  }\n})\n```\n\nIn the example above, if the consumer is shutting down in the middle of the batch, the remaining messages won't be resolved and therefore not committed. This way, you can quickly shut down the consumer without losing/skipping any messages.\n\n### <a name=\"consuming-messages-auto-commit\"></a> autoCommit\n\nThe messages are always fetched in batches from Kafka, even when using the `eachMessage` handler. All resolved offsets will be committed to Kafka after processing the whole batch.\n\nCommitting offsets periodically during a batch allows the consumer to recover from group rebalances, stale metadata and other issues before it has completed the entire batch. However, committing more often increases network traffic and slows down processing. Auto-commit offers more flexibility when committing offsets; there are two flavors available:\n\n`autoCommitInterval`: The consumer will commit offsets after a given period, for example, five seconds. Value in milliseconds. Default: `null`\n\n```javascript\nconsumer.run({\n  autoCommitInterval: 5000,\n  // ...\n})\n```\n\n`autoCommitThreshold`: The consumer will commit offsets after resolving a given number of messages, for example, a hundred messages. Default: `null`\n\n```javascript\nconsumer.run({\n  autoCommitThreshold: 100,\n  // ...\n})\n```\n\nHaving both flavors at the same time is also possible, the consumer will commit the offsets if any of the use cases (interval or number of messages) happens.\n\n`autoCommit`: Advanced option to disable auto committing altogether. If auto committing is disabled you must manually commit message offsets, either by using the `commitOffsetsIfNecessary` method available in the `eachBatch` callback, or by [sending message offsets in a transaction](#producer-transaction-offsets). The `commitOffsetsIfNecessary` method will still respect the other autoCommit options if set. Default: `true`\n\n### <a name=\"consuming-messages-from-beginning\"></a> fromBeginning\n\nThe consumer group will use the latest committed offset when fetching messages. If the offset is invalid or not defined, `fromBeginning` defines the behavior of the consumer group.\n\nWhen `fromBeginning` is `true`, the group will use the earliest offset. If set to `false`, it will use the latest offset. The default is `false`.\n\n### <a name=\"consuming-messages-options\"></a> Options\n\n```javascript\nkafka.consumer({\n  groupId: <String>,\n  partitionAssigners: <Array>,\n  sessionTimeout: <Number>,\n  heartbeatInterval: <Number>,\n  metadataMaxAge: <Number>,\n  allowAutoTopicCreation: <Boolean>,\n  maxBytesPerPartition: <Number>,\n  minBytes: <Number>,\n  maxBytes: <Number>,\n  maxWaitTimeInMs: <Number>,\n  retry: <Object>,\n})\n```\n\n| option                 | description | default |\n| ---------------------- | ----------- | ------- |\n| partitionAssigners     | List of partition assigners | `[PartitionAssigners.roundRobin]` |\n| sessionTimeout         | Timeout in milliseconds used to detect failures. The consumer sends periodic heartbeats to indicate its liveness to the broker. If no heartbeats are received by the broker before the expiration of this session timeout, then the broker will remove this consumer from the group and initiate a rebalance | `30000` |\n| heartbeatInterval      | The expected time in milliseconds between heartbeats to the consumer coordinator. Heartbeats are used to ensure that the consumer's session stays active. The value must be set lower than session timeout | `3000` |\n| metadataMaxAge         | The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions | `300000` (5 minutes) |\n| allowAutoTopicCreation | Allow topic creation when querying metadata for non-existent topics | `true`  |\n| maxBytesPerPartition   | The maximum amount of data per-partition the server will return. This size must be at least as large as the maximum message size the server allows or else it is possible for the producer to send messages larger than the consumer can fetch. If that happens, the consumer can get stuck trying to fetch a large message on a certain partition | `1048576` (1MB) |\n| minBytes | Minimum amount of data the server should return for a fetch request, otherwise wait up to `maxWaitTimeInMs` for more data to accumulate. default: `1` |\n| maxBytes               | Maximum amount of bytes to accumulate in the response. Supported by Kafka >= `0.10.1.0` | `10485760` (10MB) |\n| maxWaitTimeInMs        | The maximum amount of time in milliseconds the server will block before answering the fetch request if there isn’t sufficient data to immediately satisfy the requirement given by `minBytes` | `5000` |\n| retry                  | See [retry](#configuration-default-retry) for more information | `{ retries: 10 }` |\n| readUncommitted                  | Configures the consumer isolation level. If `false` (default), the consumer will not return any transactional messages which were not committed. | `false` |\n\n### <a name=\"consuming-messages-pause-resume\"></a> Pause & Resume\n\nIn order to pause and resume consuming from one or more topics, the `Consumer` provides the methods `pause` and `resume`. Note that pausing a topic means that it won't be fetched in the next cycle. You may still receive messages for the topic within the current batch.\n\nCalling `pause` with a topic that the consumer is not subscribed to is a no-op, calling `resume` with a topic that is not paused is also a no-op.\n\nExample: A situation where this could be useful is when an external dependency used by the consumer is under too much load. Here we want to `pause` consumption from a topic when this happens, and after a predefined interval we `resume` again:\n\n```javascript\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'jobs' })\n\nawait consumer.run({ eachMessage: async ({ topic, message }) => {\n  try {\n    await sendToDependency(message)\n  } catch (e) {\n    if (e instanceof TooManyRequestsError) {\n      consumer.pause([{ topic }])\n      setTimeout(() => consumer.resume([{ topic }]), e.retryAfter * 1000)\n    }\n\n    throw e\n  }\n}})\n```\n\n### <a name=\"consuming-messages-seek\"></a> Seek\n\nTo move the offset position in a topic/partition the `Consumer` provides the method `seek`. This method has to be called after the consumer is initialized and is running (after consumer#run).\n\n```javascript\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'example' })\n\n// you don't need to await consumer#run\nconsumer.run({ eachMessage: async ({ topic, message }) => true })\nconsumer.seek({ topic: 'example', partition: 0, offset: 12384 })\n```\n\n### <a name=\"consuming-messages-custom-partition-assigner\"></a> Custom partition assigner\n\nIt's possible to configure the strategy the consumer will use to distribute partitions amongst the consumer group. KafkaJS has a round robin assigner configured by default.\n\nA partition assigner is a function which returns an object with the following interface:\n\n```javascript\nconst MyPartitionAssigner = ({ cluster }) => ({\n  name: 'MyPartitionAssigner',\n  version: 1,\n  async assign({ members, topics }) {},\n  protocol({ topics }) {}\n})\n```\n\nThe method `assign` has to return an assignment plan with partitions per topic. A partition plan consists of a list of `memberId` and `memberAssignment`. The member assignment has to be encoded, use the `MemberAssignment` utility for that. Example:\n\n```javascript\nconst { AssignerProtocol: { MemberAssignment } } = require('kafkajs')\n\nconst MyPartitionAssigner = ({ cluster }) => ({\n  // ...\n  version: 1,\n  async assign({ members, topics }) {\n    // perform assignment\n    return myCustomAssignmentArray.map(memberId => ({\n      memberId,\n      memberAssignment: MemberAssignment.encode({\n        version: this.version,\n        assignment: assignment[memberId],\n      })\n    }))\n  }\n  // ...\n})\n```\n\nThe method `protocol` has to return `name` and `metadata`. Metadata has to be encoded, use the `MemberMetadata` utility for that. Example:\n\n```javascript\nconst { AssignerProtocol: { MemberMetadata } } = require('kafkajs')\n\nconst MyPartitionAssigner = ({ cluster }) => ({\n  name: 'MyPartitionAssigner',\n  version: 1,\n  protocol({ topics }) {\n    return {\n      name: this.name,\n      metadata: MemberMetadata.encode({\n        version: this.version,\n        topics,\n      }),\n    }\n  }\n  // ...\n})\n```\n\nYour `protocol` method will probably look like the example, but it's not implemented by default because extra data can be included as `userData`. Take a look at the `MemberMetadata#encode` for more information.\n\nOnce your assigner is done, add it to the list of assigners. It's important to keep the default assigner there to allow the old consumers to have a common ground with the new consumers when deploying.\n\n```javascript\nconst { PartitionAssigners: { roundRobin } } = require('kafkajs')\n\nkafka.consumer({\n  groupId: 'my-group',\n  partitionAssigners: [\n    MyPartitionAssigner,\n    roundRobin\n  ]\n})\n```\n\n### <a name=\"consuming-messages-describe-group\"></a> Describe group\n\n> Experimental - This feature may be removed or changed in new versions of KafkaJS\n\nReturns metadata for the configured consumer group, example:\n\n```javascript\nconst data = await consumer.describeGroup()\n// {\n//  errorCode: 0,\n//  groupId: 'consumer-group-id-f104efb0e1044702e5f6',\n//  members: [\n//    {\n//      clientHost: '/172.19.0.1',\n//      clientId: 'test-3e93246fe1f4efa7380a',\n//      memberAssignment: Buffer,\n//      memberId: 'test-3e93246fe1f4efa7380a-ff87d06d-5c87-49b8-a1f1-c4f8e3ffe7eb',\n//      memberMetadata: Buffer,\n//    },\n//  ],\n//  protocol: 'RoundRobinAssigner',\n//  protocolType: 'consumer',\n//  state: 'Stable',\n// },\n```\n\n### <a name=\"consuming-messages-compression\"></a> Compression\n\nKafkaJS only support GZIP natively, but [other codecs can be supported](#producing-messages-compression-other).\n\n## <a name=\"admin\"></a> Admin\n\nThe admin client will host all the cluster operations, such as: `createTopics`, `createPartitions`, etc.\n\n```javascript\nconst kafka = new Kafka(...)\nconst admin = kafka.admin() // kafka.admin({ retry: { retries: 2 } })\n\n// remember to connect/disconnect the client\nawait admin.connect()\nawait admin.disconnect()\n```\n\nThe option `retry` can be used to customize the configuration for the admin.\n\nTake a look at [Retry](#configuration-default-retry) for more information.\n\n### <a name=\"admin-create-topics\"></a> Create topics\n\n`createTopics` will resolve to `true` if the topic was created successfully or `false` if it already exists. The method will throw exceptions in case of errors.\n\n```javascript\nawait admin.createTopics({\n  validateOnly: <boolean>,\n  waitForLeaders: <boolean>\n  timeout: <Number>,\n  topics: <Topic[]>,\n})\n```\n\n`Topic` structure:\n\n```javascript\n{\n  topic: <String>,\n  numPartitions: <Number>,     // default: 1\n  replicationFactor: <Number>, // default: 1\n  replicaAssignment: <Array>,  // Example: [{ partition: 0, replicas: [0,1,2] }] - default: []\n  configEntries: <Array>       // Example: [{ name: 'cleanup.policy', value: 'compact' }] - default: []\n}\n```\n\n| property       | description                                                                                           | default |\n| -------------- | ----------------------------------------------------------------------------------------------------- | ------- |\n| topics         | Topic definition                                                                                      |         |\n| validateOnly   | If this is `true`, the request will be validated, but the topic won't be created.                     | false   |\n| timeout        | The time in ms to wait for a topic to be completely created on the controller node                    | 5000    |\n| waitForLeaders | If this is `true` it will wait until metadata for the new topics doesn't throw `LEADER_NOT_AVAILABLE` | true    |\n\n### <a name=\"admin-delete-topics\"></a> Delete topics\n\n```javascript\nawait admin.deleteTopics({\n  topics: <String[]>,\n  timeout: <Number>,\n})\n```\n\nTopic deletion is disabled by default in Apache Kafka versions prior to `1.0.0`. To enable it set the server config.\n\n```yml\ndelete.topic.enable=true\n```\n\n### <a name=\"admin-get-topic-metadata\"></a> Get topic metadata\n\n```javascript\nawait admin.getTopicMetadata({ topics: <Array<String> })\n```\n\n`TopicsMetadata` structure:\n\n```javascript\n{\n  topics: <Array<TopicMetadata>>,\n}\n```\n\n`TopicMetadata` structure:\n\n```javascript\n{\n  topic: <String>,\n  partitions: <Array<PartitionMetadata>>     // default: 1\n}\n```\n\n`PartitionMetadata` structure:\n\n```javascript\n{\n  partitionErrorCode: <Number>,              // default: 0\n  partitionId: <Number>,\n  leader: <Number>,\n  replicas: <Array<Number>>,\n  isr: <Array<Number>>,\n}\n```\n\nThe admin client will throw an exception if any of the provided topics do not already exist.\n\nIf you omit the `topics` argument the admin client will fetch metadata for all topics\nof which it is already aware (all the cluster's target topics):\n\n```\nawait admin.getTopicMetadata()\n```\n\n### <a name=\"admin-fetch-offsets\"></a> Fetch consumer group offsets\n\n`fetchOffsets` returns the consumer group offset for a topic.\n\n```javascript\nawait admin.fetchOffsets({ groupId, topic })\n// [\n//   { partition: 0, offset: '31004' },\n//   { partition: 1, offset: '54312' },\n//   { partition: 2, offset: '32103' },\n//   { partition: 3, offset: '28' },\n// ]\n```\n\n### <a name=\"admin-reset-offsets\"></a> Reset consumer group offsets\n\n`resetOffsets` resets the consumer group offset to the earliest or latest offset (latest by default).\nThe consumer group must have no running instances when performing the reset. Otherwise, the command will be rejected.\n\n```javascript\nawait admin.resetOffsets({ groupId, topic }) // latest by default\n// await admin.resetOffsets({ groupId, topic, earliest: true })\n```\n\n### <a name=\"admin-set-offsets\"></a> Set consumer group offsets\n\n`setOffsets` allows you to set the consumer group offset to any value.\n\n```javascript\nawait admin.setOffsets({\n  groupId: <String>,\n  topic: <String>,\n  partitions: <SeekEntry[]>,\n})\n```\n\n`SeekEntry` structure:\n\n```javascript\n{\n  partition: <Number>,\n  offset: <String>,\n}\n```\n\nExample:\n\n```javascript\nawait admin.setOffsets({\n  groupId: 'my-consumer-group',\n  topic: 'custom-topic',\n  partitions: [\n    { partition: 0, offset: '35' },\n    { partition: 3, offset: '19' },\n  ]\n})\n```\n\n### <a name=\"admin-describe-configs\"></a> Describe configs\n\nGet the configuration for the specified resources.\n\n```javascript\nawait admin.describeConfigs({\n  resources: <ResourceConfigQuery[]>\n})\n```\n\n`ResourceConfigQuery` structure:\n\n```javascript\n{\n  type: <ResourceType>,\n  name: <String>,\n  configNames: <String[]>\n}\n```\n\nReturning all configs for a given resource:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.describeConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name'\n    }\n  ]\n})\n```\n\nReturning specific configs for a given resource:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.describeConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name',\n      configNames: ['cleanup.policy']\n    }\n  ]\n})\n```\n\ntake a look at [resourceTypes](https://github.com/tulios/kafkajs/blob/master/src/protocol/resourceTypes.js) for a complete list of resources.\n\nExample of response:\n\n```javascript\n{\n  resources: [\n    {\n      configEntries: [\n        {\n          configName: 'cleanup.policy',\n          configValue: 'delete',\n          isDefault: true,\n          isSensitive: false,\n          readOnly: false\n        }\n      ],\n      errorCode: 0,\n      errorMessage: null,\n      resourceName: 'topic-name',\n      resourceType: 2\n    }\n  ],\n  throttleTime: 0\n}\n```\n\n### <a name=\"admin-alter-configs\"></a> Alter configs\n\nUpdate the configuration for the specified resources.\n\n```javascript\nawait admin.alterConfigs({\n  validateOnly: false,\n  resources: <ResourceConfig[]>\n})\n```\n\n`ResourceConfig` structure:\n\n```javascript\n{\n  type: <ResourceType>,\n  name: <String>,\n  configEntries: <ResourceConfigEntry[]>\n}\n```\n\n`ResourceConfigEntry` structure:\n\n```javascript\n{\n  name: <String>,\n  value: <String>\n}\n```\n\nExample:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.alterConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name',\n      configEntries: [{ name: 'cleanup.policy', value: 'compact' }]\n    }\n  ]\n})\n```\n\ntake a look at [resourceTypes](https://github.com/tulios/kafkajs/blob/master/src/protocol/resourceTypes.js) for a complete list of resources.\n\nExample of response:\n\n```javascript\n{\n  resources: [\n    {\n      errorCode: 0,\n      errorMessage: null,\n      resourceName: 'topic-name',\n      resourceType: 2,\n    },\n  ],\n  throttleTime: 0,\n}\n```\n\n## <a name=\"instrumentation\"></a> Instrumentation\n\n> Experimental - This feature may be removed or changed in new versions of KafkaJS\n\nSome operations are instrumented using the `EventEmitter`. To receive the events use the method `consumer#on`, `producer#on` and `admin#on`, example:\n\n```javascript\nconst { HEARTBEAT } = consumer.events\nconst removeListener = consumer.on(HEARTBEAT, e => console.log(`heartbeat at ${e.timestamp}`))\n// removeListener()\n```\n\nThe listeners are always async, even when using regular functions. The consumer will never block when executing your listeners. Errors in the listeners won't affect the consumer.\n\nInstrumentation Event:\n\n```javascript\n{\n  id: <Number>,\n  type: <String>,\n  timestamp: <Number>,\n  payload: <Object>\n}\n```\n\nList of available events:\n\n### <a name=\"instrumentation-consumer\"></a> Consumer\n\n* consumer.events.HEARTBEAT  \n  payload: {`groupId`, `memberId`, `groupGenerationId`}\n\n* consumer.events.COMMIT_OFFSETS  \n  payload: {`groupId`, `memberId`, `groupGenerationId`, `topics`}\n\n* consumer.events.GROUP_JOIN  \n  payload: {`groupId`, `memberId`, `leaderId`, `isLeader`, `memberAssignment`, `duration`}\n\n* consumer.events.FETCH  \n  payload: {`numberOfBatches`, `duration`}\n\n* consumer.events.START_BATCH_PROCESS  \n  payload: {`topic`, `partition`, `highWatermark`, `offsetLag`, `batchSize`, `firstOffset`, `lastOffset`}\n\n* consumer.events.END_BATCH_PROCESS  \n  payload: {`topic`, `partition`, `highWatermark`, `offsetLag`, `batchSize`, `firstOffset`, `lastOffset`, `duration`}\n\n* consumer.events.CONNECT\n\n* consumer.events.DISCONNECT\n\n* consumer.events.STOP\n\n* consumer.events.CRASH\n  payload: {`error`, `groupId`}\n\n* consumer.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* consumer.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* consumer.events.REQUEST_QUEUE_SIZE\n  payload: {\n    `broker`,\n    `clientId`,\n    `queueSize`\n  }\n\n### <a name=\"instrumentation-producer\"></a> Producer\n\n* producer.events.CONNECT\n\n* producer.events.DISCONNECT\n\n* producer.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* producer.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* producer.events.REQUEST_QUEUE_SIZE\n  payload: {\n    `broker`,\n    `clientId`,\n    `queueSize`\n  }\n\n### <a name=\"instrumentation-admin\"></a> Admin\n\n* admin.events.CONNECT\n\n* admin.events.DISCONNECT\n\n* admin.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* admin.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* admin.events.REQUEST_QUEUE_SIZE\n  payload: {\n    `broker`,\n    `clientId`,\n    `queueSize`\n  }\n\n## <a name=\"custom-logging\"></a> Custom logging\n\nThe logger is customized using log creators. A log creator is a function which receives a log level and returns a log function. The log function receives namespace, level, label, and log.\n\n- `namespace` identifies the component which is performing the log, for example, connection or consumer.\n- `level` is the log level of the log entry.\n- `label` is a text representation of the log level, example: 'INFO'.\n- `log` is an object with the following keys: `timestamp`, `logger`, `message`, and the extra keys given by the user. (`logger.info('test', { extra_data: true })`)\n\n```javascript\n{\n  level: 4,\n  label: 'INFO', // NOTHING, ERROR, WARN, INFO, or DEBUG\n  timestamp: '2017-12-29T13:39:54.575Z',\n  logger: 'kafkajs',\n  message: 'Started',\n  // ... any other extra key provided to the log function\n}\n```\n\nThe general structure looks like this:\n\n```javascript\nconst MyLogCreator = logLevel => ({ namespace, level, label, log }) => {\n  // Example:\n  // const { timestamp, logger, message, ...others } = log\n  // console.log(`${label} [${namespace}] ${message} ${JSON.stringify(others)}`)\n}\n```\n\nExample using [Winston](https://github.com/winstonjs/winston):\n\n```javascript\nconst { logLevel } = require('kafkajs')\nconst winston = require('winston')\nconst toWinstonLogLevel = level => switch(level) {\n  case logLevel.ERROR:\n  case logLevel.NOTHING:\n    return 'error'\n  case logLevel.WARN:\n    return 'warn'\n  case logLevel.INFO:\n    return 'info'\n  case logLevel.DEBUG:\n    return 'debug'\n}\n\nconst WinstonLogCreator = logLevel => {\n  const logger = winston.createLogger({\n    level: toWinstonLogLevel(logLevel),\n    transports: [\n      new winston.transports.Console(),\n      new winston.transports.File({ filename: 'myapp.log' })\n    ]\n  })\n\n  return ({ namespace, level, { message, ...extra } }) => {\n    logger.log({\n      level: toWinstonLogLevel(level),\n      message,\n      extra,\n    })\n  }\n}\n```\n\nOnce you have your log creator you can use the `logCreator` option to configure the client:\n\n```javascript\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  logLevel: logLevel.ERROR,\n  logCreator: WinstonLogCreator\n})\n```\n\nTo get access to the namespaced logger of a consumer, producer, admin or root Kafka client after instantiation, you can use the `logger` method:\n\n```javascript\nconst client = new Kafka( ... )\nclient.logger().info( ... )\n\nconst consumer = kafka.consumer( ... )\nconsumer.logger().info( ... )\n\nconst producer = kafka.producer( ... )\nproducer.logger().info( ... )\n\nconst admin = kafka.admin( ... )\nadmin.logger().info( ... )\n```\n\n## <a name=\"configuration-default-retry-detailed\"></a> Retry (detailed)\n\nThe retry mechanism uses a randomization function that grows exponentially. This formula and how the default values affect it is best described by the example below:\n\n- 1st retry:\n  - Always a flat `initialRetryTime` ms\n  - Default: `300ms`\n- Nth retry:\n  - Formula: `Random(previousRetryTime * (1 - factor), previousRetryTime * (1 + factor)) * multiplier`\n  - N = 1:\n    - Since `previousRetryTime == initialRetryTime` just plug the values in the formula:\n    - Random(300 * (1 - 0.2), 300 * (1 + 0.2)) * 2 => Random(240, 360) * 2 => (480, 720) ms\n    - Hence, somewhere between `480ms` to `720ms`\n  - N = 2:\n    - Since `previousRetryTime` from N = 1 was in a range between 480ms and 720ms, the retry for this step will be in the range of:\n    - `previousRetryTime = 480ms` => Random(480 * (1 - 0.2), 480 * (1 + 0.2)) * 2 => Random(384, 576) * 2 => (768, 1152) ms\n    - `previousRetryTime = 720ms` => Random(720 * (1 - 0.2), 720 * (1 + 0.2)) * 2 => Random(576, 864) * 2 => (1152, 1728) ms\n    - Hence, somewhere between `768ms` to `1728ms`\n  - And so on...\n\nTable of retry times for default values:\n\n| Retry # | min (ms) | max (ms) |\n| ------- | -------- | -------- |\n| 1       | 300      | 300      |\n| 2       | 480      | 720      |\n| 3       | 768      | 1728     |\n| 4       | 1229     | 4147     |\n| 5       | 1966     | 9953     |\n\n## <a name=\"development\"></a> Development\n\nhttps://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol\n\nhttps://kafka.apache.org/protocol.html\n\n```sh\nyarn test\n```\n\nor\n\n```sh\n# This will run a kafka cluster configured with your current IP\n./scripts/dockerComposeUp.sh\n./scripts/createScramCredentials.sh\nyarn test:local\n\n# To run with logs\n# KAFKAJS_LOG_LEVEL=debug yarn test:local\n```\n\nPassword for test keystore and certificates: `testtest`\nPassword for SASL `test:testtest`\n\n### <a name=\"environment-variables\"></a> Environment variables\n\n| variable                       | description                              | default |\n| ------------------------------ | ---------------------------------------- | ------- |\n| KAFKAJS_DEBUG_PROTOCOL_BUFFERS | Output raw protocol buffers in debug log | 0       |\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the logo ❤️\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","gitHead":"6f48c058aba299ad0c0b8ba4f804d0bd2c435b00","_id":"kafkajs@1.5.0-beta.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-7Tc23dtTshpOyApAilzj05aP0vsUF//jBLsWHqZTAzciEZ3Ebp3IAxfHLASJJlU1K7W1LUhYl9FeZspawaQJ3w==","shasum":"67368bda48e71677fe5439a127357652b2ff2241","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0-beta.1.tgz","fileCount":217,"unpackedSize":569787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQImOCRA9TVsSAnZWagAA+NEP+wTS4GTgt+/m1R4WZpbf\npls/2ERPEj9hwNEfOj6CjUivxvQo4vjdwXIZWcXir9tVQ1umJl6duEd4Cykb\nzsoM9AG0I0RJ7IR+PaQzYS0ZrDJCZFVn6kPO11Jpayl1Bypqprd/RwSZflZx\nTR9ajL7pttDwZf9m3h8AnnE2YhDCiVNsTdtBdODplpo043g5Fne5UH4CiCEP\nH/afxmH1Pf9IMDLjxTLs0Xk1DxNbBASDFnU+uUBX6V5erIODKDr7reom0zIL\nlwIJ+QH+Av8r2fDmHlC8754IwissGPrEDpPkLjOLZp1p4v1uBPPGX7+3fz8/\n88NveaEgACIlK4acUCYKs6zNowM8L8w7iSKaJV6sYlKv/m3s/oEZGdQpF+Mp\nS7KGfpQj3pI7DzFs56Bd3NfAfqU2oJmly2MwLRdtxq9V2W/DGZ7FMEOWqlov\n7PMWsAX/HmU38CwUPVEEgoAOstdfw9L/8w/rRo5N1e6upqAct08yRm+gsb59\nC9G0SEjGVPaC6041/UlDKFC+rO6puybYGOaa6lpIHJnM4Jg2uGB/qt3KxqPm\nQVaMtSGT3ZeO5GGMCp7Iy2uYJ4M1808iUUeTPfuuWTUizx6Cb/Lzpe/OmpSr\n8iPVqDfREGnQEaZNX69SMMbizTvhfHTnx8Fczi1EMIS+cYJ9/D4gIiJlg+Gg\ngz9/\r\n=t9xp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjI1qRFVMAwa+UhtVc+tE2femB3DV3g1lTo2EBGobJsgIgUUfqQ+8D0BT2YFG6GQnZyL1s8sEFkS6VpiLywPr37tM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0-beta.1_1547733390372_0.8706876041777778"},"_hasShrinkwrap":false},"1.5.0-beta.2":{"name":"kafkajs","version":"1.5.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"readme":"[![KafkaJS](https://raw.githubusercontent.com/tulios/kafkajs/master/logo.png)](https://kafka.js.org)\n\n# [KafkaJS](https://kafka.js.org)\n\n[![Build Status](https://travis-ci.org/tulios/kafkajs.svg?branch=master)](https://travis-ci.org/tulios/kafkajs)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Admin client\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\n// Producing\nconst producer = kafka.producer()\n\nawait producer.connect()\nawait producer.send({\n  topic: 'test-topic',\n  messages: [\n    { value: 'Hello KafkaJS user!' },\n  ],\n})\n\n// Consuming\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'test-topic' })\n\nawait consumer.run({\n  eachMessage: async ({ topic, partition, message }) => {\n    console.log({\n      value: message.value.toString(),\n    })\n  },\n})\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\n### <a name=\"contributing-resources\"></a> Resources\n\nhttps://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol\n\nhttps://kafka.apache.org/protocol.html\n\n\n### <a name=\"contributing-testing\"></a> Testing\n\n```sh\nyarn test\n```\n\nor\n\n```sh\n# This will run a kafka cluster configured with your current IP\n./scripts/dockerComposeUp.sh\n./scripts/createScramCredentials.sh\nyarn test:local\n\n# To run with logs\n# KAFKAJS_LOG_LEVEL=debug yarn test:local\n```\n\nPassword for test keystore and certificates: `testtest`\nPassword for SASL `test:testtest`\n\n### <a name=\"environment-variables\"></a> Environment variables\n\n| variable                       | description                              | default |\n| ------------------------------ | ---------------------------------------- | ------- |\n| KAFKAJS_DEBUG_PROTOCOL_BUFFERS | Output raw protocol buffers in debug log | 0       |\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the logo ❤️\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","gitHead":"d1d05d15705fff382fd32877242bc8e4dfbbfee3","_id":"kafkajs@1.5.0-beta.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-1WShc7/Ybg5V9Y7Hiu21Fi6qLg8ZpuW9gY4I4HCbz3E9NYmSzlrirsydSwPn1PB4/tYuGWBToDXCDIdBckedxg==","shasum":"6d8be82585d9709697f7cf8cfa70cd74f15bf32c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0-beta.2.tgz","fileCount":216,"unpackedSize":380161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcZBvmCRA9TVsSAnZWagAABwsP/0VK5vm0Tz9pDMPAVerQ\nec4VYj0jAATnp+l7iN5oBpTUw68ZNDT6bxPO0pU3FHTHblbJ+rjYKpRxGz3N\nP3hwu88HTJkzo17kWX34doJ3joafJvXwjMtiP58TiX09b78+4/iowXzPKjI/\nT5uDfznRlwHPy0g1Pt/5ZK5i0la+6LwW4km3QTWbO/Ivq648a08yX6S6uCSP\nr5RkmhuaYDidOOUJ878aPf5zZ0mU2/wgY1T/zOdQBYa8xlYf7PqNXQ1n31jo\nOgGiJdc52dJJuMhnTY8hwZpA7gkT6MX5r+XBeyrWYiBT8Dnc/8lKS5WoSZ9U\nPzJMXmwPCZsDe0Sxn+4Uc8lIfJAQKpMKL24J9F6azHD1g2yj3hvr5M8kRAAu\nijr8LsJTEOQz9RKE63YoRcKA3ou57IuETQdnMYRI+rruVFLGSv4eyY8H+gja\nHLU1Ok26IR1Qdh41APbetybfpeq3JSMxfqHQ1GdAj8tpTPAYxQK7Gq+WJh3H\nCIKlRBvAlisQPSmFQ1HmJrqQaMNNYHfdzc0QQDLeS36kaQiVQGWyxrWBGwDV\nZfUN/UNX7Aqpxa5ns1EiLsEFg6YuOBI/Ph6DcHrHoF5VXxQHOURseI0vKh8z\nrHbuXxGGpBEuVEaAlmzoC72x4m51bTnfB00eQeNBpGLY21Vc82Lr7vCstkhs\nJncF\r\n=lfTW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDi087IXRxhlGDEX5lgMkyKqYo3IAtHAGzjyHrM83Y/twIhAI96RNS3AVE+kHYlaSYVtrDLUL0qbzfAO+D3wZQTRe5Y"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0-beta.2_1550064613576_0.4329401235133028"},"_hasShrinkwrap":false},"1.5.0-beta.0":{"name":"kafkajs","version":"1.5.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"readme":"[![KafkaJS](https://raw.githubusercontent.com/tulios/kafkajs/master/logo.png)](https://github.com/tulios/kafkajs)\n\n# KafkaJS\n\n[![Build Status](https://travis-ci.org/tulios/kafkajs.svg?branch=master)](https://travis-ci.org/tulios/kafkajs)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Admin client\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Configuration](#configuration)\n  - [SSL](#configuration-ssl)\n  - [SASL](#configuration-sasl)\n  - [Connection timeout](#configuration-connection-timeout)\n  - [Request timeout](#configuration-request-timeout)\n  - [Default retry](#configuration-default-retry)\n  - [Logging](#configuration-logging)\n- [Producing messages](#producing-messages)\n  - [Message headers](#producer-message-headers)\n  - [Producing to multiple topics](#producing-messages-to-multiple-topics)\n  - [Options](#producing-messages-options)\n  - [Custom partitioner](#producing-messages-custom-partitioner)\n  - [Retry](#producing-messages-retry)\n  - [Transactions](#producer-transactions)\n    - [Sending Messages](#producer-transaction-messages)\n    - [Sending Offsets](#producer-transaction-offsets)\n  - [Compression](#producing-messages-compression)\n    - [GZIP](#producing-messages-compression-gzip)\n    - [Snappy](#producing-messages-compression-snappy)\n    - [LZ4](#producing-messages-compression-lz4)\n    - [Other](#producing-messages-compression-other)\n- [Consuming messages](#consuming-messages)\n  - [eachMessage](#consuming-messages-each-message)\n  - [eachBatch](#consuming-messages-each-batch)\n  - [autoCommit](#consuming-messages-auto-commit)\n  - [fromBeginning](#consuming-messages-from-beginning)\n  - [Options](#consuming-messages-options)\n  - [Pause & Resume](#consuming-messages-pause-resume)\n  - [Seek](#consuming-messages-seek)\n  - [Custom partition assigner](#consuming-messages-custom-partition-assigner)\n  - [Describe group](#consuming-messages-describe-group)\n  - [Compression](#consuming-messages-compression)\n- [Admin](#admin)\n  - [Create topics](#admin-create-topics)\n  - [Delete topics](#admin-delete-topics)\n  - [Get topic metadata](#admin-get-topic-metadata)\n  - [Fetch consumer group offsets](#admin-fetch-offsets)\n  - [Reset consumer group offsets](#admin-reset-offsets)\n  - [Set consumer group offsets](#admin-set-offsets)\n  - [Describe configs](#admin-describe-configs)\n  - [Alter configs](#admin-alter-configs)\n- [Instrumentation](#instrumentation)\n- [Custom logging](#custom-logging)\n- [Retry (detailed)](#configuration-default-retry-detailed)\n- [Development](#development)\n  - [Environment variables](#environment-variables)\n\n## <a name=\"installation\"></a> Installation\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n## <a name=\"configuration\"></a> Configuration\n\nThe client must be configured with at least one broker. The brokers on the list are considered seed brokers and are only used to bootstrap the client and load initial metadata.\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\n// Create the client with the broker list\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n```\n\n### <a name=\"configuration-ssl\"></a> SSL\n\nThe `ssl` option can be used to configure the TLS sockets. The options are passed directly to [`tls.connect`](https://nodejs.org/api/tls.html#tls_tls_connect_options_callback) and used to create the TLS Secure Context, all options are accepted.\n\n```javascript\nconst fs = require('fs')\n\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  ssl: {\n    rejectUnauthorized: false,\n    ca: [fs.readFileSync('/my/custom/ca.crt', 'utf-8')],\n    key: fs.readFileSync('/my/custom/client-key.pem', 'utf-8'),\n    cert: fs.readFileSync('/my/custom/client-cert.pem', 'utf-8')\n  },\n})\n```\n\nRefer to [TLS create secure context](https://nodejs.org/dist/latest-v8.x/docs/api/tls.html#tls_tls_createsecurecontext_options) for more information. `NODE_EXTRA_CA_CERTS` can be used to add custom CAs. Use `ssl: true` if you don't have any extra configurations and want to enable SSL.\n\n### <a name=\"configuration-sasl\"></a> SASL\n\nKafka has support for using SASL to authenticate clients. The `sasl` option can be used to configure the authentication mechanism. Currently, KafkaJS supports `PLAIN`, `SCRAM-SHA-256`, and `SCRAM-SHA-512` mechanisms.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  // authenticationTimeout: 1000,\n  sasl: {\n    mechanism: 'plain', // scram-sha-256 or scram-sha-512\n    username: 'my-username',\n    password: 'my-password'\n  },\n})\n```\n\nIt is __highly recommended__ that you use SSL for encryption when using `PLAIN`.\n\n### <a name=\"configuration-connection-timeout\"></a> Connection Timeout\n\nTime in milliseconds to wait for a successful connection. The default value is: `1000`.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  connectionTimeout: 3000\n})\n```\n\n### <a name=\"configuration-request-timeout\"></a> Request Timeout\n\nTime in milliseconds to wait for a successful request. The default value is: `30000`.\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  requestTimeout: 25000\n})\n```\n\n### <a name=\"configuration-default-retry\"></a> Default Retry\n\nThe `retry` option can be used to set the configuration of the retry mechanism, which is used to retry connections and API calls to Kafka (when using producers or consumers).\n\nThe retry mechanism uses a randomization function that grows exponentially.\n[Detailed example](#configuration-default-retry-detailed)\n\nIf the max number of retries is exceeded the retrier will throw `KafkaJSNumberOfRetriesExceeded` and interrupt. Producers will bubble up the error to the user code; Consumers will wait the retry time attached to the exception (it will be based on the number of attempts) and perform a full restart.\n\n__Available options:__\n\n| option           | description                                                                                                             | default |\n| ---------------- | ----------------------------------------------------------------------------------------------------------------------- | ------- |\n| maxRetryTime     | Maximum wait time for a retry in milliseconds                                                                           | `30000` |\n| initialRetryTime | Initial value used to calculate the retry in milliseconds (This is still randomized following the randomization factor) | `300`   |\n| factor           | Randomization factor                                                                                                    | `0.2`   |\n| multiplier       | Exponential factor                                                                                                      | `2`     |\n| retries          | Max number of retries per call                                                                                          | `5`     |\n| maxInFlightRequests          | Max number of requests that may be in progress at any time. If falsey then no limit.   | `null` _(no limit)_\n\nExample:\n\n```javascript\nnew Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  retry: {\n    initialRetryTime: 100,\n    retries: 8\n  }\n})\n```\n\n### <a name=\"configuration-logging\"></a> Logging\n\nKafkaJS has a built-in `STDOUT` logger which outputs JSON. It also accepts a custom log creator which allows you to integrate your favorite logger library. There are 5 log levels available: `NOTHING`, `ERROR`, `WARN`, `INFO`, and `DEBUG`. `INFO` is configured by default.\n\n##### Log level\n\n```javascript\nconst { Kafka, logLevel } = require('kafkajs')\n\n// Create the client with the broker list\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  logLevel: logLevel.ERROR\n})\n```\n\nThe environment variable `KAFKAJS_LOG_LEVEL` can also be used and it has precedence over the configuration in code, example:\n\n```sh\nKAFKAJS_LOG_LEVEL=info node code.js\n```\n\nNOTE: for more information on how to customize your logs, take a look at [Custom logging](#custom-logging)\n\n## <a name=\"producing-messages\"></a> Producing Messages\n\nTo publish messages to Kafka you have to create a producer. Simply call the `producer` function of the client to create it:\n\n```javascript\nconst producer = kafka.producer()\n```\n\nThe method `send` is used to publish messages to the Kafka cluster.\n\n```javascript\nconst producer = kafka.producer() // or with options kafka.producer({ metadataMaxAge: 300000 })\n\nasync () => {\n  await producer.connect()\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n\n  // before you exit your app\n  await producer.disconnect()\n}\n```\n\nExample with a defined partition:\n\n```javascript\n// ...require and connect...\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      { key: 'key1', value: 'hello world', partition: 0 },\n      { key: 'key2', value: 'hey hey!', partition: 1 }\n    ],\n  })\n}\n```\n\nThe method `send` has the following signature:\n\n```javascript\nawait producer.send({\n  topic: <String>,\n  messages: <Message[]>,\n  acks: <Number>,\n  timeout: <Number>,\n  compression: <CompressionTypes>,\n})\n```\n\n| property    | description                                                                                       | default |\n| ----------- |-------------------------------------------------------------------------------------------------- | ------- |\n| topic       | topic name                                                                                        | `null`  |\n| messages    | An array of objects with \"key\" and \"value\", example: <br> `[{ key: 'my-key', value: 'my-value'}]` | `null`  |\n| acks        | Control the number of required acks. <br> __-1__ = all replicas must acknowledge _(default)_ <br> __0__ = no acknowledgments <br> __1__ = only waits for the leader to acknowledge | `-1` all replicas must acknowledge |\n| timeout     | The time to await a response in ms                                                                | `30000` |\n| compression | Compression codec                                                                                 | `CompressionTypes.None` |\n| transactionTimeout | The maximum amount of time in ms that the transaction coordinator will wait for a transaction status update from the producer before proactively aborting the ongoing transaction. If this value is larger than the `transaction.max.timeout.ms` setting in the __broker__, the request will fail with a `InvalidTransactionTimeout` error | `60000` |\n| idempotent     | _Experimental._ If enabled producer will ensure each message is written exactly once. Acks _must_ be set to -1 (\"all\"). Retries will default to MAX_SAFE_INTEGER.                                                                | `false` |\n\nBy default, the producer is configured to distribute the messages with the following logic:\n\n- If a partition is specified in the message, use it\n- If no partition is specified but a key is present choose a partition based on a hash (murmur2) of the key\n- If no partition or key is present choose a partition in a round-robin fashion\n\n### <a name=\"producer-message-headers\"></a> Message headers\n\nKafka v0.11 introduces record headers, which allows your messages to carry extra metadata. To send headers with your message, include the key `headers` with the values. Example:\n\n```javascript\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    messages: [\n      {\n        key: 'key1',\n        value: 'hello world',\n        headers: {\n          'correlation-id': '2bfb68bb-893a-423b-a7fa-7b568cad5b67',\n          'system-id': 'my-system'\n        }\n      },\n    ]\n  })\n}\n```\n\n### <a name=\"producing-messages-to-multiple-topics\"></a> Producing to multiple topics\n\nTo produce to multiple topics at the same time, use `sendBatch`. This can be useful, for example, when migrating between two topics.\n\n```javascript\nconst topicMessages = [\n  {\n    topic: 'topic-a',\n    messages: [{ key: 'key', value: 'hello topic-a' }],\n  },\n  {\n    topic: 'topic-b',\n    messages: [{ key: 'key', value: 'hello topic-b' }],\n  },\n  {\n    topic: 'topic-c',\n    messages: [\n      {\n        key: 'key',\n        value: 'hello topic-c',\n        headers: {\n          'correlation-id': '2bfb68bb-893a-423b-a7fa-7b568cad5b67',\n        },\n      }\n    ],\n  }\n]\nawait producer.sendBatch({ topicMessages })\n```\n\n`sendBatch` has the same signature as `send`, except `topic` and `messages` are replaced with `topicMessages`:\n\n```javascript\nawait producer.sendBatch({\n  topicMessages: <TopicMessages[]>,\n  acks: <Number>,\n  timeout: <Number>,\n  compression: <CompressionTypes>,\n})\n```\n\n| property      | description                                                                                                |\n| ------------- | ---------------------------------------------------------------------------------------------------------- |\n| topicMessages | An array of objects with `topic` and `messages`.<br>`messages` is an array of the same type as for `send`. |\n\n### <a name=\"producing-messages-options\"></a> Options\n\n| option                 | description                                                                          | default |\n| ---------------------- | ------------------------------------------------------------------------------------ | ------- |\n| createPartitioner      | Take a look at [Custom](#producing-messages-custom-partitioner) for more information | `null`  |\n| retry                  | Take a look at [Producer Retry](#producing-messages-retry) for more information      | `null`  |\n| metadataMaxAge         | The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions | `300000` - 5 minutes |\n| allowAutoTopicCreation | Allow topic creation when querying metadata for non-existent topics                  | `true`  |\n\n### <a name=\"producing-messages-custom-partitioner\"></a> Custom partitioner\n\nIt's possible to assign a custom partitioner to the producer. A partitioner is a function which returns another function responsible for the partition selection, something like this:\n\n```javascript\nconst MyPartitioner = () => {\n  // some initialization\n  return ({ topic, partitionMetadata, message }) => {\n    // select a partition based on some logic\n    // return the partition number\n    return 0\n  }\n}\n```\n\n`partitionMetadata` is an array of partitions with the following structure:\n\n`{ partitionId: <NodeId>, leader: <NodeId> }`\n\nExample:\n\n```javascript\n[\n  { partitionId: 1, leader: 1 },\n  { partitionId: 2, leader: 2 },\n  { partitionId: 0, leader: 0 }\n]\n```\n\nTo Configure your partitioner use the option `createPartitioner`.\n\n```javascript\nkafka.producer({ createPartitioner: MyPartitioner })\n```\n\n### <a name=\"producing-messages-retry\"></a> Retry\n\nThe option `retry` can be used to customize the configuration for the producer.\n\nTake a look at [Retry](#configuration-default-retry) for more information.\n\n### <a name=\"producer-transactions\"></a> Transactions\n\nKafkaJS provides a a simple interface to support Kafka transactions (requires Kafka >= v0.11).\n\n#### <a name=\"producer-transaction-messages\"></a> Sending Messages within a Transaction\n\nYou initialize a transaction by making an async call to `producer.transaction()`. The returned transaction object has the methods `send` and `sendBatch` with an identical signature to the producer. When you are done you call `transaction.commit()` or `transaction.abort()` to end the transaction. A transactionally aware consumer will only read messages which were committed.\n\n_Note_: Kafka requires that the transactional producer have the following configuration to _guarantee_ EoS (\"Exactly-once-semantics\"):\n\n- The producer must have a max in flight requests of 1\n- The producer must wait for acknowledgement from all replices (acks=-1)\n- The producer must have unlimitted retries\n\n```javascript\nconst client = new Kafka({\n  clientId: 'transactional-client',\n  brokers: ['kafka1:9092'],\n  // Cannot guarantee EoS without max in flight requests of 1\n  maxInFlightRequests: 1,\n})\n// Setting `idempotent` to `true` will correctly configure the producer\n// to use unlimitted retries and enforce acks from all replices\nconst producer = client.producer({ idempotent: true })\n\n// Begin a transaction\nconst  transaction = await producer.transaction()\n\ntry { \n  // Call one of the transaction's send methods\n  await transaction.send({ topic, messages })\n\n  // Commit the transaction\n  await transaction.commit()\n} catch (e) {\n  // Abort the transaction in event of failure\n  await transaction.abort()\n}\n```\n\n#### <a name=\"producer-transaction-offsets\"></a> Sending Offsets\n\nTo send offsets as part of a transaction, meaning they will be committed only if the transaction succeeds, use the `transaction.sendOffsets()` method. This is necessary whenever we want a transaction to produce messages derived from a consumer, in a \"consume-transform-produce\" loop.\n\n```javascript\nawait transaction.sendOffsets({ \n  consumerGroupId, topics \n})\n```\n\n`topics` has the following structure:\n\n```\n[{\n  topic: <String>,\n  partitions: [{\n    partition: <Number>,\n    offset: <String>\n  }]\n}]\n```\n\n### <a name=\"producing-messages-compression\"></a> Compression\n\nSince KafkaJS aims to have as small footprint and as little dependencies as possible, only GZIP codec is part of the core functionality. Providing plugins supporting other codecs might be considered in the future.\n\n#### <a name=\"producing-messages-compression-gzip\"></a> GZIP\n\n```javascript\nconst { CompressionTypes } = require('kafkajs')\n\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    compression: CompressionTypes.GZIP,\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n}\n```\n\nThe consumers know how to decompress GZIP, so no further work is necessary.\n\n#### <a name=\"producing-messages-compression-snappy\"></a> Snappy\n\nSnappy support is provided by the package `kafkajs-snappy`\n\n```sh\nnpm install kafkajs-snappy\n# yarn add kafkajs-snappy\n```\n\n```javascript\nconst {  CompressionTypes, CompressionCodecs } = require('kafkajs')\nconst SnappyCodec = require('kafkajs-snappy')\n\nCompressionCodecs[CompressionTypes.Snappy] = SnappyCodec\n```\n\nTake a look at the official [readme](https://github.com/tulios/kafkajs-snappy) for more information\n\n#### <a name=\"producing-messages-compression-lz4\"></a> LZ4\n\nLZ4 support is provided by the package `kafkajs-lz4`\n\n```sh\nnpm install kafkajs-lz4\n# yarn add kafkajs-lz4\n```\n\n```javascript\nconst { CompressionTypes, CompressionCodecs } = require('kafkajs')\nconst LZ4 = require('kafkajs-lz4')\n\nCompressionCodecs[CompressionTypes.LZ4] = new LZ4().codec\n```\n\nThe package also accepts options to granularly control LZ4 compression & decompression. Take a look at the official [readme](https://github.com/indix/kafkajs-lz4) for more information.\n\n#### <a name=\"producing-messages-compression-other\"></a> Other\n\nAny other codec than GZIP can be easily implemented using existing libraries.\n\nA codec is an object with two `async` functions: `compress` and `decompress`. Import the libraries and define the codec object:\n\n```javascript\nconst MyCustomSnappyCodec = {\n  async compress(encoder) {\n    return someCompressFunction(encoder.buffer)\n  },\n\n  async decompress(buffer) {\n    return someDecompressFunction(buffer)\n  }\n}\n```\n\nNow that we have the codec object, we can add it to the implementation:\n\n```javascript\nconst { CompressionTypes, CompressionCodecs } = require('kafkajs')\nCompressionCodecs[CompressionTypes.Snappy] = MyCustomSnappyCodec\n```\n\nThe new codec can now be used with the `send` method, example:\n\n```javascript\nasync () => {\n  await producer.send({\n    topic: 'topic-name',\n    compression: CompressionTypes.Snappy,\n    messages: [\n      { key: 'key1', value: 'hello world' },\n      { key: 'key2', value: 'hey hey!' }\n    ],\n  })\n}\n```\n\n## <a name=\"consuming-messages\"></a> Consuming messages from Kafka\n\nConsumer groups allow a group of machines or processes to coordinate access to a list of topics, distributing the load among the consumers. When a consumer fails the load is automatically distributed to other members of the group. Consumer groups must have unique group ids within the cluster, from a kafka broker perspective.\n\nCreating the consumer:\n\n```javascript\nconst consumer = kafka.consumer({ groupId: 'my-group' })\n```\n\nSubscribing to some topics:\n\n```javascript\nasync () => {\n  await consumer.connect()\n\n  // Subscribe can be called several times\n  await consumer.subscribe({ topic: 'topic-A' })\n  await consumer.subscribe({ topic: 'topic-B' })\n\n  // It's possible to start from the beginning:\n  // await consumer.subscribe({ topic: 'topic-C', fromBeginning: true })\n}\n```\n\nKafkaJS offers you two ways to process your data: `eachMessage` and `eachBatch`\n\n### <a name=\"consuming-messages-each-message\"></a> eachMessage\n\nThe `eachMessage` handler provides a convenient and easy to use API, feeding your function one message at a time. It is implemented on top of `eachBatch`, and it will automatically commit your offsets and heartbeat at the configured interval for you. If you are just looking to get started with Kafka consumers this a good place to start.\n\n```javascript\nasync () => {\n  await consumer.connect()\n\n  // Subscribe can be called several times\n  await consumer.subscribe({ topic: 'topic-name' })\n\n  // It's possible to start from the beginning:\n  // await consumer.subscribe({ topic: 'topic-name', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        key: message.key.toString(),\n        value: message.value.toString(),\n        headers: message.headers,\n      })\n    },\n  })\n\n  // before you exit your app\n  await consumer.disconnect()\n}\n```\n\n### <a name=\"consuming-messages-each-batch\"></a> eachBatch\n\nSome use cases require dealing with batches directly. This handler will feed your function batches and provide some utility functions to give your code more flexibility: `resolveOffset`, `heartbeat`, `isRunning`, and `commitOffsetsIfNecessary`. All resolved offsets will be automatically committed after the function is executed.\n\nBe aware that using `eachBatch` directly is considered a more advanced use case as compared to using `eachMessage`, since you will have to understand how session timeouts and heartbeats are connected.\n\n```javascript\n// create consumer, connect and subscribe ...\n\nawait consumer.run({\n  eachBatch: async ({ batch, resolveOffset, heartbeat, isRunning }) => {\n    for (let message of batch.messages) {\n      console.log({\n        topic: batch.topic,\n        partition: batch.partition,\n        highWatermark: batch.highWatermark,\n        message: {\n          offset: message.offset,\n          key: message.key.toString(),\n          value: message.value.toString(),\n          headers: message.headers,\n        }\n      })\n\n      await resolveOffset(message.offset)\n      await heartbeat()\n    }\n  },\n})\n```\n\n> `batch.highWatermark` is the last committed offset within the topic partition. It can be useful for calculating lag.\n\n> `eachBatchAutoResolve` configures auto-resolve of batch processing. If set to true, KafkaJS will automatically commit the last offset of the batch if `eachBatch` doesn't throw an error. Default: true.\n\n> `resolveOffset()` is used to mark a message in the batch as processed. In case of errors, the consumer will automatically commit the resolved offsets.\n\n> `commitOffsetsIfNecessary(offsets?)` is used to commit offsets based on the autoCommit configurations (`autoCommitInterval` and `autoCommitThreshold`). Note that auto commit won't happen in `eachBatch` if `commitOffsetsIfNecessary` is not invoked. Take a look at [autoCommit](#consuming-messages-auto-commit) for more information.\n\n> `uncommittedOffsets()` returns all offsets by topic-partition which have not yet been committed.\n\nExample:\n\n```javascript\nconsumer.run({\n  eachBatchAutoResolve: false,\n  eachBatch: ({ batch, resolveOffset, heartbeat, isRunning }) => {\n    for (let message of batch.messages) {\n      if (!isRunning()) break\n      await processMessage(message)\n      await resolveOffset(message.offset)\n      await heartbeat()\n    }\n  }\n})\n```\n\nIn the example above, if the consumer is shutting down in the middle of the batch, the remaining messages won't be resolved and therefore not committed. This way, you can quickly shut down the consumer without losing/skipping any messages.\n\n### <a name=\"consuming-messages-auto-commit\"></a> autoCommit\n\nThe messages are always fetched in batches from Kafka, even when using the `eachMessage` handler. All resolved offsets will be committed to Kafka after processing the whole batch.\n\nCommitting offsets periodically during a batch allows the consumer to recover from group rebalances, stale metadata and other issues before it has completed the entire batch. However, committing more often increases network traffic and slows down processing. Auto-commit offers more flexibility when committing offsets; there are two flavors available:\n\n`autoCommitInterval`: The consumer will commit offsets after a given period, for example, five seconds. Value in milliseconds. Default: `null`\n\n```javascript\nconsumer.run({\n  autoCommitInterval: 5000,\n  // ...\n})\n```\n\n`autoCommitThreshold`: The consumer will commit offsets after resolving a given number of messages, for example, a hundred messages. Default: `null`\n\n```javascript\nconsumer.run({\n  autoCommitThreshold: 100,\n  // ...\n})\n```\n\nHaving both flavors at the same time is also possible, the consumer will commit the offsets if any of the use cases (interval or number of messages) happens.\n\n`autoCommit`: Advanced option to disable auto committing altogether. If auto committing is disabled you must manually commit message offsets, either by using the `commitOffsetsIfNecessary` method available in the `eachBatch` callback, or by [sending message offsets in a transaction](#producer-transaction-offsets). The `commitOffsetsIfNecessary` method will still respect the other autoCommit options if set. Default: `true`\n\n### <a name=\"consuming-messages-from-beginning\"></a> fromBeginning\n\nThe consumer group will use the latest committed offset when fetching messages. If the offset is invalid or not defined, `fromBeginning` defines the behavior of the consumer group.\n\nWhen `fromBeginning` is `true`, the group will use the earliest offset. If set to `false`, it will use the latest offset. The default is `false`.\n\n### <a name=\"consuming-messages-options\"></a> Options\n\n```javascript\nkafka.consumer({\n  groupId: <String>,\n  partitionAssigners: <Array>,\n  sessionTimeout: <Number>,\n  heartbeatInterval: <Number>,\n  metadataMaxAge: <Number>,\n  allowAutoTopicCreation: <Boolean>,\n  maxBytesPerPartition: <Number>,\n  minBytes: <Number>,\n  maxBytes: <Number>,\n  maxWaitTimeInMs: <Number>,\n  retry: <Object>,\n})\n```\n\n| option                 | description | default |\n| ---------------------- | ----------- | ------- |\n| partitionAssigners     | List of partition assigners | `[PartitionAssigners.roundRobin]` |\n| sessionTimeout         | Timeout in milliseconds used to detect failures. The consumer sends periodic heartbeats to indicate its liveness to the broker. If no heartbeats are received by the broker before the expiration of this session timeout, then the broker will remove this consumer from the group and initiate a rebalance | `30000` |\n| heartbeatInterval      | The expected time in milliseconds between heartbeats to the consumer coordinator. Heartbeats are used to ensure that the consumer's session stays active. The value must be set lower than session timeout | `3000` |\n| metadataMaxAge         | The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions | `300000` (5 minutes) |\n| allowAutoTopicCreation | Allow topic creation when querying metadata for non-existent topics | `true`  |\n| maxBytesPerPartition   | The maximum amount of data per-partition the server will return. This size must be at least as large as the maximum message size the server allows or else it is possible for the producer to send messages larger than the consumer can fetch. If that happens, the consumer can get stuck trying to fetch a large message on a certain partition | `1048576` (1MB) |\n| minBytes | Minimum amount of data the server should return for a fetch request, otherwise wait up to `maxWaitTimeInMs` for more data to accumulate. default: `1` |\n| maxBytes               | Maximum amount of bytes to accumulate in the response. Supported by Kafka >= `0.10.1.0` | `10485760` (10MB) |\n| maxWaitTimeInMs        | The maximum amount of time in milliseconds the server will block before answering the fetch request if there isn’t sufficient data to immediately satisfy the requirement given by `minBytes` | `5000` |\n| retry                  | See [retry](#configuration-default-retry) for more information | `{ retries: 10 }` |\n| readUncommitted                  | Configures the consumer isolation level. If `false` (default), the consumer will not return any transactional messages which were not committed. | `false` |\n\n### <a name=\"consuming-messages-pause-resume\"></a> Pause & Resume\n\nIn order to pause and resume consuming from one or more topics, the `Consumer` provides the methods `pause` and `resume`. Note that pausing a topic means that it won't be fetched in the next cycle. You may still receive messages for the topic within the current batch.\n\nCalling `pause` with a topic that the consumer is not subscribed to is a no-op, calling `resume` with a topic that is not paused is also a no-op.\n\nExample: A situation where this could be useful is when an external dependency used by the consumer is under too much load. Here we want to `pause` consumption from a topic when this happens, and after a predefined interval we `resume` again:\n\n```javascript\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'jobs' })\n\nawait consumer.run({ eachMessage: async ({ topic, message }) => {\n  try {\n    await sendToDependency(message)\n  } catch (e) {\n    if (e instanceof TooManyRequestsError) {\n      consumer.pause([{ topic }])\n      setTimeout(() => consumer.resume([{ topic }]), e.retryAfter * 1000)\n    }\n\n    throw e\n  }\n}})\n```\n\n### <a name=\"consuming-messages-seek\"></a> Seek\n\nTo move the offset position in a topic/partition the `Consumer` provides the method `seek`. This method has to be called after the consumer is initialized and is running (after consumer#run).\n\n```javascript\nawait consumer.connect()\nawait consumer.subscribe({ topic: 'example' })\n\n// you don't need to await consumer#run\nconsumer.run({ eachMessage: async ({ topic, message }) => true })\nconsumer.seek({ topic: 'example', partition: 0, offset: 12384 })\n```\n\n### <a name=\"consuming-messages-custom-partition-assigner\"></a> Custom partition assigner\n\nIt's possible to configure the strategy the consumer will use to distribute partitions amongst the consumer group. KafkaJS has a round robin assigner configured by default.\n\nA partition assigner is a function which returns an object with the following interface:\n\n```javascript\nconst MyPartitionAssigner = ({ cluster }) => ({\n  name: 'MyPartitionAssigner',\n  version: 1,\n  async assign({ members, topics }) {},\n  protocol({ topics }) {}\n})\n```\n\nThe method `assign` has to return an assignment plan with partitions per topic. A partition plan consists of a list of `memberId` and `memberAssignment`. The member assignment has to be encoded, use the `MemberAssignment` utility for that. Example:\n\n```javascript\nconst { AssignerProtocol: { MemberAssignment } } = require('kafkajs')\n\nconst MyPartitionAssigner = ({ cluster }) => ({\n  // ...\n  version: 1,\n  async assign({ members, topics }) {\n    // perform assignment\n    return myCustomAssignmentArray.map(memberId => ({\n      memberId,\n      memberAssignment: MemberAssignment.encode({\n        version: this.version,\n        assignment: assignment[memberId],\n      })\n    }))\n  }\n  // ...\n})\n```\n\nThe method `protocol` has to return `name` and `metadata`. Metadata has to be encoded, use the `MemberMetadata` utility for that. Example:\n\n```javascript\nconst { AssignerProtocol: { MemberMetadata } } = require('kafkajs')\n\nconst MyPartitionAssigner = ({ cluster }) => ({\n  name: 'MyPartitionAssigner',\n  version: 1,\n  protocol({ topics }) {\n    return {\n      name: this.name,\n      metadata: MemberMetadata.encode({\n        version: this.version,\n        topics,\n      }),\n    }\n  }\n  // ...\n})\n```\n\nYour `protocol` method will probably look like the example, but it's not implemented by default because extra data can be included as `userData`. Take a look at the `MemberMetadata#encode` for more information.\n\nOnce your assigner is done, add it to the list of assigners. It's important to keep the default assigner there to allow the old consumers to have a common ground with the new consumers when deploying.\n\n```javascript\nconst { PartitionAssigners: { roundRobin } } = require('kafkajs')\n\nkafka.consumer({\n  groupId: 'my-group',\n  partitionAssigners: [\n    MyPartitionAssigner,\n    roundRobin\n  ]\n})\n```\n\n### <a name=\"consuming-messages-describe-group\"></a> Describe group\n\n> Experimental - This feature may be removed or changed in new versions of KafkaJS\n\nReturns metadata for the configured consumer group, example:\n\n```javascript\nconst data = await consumer.describeGroup()\n// {\n//  errorCode: 0,\n//  groupId: 'consumer-group-id-f104efb0e1044702e5f6',\n//  members: [\n//    {\n//      clientHost: '/172.19.0.1',\n//      clientId: 'test-3e93246fe1f4efa7380a',\n//      memberAssignment: Buffer,\n//      memberId: 'test-3e93246fe1f4efa7380a-ff87d06d-5c87-49b8-a1f1-c4f8e3ffe7eb',\n//      memberMetadata: Buffer,\n//    },\n//  ],\n//  protocol: 'RoundRobinAssigner',\n//  protocolType: 'consumer',\n//  state: 'Stable',\n// },\n```\n\n### <a name=\"consuming-messages-compression\"></a> Compression\n\nKafkaJS only support GZIP natively, but [other codecs can be supported](#producing-messages-compression-other).\n\n## <a name=\"admin\"></a> Admin\n\nThe admin client will host all the cluster operations, such as: `createTopics`, `createPartitions`, etc.\n\n```javascript\nconst kafka = new Kafka(...)\nconst admin = kafka.admin() // kafka.admin({ retry: { retries: 2 } })\n\n// remember to connect/disconnect the client\nawait admin.connect()\nawait admin.disconnect()\n```\n\nThe option `retry` can be used to customize the configuration for the admin.\n\nTake a look at [Retry](#configuration-default-retry) for more information.\n\n### <a name=\"admin-create-topics\"></a> Create topics\n\n`createTopics` will resolve to `true` if the topic was created successfully or `false` if it already exists. The method will throw exceptions in case of errors.\n\n```javascript\nawait admin.createTopics({\n  validateOnly: <boolean>,\n  waitForLeaders: <boolean>\n  timeout: <Number>,\n  topics: <Topic[]>,\n})\n```\n\n`Topic` structure:\n\n```javascript\n{\n  topic: <String>,\n  numPartitions: <Number>,     // default: 1\n  replicationFactor: <Number>, // default: 1\n  replicaAssignment: <Array>,  // Example: [{ partition: 0, replicas: [0,1,2] }] - default: []\n  configEntries: <Array>       // Example: [{ name: 'cleanup.policy', value: 'compact' }] - default: []\n}\n```\n\n| property       | description                                                                                           | default |\n| -------------- | ----------------------------------------------------------------------------------------------------- | ------- |\n| topics         | Topic definition                                                                                      |         |\n| validateOnly   | If this is `true`, the request will be validated, but the topic won't be created.                     | false   |\n| timeout        | The time in ms to wait for a topic to be completely created on the controller node                    | 5000    |\n| waitForLeaders | If this is `true` it will wait until metadata for the new topics doesn't throw `LEADER_NOT_AVAILABLE` | true    |\n\n### <a name=\"admin-delete-topics\"></a> Delete topics\n\n```javascript\nawait admin.deleteTopics({\n  topics: <String[]>,\n  timeout: <Number>,\n})\n```\n\nTopic deletion is disabled by default in Apache Kafka versions prior to `1.0.0`. To enable it set the server config.\n\n```yml\ndelete.topic.enable=true\n```\n\n### <a name=\"admin-get-topic-metadata\"></a> Get topic metadata\n\n```javascript\nawait admin.getTopicMetadata({ topics: <Array<String> })\n```\n\n`TopicsMetadata` structure:\n\n```javascript\n{\n  topics: <Array<TopicMetadata>>,\n}\n```\n\n`TopicMetadata` structure:\n\n```javascript\n{\n  topic: <String>,\n  partitions: <Array<PartitionMetadata>>     // default: 1\n}\n```\n\n`PartitionMetadata` structure:\n\n```javascript\n{\n  partitionErrorCode: <Number>,              // default: 0\n  partitionId: <Number>,\n  leader: <Number>,\n  replicas: <Array<Number>>,\n  isr: <Array<Number>>,\n}\n```\n\nThe admin client will throw an exception if any of the provided topics do not already exist.\n\nIf you omit the `topics` argument the admin client will fetch metadata for all topics\nof which it is already aware (all the cluster's target topics):\n\n```\nawait admin.getTopicMetadata()\n```\n\n### <a name=\"admin-fetch-offsets\"></a> Fetch consumer group offsets\n\n`fetchOffsets` returns the consumer group offset for a topic.\n\n```javascript\nawait admin.fetchOffsets({ groupId, topic })\n// [\n//   { partition: 0, offset: '31004' },\n//   { partition: 1, offset: '54312' },\n//   { partition: 2, offset: '32103' },\n//   { partition: 3, offset: '28' },\n// ]\n```\n\n### <a name=\"admin-reset-offsets\"></a> Reset consumer group offsets\n\n`resetOffsets` resets the consumer group offset to the earliest or latest offset (latest by default).\nThe consumer group must have no running instances when performing the reset. Otherwise, the command will be rejected.\n\n```javascript\nawait admin.resetOffsets({ groupId, topic }) // latest by default\n// await admin.resetOffsets({ groupId, topic, earliest: true })\n```\n\n### <a name=\"admin-set-offsets\"></a> Set consumer group offsets\n\n`setOffsets` allows you to set the consumer group offset to any value.\n\n```javascript\nawait admin.setOffsets({\n  groupId: <String>,\n  topic: <String>,\n  partitions: <SeekEntry[]>,\n})\n```\n\n`SeekEntry` structure:\n\n```javascript\n{\n  partition: <Number>,\n  offset: <String>,\n}\n```\n\nExample:\n\n```javascript\nawait admin.setOffsets({\n  groupId: 'my-consumer-group',\n  topic: 'custom-topic',\n  partitions: [\n    { partition: 0, offset: '35' },\n    { partition: 3, offset: '19' },\n  ]\n})\n```\n\n### <a name=\"admin-describe-configs\"></a> Describe configs\n\nGet the configuration for the specified resources.\n\n```javascript\nawait admin.describeConfigs({\n  resources: <ResourceConfigQuery[]>\n})\n```\n\n`ResourceConfigQuery` structure:\n\n```javascript\n{\n  type: <ResourceType>,\n  name: <String>,\n  configNames: <String[]>\n}\n```\n\nReturning all configs for a given resource:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.describeConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name'\n    }\n  ]\n})\n```\n\nReturning specific configs for a given resource:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.describeConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name',\n      configNames: ['cleanup.policy']\n    }\n  ]\n})\n```\n\ntake a look at [resourceTypes](https://github.com/tulios/kafkajs/blob/master/src/protocol/resourceTypes.js) for a complete list of resources.\n\nExample of response:\n\n```javascript\n{\n  resources: [\n    {\n      configEntries: [\n        {\n          configName: 'cleanup.policy',\n          configValue: 'delete',\n          isDefault: true,\n          isSensitive: false,\n          readOnly: false\n        }\n      ],\n      errorCode: 0,\n      errorMessage: null,\n      resourceName: 'topic-name',\n      resourceType: 2\n    }\n  ],\n  throttleTime: 0\n}\n```\n\n### <a name=\"admin-alter-configs\"></a> Alter configs\n\nUpdate the configuration for the specified resources.\n\n```javascript\nawait admin.alterConfigs({\n  validateOnly: false,\n  resources: <ResourceConfig[]>\n})\n```\n\n`ResourceConfig` structure:\n\n```javascript\n{\n  type: <ResourceType>,\n  name: <String>,\n  configEntries: <ResourceConfigEntry[]>\n}\n```\n\n`ResourceConfigEntry` structure:\n\n```javascript\n{\n  name: <String>,\n  value: <String>\n}\n```\n\nExample:\n\n```javascript\nconst { RESOURCE_TYPES } = require('kafkajs')\n\nawait admin.alterConfigs({\n  resources: [\n    {\n      type: RESOURCE_TYPES.TOPIC,\n      name: 'topic-name',\n      configEntries: [{ name: 'cleanup.policy', value: 'compact' }]\n    }\n  ]\n})\n```\n\ntake a look at [resourceTypes](https://github.com/tulios/kafkajs/blob/master/src/protocol/resourceTypes.js) for a complete list of resources.\n\nExample of response:\n\n```javascript\n{\n  resources: [\n    {\n      errorCode: 0,\n      errorMessage: null,\n      resourceName: 'topic-name',\n      resourceType: 2,\n    },\n  ],\n  throttleTime: 0,\n}\n```\n\n## <a name=\"instrumentation\"></a> Instrumentation\n\n> Experimental - This feature may be removed or changed in new versions of KafkaJS\n\nSome operations are instrumented using the `EventEmitter`. To receive the events use the method `consumer#on`, `producer#on` and `admin#on`, example:\n\n```javascript\nconst { HEARTBEAT } = consumer.events\nconst removeListener = consumer.on(HEARTBEAT, e => console.log(`heartbeat at ${e.timestamp}`))\n// removeListener()\n```\n\nThe listeners are always async, even when using regular functions. The consumer will never block when executing your listeners. Errors in the listeners won't affect the consumer.\n\nInstrumentation Event:\n\n```javascript\n{\n  id: <Number>,\n  type: <String>,\n  timestamp: <Number>,\n  payload: <Object>\n}\n```\n\nList of available events:\n\n### <a name=\"instrumentation-consumer\"></a> Consumer\n\n* consumer.events.HEARTBEAT  \n  payload: {`groupId`, `memberId`, `groupGenerationId`}\n\n* consumer.events.COMMIT_OFFSETS  \n  payload: {`groupId`, `memberId`, `groupGenerationId`, `topics`}\n\n* consumer.events.GROUP_JOIN  \n  payload: {`groupId`, `memberId`, `leaderId`, `isLeader`, `memberAssignment`, `duration`}\n\n* consumer.events.FETCH  \n  payload: {`numberOfBatches`, `duration`}\n\n* consumer.events.START_BATCH_PROCESS  \n  payload: {`topic`, `partition`, `highWatermark`, `offsetLag`, `batchSize`, `firstOffset`, `lastOffset`}\n\n* consumer.events.END_BATCH_PROCESS  \n  payload: {`topic`, `partition`, `highWatermark`, `offsetLag`, `batchSize`, `firstOffset`, `lastOffset`, `duration`}\n\n* consumer.events.CONNECT\n\n* consumer.events.DISCONNECT\n\n* consumer.events.STOP\n\n* consumer.events.CRASH\n  payload: {`error`, `groupId`}\n\n* consumer.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* consumer.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n### <a name=\"instrumentation-producer\"></a> Producer\n\n* producer.events.CONNECT\n\n* producer.events.DISCONNECT\n\n* producer.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* producer.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n### <a name=\"instrumentation-admin\"></a> Admin\n\n* admin.events.CONNECT\n\n* admin.events.DISCONNECT\n\n* admin.events.REQUEST\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `size`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `duration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n* admin.events.REQUEST_TIMEOUT\n  payload: {\n    `broker`,\n    `clientId`,\n    `correlationId`,\n    `createdAt`,\n    `sentAt`,\n    `pendingDuration`,\n    `apiName`,\n    `apiKey`,\n    `apiVersion`\n  }\n\n## <a name=\"custom-logging\"></a> Custom logging\n\nThe logger is customized using log creators. A log creator is a function which receives a log level and returns a log function. The log function receives namespace, level, label, and log.\n\n- `namespace` identifies the component which is performing the log, for example, connection or consumer.\n- `level` is the log level of the log entry.\n- `label` is a text representation of the log level, example: 'INFO'.\n- `log` is an object with the following keys: `timestamp`, `logger`, `message`, and the extra keys given by the user. (`logger.info('test', { extra_data: true })`)\n\n```javascript\n{\n  level: 4,\n  label: 'INFO', // NOTHING, ERROR, WARN, INFO, or DEBUG\n  timestamp: '2017-12-29T13:39:54.575Z',\n  logger: 'kafkajs',\n  message: 'Started',\n  // ... any other extra key provided to the log function\n}\n```\n\nThe general structure looks like this:\n\n```javascript\nconst MyLogCreator = logLevel => ({ namespace, level, label, log }) => {\n  // Example:\n  // const { timestamp, logger, message, ...others } = log\n  // console.log(`${label} [${namespace}] ${message} ${JSON.stringify(others)}`)\n}\n```\n\nExample using [Winston](https://github.com/winstonjs/winston):\n\n```javascript\nconst { logLevel } = require('kafkajs')\nconst winston = require('winston')\nconst toWinstonLogLevel = level => switch(level) {\n  case logLevel.ERROR:\n  case logLevel.NOTHING:\n    return 'error'\n  case logLevel.WARN:\n    return 'warn'\n  case logLevel.INFO:\n    return 'info'\n  case logLevel.DEBUG:\n    return 'debug'\n}\n\nconst WinstonLogCreator = logLevel => {\n  const logger = winston.createLogger({\n    level: toWinstonLogLevel(logLevel),\n    transports: [\n      new winston.transports.Console(),\n      new winston.transports.File({ filename: 'myapp.log' })\n    ]\n  })\n\n  return ({ namespace, level, { message, ...extra } }) => {\n    logger.log({\n      level: toWinstonLogLevel(level),\n      message,\n      extra,\n    })\n  }\n}\n```\n\nOnce you have your log creator you can use the `logCreator` option to configure the client:\n\n```javascript\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092'],\n  logLevel: logLevel.ERROR,\n  logCreator: WinstonLogCreator\n})\n```\n\nTo get access to the namespaced logger of a consumer, producer, admin or root Kafka client after instantiation, you can use the `logger` method:\n\n```javascript\nconst client = new Kafka( ... )\nclient.logger().info( ... )\n\nconst consumer = kafka.consumer( ... )\nconsumer.logger().info( ... )\n\nconst producer = kafka.producer( ... )\nproducer.logger().info( ... )\n\nconst admin = kafka.admin( ... )\nadmin.logger().info( ... )\n```\n\n## <a name=\"configuration-default-retry-detailed\"></a> Retry (detailed)\n\nThe retry mechanism uses a randomization function that grows exponentially. This formula and how the default values affect it is best described by the example below:\n\n- 1st retry:\n  - Always a flat `initialRetryTime` ms\n  - Default: `300ms`\n- Nth retry:\n  - Formula: `Random(previousRetryTime * (1 - factor), previousRetryTime * (1 + factor)) * multiplier`\n  - N = 1:\n    - Since `previousRetryTime == initialRetryTime` just plug the values in the formula:\n    - Random(300 * (1 - 0.2), 300 * (1 + 0.2)) * 2 => Random(240, 360) * 2 => (480, 720) ms\n    - Hence, somewhere between `480ms` to `720ms`\n  - N = 2:\n    - Since `previousRetryTime` from N = 1 was in a range between 480ms and 720ms, the retry for this step will be in the range of:\n    - `previousRetryTime = 480ms` => Random(480 * (1 - 0.2), 480 * (1 + 0.2)) * 2 => Random(384, 576) * 2 => (768, 1152) ms\n    - `previousRetryTime = 720ms` => Random(720 * (1 - 0.2), 720 * (1 + 0.2)) * 2 => Random(576, 864) * 2 => (1152, 1728) ms\n    - Hence, somewhere between `768ms` to `1728ms`\n  - And so on...\n\nTable of retry times for default values:\n\n| Retry # | min (ms) | max (ms) |\n| ------- | -------- | -------- |\n| 1       | 300      | 300      |\n| 2       | 480      | 720      |\n| 3       | 768      | 1728     |\n| 4       | 1229     | 4147     |\n| 5       | 1966     | 9953     |\n\n## <a name=\"development\"></a> Development\n\nhttps://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol\n\nhttps://kafka.apache.org/protocol.html\n\n```sh\nyarn test\n```\n\nor\n\n```sh\n# This will run a kafka cluster configured with your current IP\n./scripts/dockerComposeUp.sh\n./scripts/createScramCredentials.sh\nyarn test:local\n\n# To run with logs\n# KAFKAJS_LOG_LEVEL=debug yarn test:local\n```\n\nPassword for test keystore and certificates: `testtest`\nPassword for SASL `test:testtest`\n\n### <a name=\"environment-variables\"></a> Environment variables\n\n| variable                       | description                              | default |\n| ------------------------------ | ---------------------------------------- | ------- |\n| KAFKAJS_DEBUG_PROTOCOL_BUFFERS | Output raw protocol buffers in debug log | 0       |\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the logo ❤️\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","gitHead":"1504a67304a239557768f96cd03ef3bf691095cb","_id":"kafkajs@1.5.0-beta.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-S/nCxXQ9LGnfAeLWrVnzl6kTzhg7/LnPTrlQlipPLxkLST6762+6sdSLVNOG3676Qp7xRMOLqvLLEkX37p07ag==","shasum":"e9f74381f730ad998580a7a0876c743bacbb4919","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0-beta.0.tgz","fileCount":217,"unpackedSize":565374,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNGuNCRA9TVsSAnZWagAAGAYQAII7XfgbuWtIShOZczcu\neYgILj7HmTKNNKfUVzvEF33VM7z6MZx5aIAF84GJkHUxSGJe0300QAUtUUir\nZeaLIuN5KmiZyr/5A6oBFadPvCPOVEeAvunwhxqWGANmJWXeMq8+VZzJJ/Hd\n6PnMtBdnooTIQe4qZlvmTI3w8W34S7hTTdVKk7FGVIQuw7Vtrx2nNyScQvOX\nLzYHnmeGttU33/R+wbWwelbIRuQAfm6uYwrdEeOCuICjiGF341j5jom9GPOZ\ne3eaY36M6sKLsYOrqZB3Sgdi1g3mLY6W1FErjSSkSolkT/4qCBAE+xi7kuo8\n5Wmk7Zv2M+CNZCT8laj97Gjy/pitH7NqIBraVmMz9azJ/1R+2Xm07nITX4kh\nefQ9QTe0dtWygCcVHJ+ddwOPa+ZfYWzNwOF5ADvN2t5CvXg5f/WjGA53viNZ\nc6rV6YNxF/a5Il2LvWNdTAZ3WNPyVI5YHr2dPqfQrJzlGHER2s0m3jgyOSnp\nPThWvmTiSeqiOqEqB776RrmPShFIblUxuHzL0VjHbskMb6FTa5ky3I1vV7lq\nf/uvp7S57imJaF77Jhi7aURE70HgIiVfrRyFVhMJ1dbT8QoRWkpX1iEyHeb9\n6lv2t3VxERkuGRBZ3Fcat8F32SdgNt7TVDcUQHSUT4wH8QqPvdxdU62Jt0t7\nJ+Z1\r\n=pI3C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVfaLiuYQ5Lh1H0xVYoHbHMZusYYvDY0NIxZxmqVqdTAIhAKyKJTDJWbHA7KoHjHMHA6IzmcAxrWqNw4FxLe9LvCL5"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0-beta.0_1546939277079_0.708065276496578"},"_hasShrinkwrap":false},"1.7.0":{"name":"kafkajs","version":"1.7.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"e7fd556775ec262d0d817b665f74ef4877a3df7d","_id":"kafkajs@1.7.0","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-tYqC9KDoxnWXlppr4mF3SHy/pZwrr8HLqUi4xokxpRMTq+KaVo+nMowhtowm2bWdKHak3/jT11k8jLBTpmbn6w==","shasum":"3154cc54248ad042dfe7acc94bf8a6a7c037e5be","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.7.0.tgz","fileCount":219,"unpackedSize":391141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcsIDpCRA9TVsSAnZWagAAqr0P/Aq6cxyqU3Yhl4F9WFhw\nhGxLjlRZ87ibs8T4TmyQDNYdz2LCMMGkQI35bVhfTxvfAJjI0gXOR1g/IUha\nHy87U4mBo9wQ44ghEH0UCq6v1YG2NpCLgFrHSuZp9+UTNZus2oRP5YejkeSO\nAwH9LFZaVpucAJhWk175M+3hJTR6G1eFi8b7gelxlbUGnyfsJ5cn7GvHyNki\n3sZ9ioMakVdAHAfEhW6XG6IfF8h10ToxZHQ6HvNXueMQSlPKAJaeaCJgzqoz\n6nc94nbg/Ljck+2/m/GvhNMqIEThq29siIvinsGEWH/wxlppJDdS7/qYbpdZ\nhmvGOLliMpkAhPiJW9voccMYejsBBzQ/guE7egj/VyMk04VplkTEm5Fe16du\nIxJPeetI8CD3mXiYd7gJGjoiEGW0s48W19e6ow8/K+lC9+xNOdGFSRrVTNx3\nIlTcGaygJ/+8Rm5rptfVuuOBSwgM7alXvkfsPayyOvuKAdJ46UbjDs+JzGno\n8YM1Z+JVe7EztDWOPM5pSrB44P5ibHfK75117N4kHSJriH2yD/71IIndA6Nf\n0MJUHTn5rHpuHZBvSI1sBBwpTMg9Po4LijEZe/7DentGE3Tue4zpUNdpsemR\nkz5/X3ouJwFAs0bkABODlxMJXji0bCR2X8/1R6jaBwdiABrAS4urrs08i3vi\nd+zl\r\n=CUoU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBy68gnWbUhaFXsfXM2zYWpUNB6DyHkrKllJAnM/u7b3AiEAxTlaVTmhvVR0p/UQA8dxog1Y4Nu6wxlfFO6ph4czmL0="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.7.0_1555071208587_0.007678687121845051"},"_hasShrinkwrap":false},"1.9.2":{"name":"kafkajs","version":"1.9.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","typescript":"^3.5.1","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"fd138411eaee3116b7992a13f7e3c6faa9251221","_id":"kafkajs@1.9.2","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-HtANhCeDaT8vXycsHLJodCUxWO6r0pM0dgrVMeAgQpPGA52p+b3SkjH+m4WZUGEL+ql2GYBYXrIXUC92TGNwuQ==","shasum":"ea5726dfb6f30330cbb56e60727c70725f887b4d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.9.2.tgz","fileCount":264,"unpackedSize":459961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEzs9CRA9TVsSAnZWagAAYS8P/1feZDtQuWJQp8+jW/iU\n6Q+s/TYdIqIVEqasKMB+7jrNbwP3J38rv+E2eGBvFFof3aZMVJ5Oaz+LUCrA\nyq5ET9Pg/YBr/wXp9mQLbsJsL89rcASrTXCeHRlDIXejQRLSyZnAiTG3ZR4q\nUHPcVCWb3yFkPeNE62PtGE4g9BmPR8Ku3PygOI2QhPHDCOqmI0RtaNwJaL32\nERzhTmumXR8Cd71YgFzztGcmcLX6oR0wKIUWfRcKCTq1KODdT5m3yI+fWA/X\n/eT+KJhPUWwTfjK0uo2mPqThjA6sQMEddrCC9qmNYNwg0O8xlAepcc9/7eGa\nTqSBPP9PtOqDa3T6XmjJDY7C+d8WJX6bRNgYZ6jf7Qii0glIPwXi0bA5dB2b\nfKdYsvRu1VVivgr+nfWAZ7ip6Px/IHLx30VUnc4MtssXzK0SIGhFnk35+c5e\nS5df2P/1QVRd3Sq/fdfrsgz9D7yTNtArQDOf4KP7EwTG0Wx5FMsztBuMqJv0\nF5PMKoVeoIZ+ImEsPDPtgwPwUr4wP0rWCbSf/5ehdyTkJs3Mza6B2Y8u03ko\njvDrBLMLgDR6dam33hHvEB/1xlm8os7dflwEfIBHzXeWCT9Cbhg3rspN+Fq6\np20viu/hPOZaM5/6Kw4jnMGTPcRtDIxnFGe199uMuJwW+1zotnYR2ERU7L9n\n9byd\r\n=NiIn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+JBZbudAdgKqPgX4o1lEPVFW71sv2sb76cyVY7CqOlQIhAIamnac0pYYUKzbdJPhfrc65+nNxJrwl/X2Zu8gllAaz"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.9.2_1561541436959_0.28537720421259993"},"_hasShrinkwrap":false},"1.9.3":{"name":"kafkajs","version":"1.9.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","typescript":"^3.5.1","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"9b9823128078c53f2431faa7a879591bd6ae30d0","_id":"kafkajs@1.9.3","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-NYLCXyC2AYqbdfNp8z/YV+e/oq25+KzHcrA9I0PZwiMcjKPasVs/D5DycWB0mR8HQZuL8+5xQcMz+BC7Ypn9rg==","shasum":"5b1031a6e5ac43ed60fb6a7774f5d11df25910a9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.9.3.tgz","fileCount":264,"unpackedSize":460102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdFNfLCRA9TVsSAnZWagAAL9cP/1tbQWQkXFAgwY0G6Z0C\nWYp9lzHVNTcy4JAP/MVUY+NPPuYs5oCcwkAeZtAxZQqvVrVsJMzu30ASuK8z\nzhWdeZx56LhDvaDXpl0s3468lxgO/kpcdVgiHbEg3ia1v256J0lgTSNqJJAA\nih6c/QnhfMGW7ZIAtuqNB7k9cJUnavvyp8gLjkxYOsemS5MVsAuwSuF5amH9\nOnPjNFxwpvlXm50PjY970YbptPD4Fqe0vHBZQv28nj8ZwCMbHuDzeAMSA9dH\nSY8ZA4vO0fLv+Au7aAvkLedGJKT0bTdbSPJGTwo3mvTVY1YvL0F3jM2i4euu\n4dM5FzNA7YHbB1yWqVC9tzgOhdKfuJyA+mzHi1rQgopwF9r1SC5OTKVanl0H\n0U1dfHrnXirHIKMROiyhNcpThQfp4xYiRtXCLHB9cBGYJH8b+D7vluwS1aR3\ng+xDcXfu6pZoKaX0uHZnftZpuVjKAQY7ViucUrv8j5ffwqSx1SLQh4Tz6tJO\n83K4uRT7VRGlY+sGEx9M5YO/fqKIFwvlN8gJGfayeLiEGC5PPfcFzL+OFeXv\nj2mYsfnB8DCKkB6/CsBfsWSKBwBvQ385IbnCZQ2qLVvWKztfl54F/QpsIqYu\nd4f4CsgpnZqz5tRix7LNpTQjtpsr7bCK9lm6PfbCRnvUkmUjBpd3wskvQ/Kl\nIQMb\r\n=9OZX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAZM/wEwLNi1aHLfv/o6bhgVZeiT4SonXSJhqRCpB1AAAiEAsvwV6thuL+b/jben031gdxNrqu2YIW8GV6HsKAlyvbs="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.9.3_1561647050282_0.04572987459340694"},"_hasShrinkwrap":false},"0.1.1":{"name":"kafkajs","version":"0.1.1","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"src/index.js","license":"MIT","keywords":["kafka"],"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage'"},"devDependencies":{"ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1"},"dependencies":{"long":"^3.2.0"},"gitHead":"9c5016d25855f5a2dd9294148f2e00806c257280","description":"__In active development - early alpha__","_id":"kafkajs@0.1.1","_npmVersion":"5.3.0","_nodeVersion":"8.6.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-0qDeflyyhPDBggf1Jlx4aVIFw/Ab9fbZIfdfVLpw4KqynZ7w9krodQ9ye959ZrVAh5byyWgac43hLvg6brWSZQ==","shasum":"688e851b55b7a1f11e781e7480e1a0feb8a51f66","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCi9LD0yU4lOsRyA/TQVBBpakxpNIwYg5VAPlN8bw14TQIgI7UaMwDhD1yuKVbqT5sXWACEaytJ4ujLsZiuk3i58gg="}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.1.1.tgz_1508185500414_0.9450735677964985"},"directories":{}},"0.1.2":{"name":"kafkajs","version":"0.1.2","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"src/index.js","license":"MIT","keywords":["kafka"],"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage'"},"devDependencies":{"ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1"},"dependencies":{"long":"^3.2.0"},"gitHead":"972799b6f858cbed968b960ceacfd2ea3540e575","description":"__In active development - early alpha__","_id":"kafkajs@0.1.2","_npmVersion":"5.3.0","_nodeVersion":"8.6.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-g10yhByot3yU1co6Cje/3WaMj/bhn5GYD16WIVS5d0FWRUgRGiSkQ/3Mgndc1AC0kni1tQRZ+wICcZxkVBN66g==","shasum":"34b5a8e26ea620b83be1850ba075e08930462f77","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEVwGfrQiaRQ3ylL88SGEeHvKmhMH4clBpug4XTbHF65AiBXedGaCsRl4MefeqWMzBnLcpCCAFVqyAwNPpsWkR+y8A=="}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.1.2.tgz_1508191832720_0.10636642016470432"},"directories":{}},"0.1.0":{"name":"kafkajs","version":"0.1.0","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"src/index.js","license":"MIT","keywords":["kafka"],"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage'"},"devDependencies":{"ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1"},"dependencies":{"long":"^3.2.0"},"gitHead":"b7afcc3c06b2478b4bb682b72d3c0d03ee416536","description":"__In active development - early alpha__","_id":"kafkajs@0.1.0","_npmVersion":"5.3.0","_nodeVersion":"8.6.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-PVmtPzq76HlWx1UfgtrkCCqdZNVdSys6Y8J3v34gVte4s9twDk15lMrtnQP+fEqYTLaDZrYv6UGHnPkwGdmq/w==","shasum":"a2fc089f1fd19126b7d6f6a06cc1681e1e234156","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDiOTfweSRCMTWPsvDGP2sqNNFlnEfp+Jg4bUORr+pVpwIhALdQnHiTf6aLpWcMDalxOwLqXMs/ZbyzjV0faOAK1fyf"}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.1.0.tgz_1508026657179_0.307706763735041"},"directories":{}},"1.8.0":{"name":"kafkajs","version":"1.8.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"3666f29ad8d4d2afab9cb2492ec256e17ba7bb52","_id":"kafkajs@1.8.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-awNE7O4Vvb6etYL+8WOaDv9xScW+LXF2OZpbXnHvBz+nUpEyuA13KhCxrzRybc0xthnbh9hpk+txcclMaFMofQ==","shasum":"3673a7723a901c2eed7748077b552d115968ef5a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.8.0.tgz","fileCount":259,"unpackedSize":435439,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc2R01CRA9TVsSAnZWagAA2Z4P/0TsWpbEBoc/MwE9lNZG\nJ9hervtS66fTI5H2ChTR5kizGcUVjoA7lhKf+kDyt8uMcT2k5aDQqDOXMF0C\nKx2EiKxo3a7AGSJEUHJMYntCgji+F64obRf6gK+iJN7sH+zFXE+jeqZtafuj\nCZdJyjxpi7/uBvRzBYvWKsst6XGaBjglI4EMh7QGjBGk721P+emA99Y1fUW4\n5IBWr9Z82D8bpooMkBeFSI9e0Pd2nvSwT637qE8OcvXPIt9BpkgWKVtO9nED\nMFKJQGwp434izXyghDh3m2eBknZQr8LBknon/locTlJp7qtkAIfLoAuOeICW\nnr1mkMQ/moPHD1dd+rRXnEdZ9NemRTmpYWXSxaN3ThwVy0akJPFwlqcRILba\n87zn4AZfIH3H2awzTvgkvaybSE7NkfnudlcaccQ0gsOYm70WrGv3S08HfPG5\nUld97NHsmWJl7DmVvXqsbviRAONgLZmqLS1VwCalynh4mRK+GEdOrAcvNiqk\nnrlEYWPJbcms8GOoVdWhvE7+kssbdDpwbK7ks9NlN78sdRjr9HERKB3BQC7d\n+0rgReDEESlz7RYM2U78WNAb9XcrW6PosY0lO3q2xwfEcfWwS3zA6WILNOap\nvA3Mf7TZjroMcMUsLDigqMbwkyR2rQIbiWUr3oaY+6YvmyUN9oHu+wdo96Fp\n2A5f\r\n=4qot\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAJ/EfLicbOdF+xhV8QMNPpfB0mVdR8hU2CbhWFqisolAiEA6KIlN7aMyz1A4xukWrcZlSV2piFoDMYqENjtMVsRdFQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.8.0_1557732660550_0.7992727305421417"},"_hasShrinkwrap":false},"1.8.1":{"name":"kafkajs","version":"1.8.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"9705ef3d79a8bd4bc2732aa6bb73ecc66521129e","_id":"kafkajs@1.8.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-utvi0V9RqyuRcv8TzoKAeDcZ9j9xZj4NwlrZh51R1Fc9v736KiVDFlPJo6+Vm7BG7f14FewFuy+aEWuAZaIp3g==","shasum":"630c0f7ecbce16502ee5c64795a6244d0b056f01","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.8.1.tgz","fileCount":259,"unpackedSize":436062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEeOmCRA9TVsSAnZWagAA62oP/i8Q9qKe8akx4FIoSjzn\nZyz6ZkBMircyAiKoaJZELtdEmMlAmLmLDaDo/eS0CSlPBIQvZWjNlsj/2AdJ\n+DNaOQG/RejAMdJdd1eGm4pHWMokxdJo3SXWNwAJ5BsWgOyvlyxllf2dzWrT\nDmKVgxoj7HEtVM7BoDgzXNXsW0Mxsj4jyyC7J8RFI3CaEcgfx2mEMyEt1dQ/\nbBtsAQy45wfgxzRb951Rz+1XviihUhHM+aHHk6/d3AzWYT3HjYYzx+DUKaQM\ny1RDzzmDV08qxs2QdiI96ZVMifpPhU9X7KeZTTiaoJGnaXz/R3cXYmPTrYZz\njBuU/NKOFK4Uol0ZW89hl44ja5LgoN/dl+4iQJNf/nDyGn5siH+aUqn/2GYz\n5nENyiWJJzs9zU1BOzENtHutBh1SeXmNwqGlB1GTrWreWKm7j+ZfM8y0CMmI\ndfz50s0drx9UIOGG/EFI3L63oC0dcsVMrF3DWZoGvwFThKvKrzYKFgouvEZL\nolEdSUGPKitvCPtsEjqaJHJUg7Z+Av8sZ1IUgQpYr4+wT+kQ1LtKtrg59ing\ni8V6LeRdGQ8dPY1fIjrHr/hsFnu+a5pb9Tc6Kr6R4EOt11qR4C4RKsTgVwYO\nHlMJkbIzU2Naky6mSKlyVfILuomv48+cxo7jSBGVoQcJlBSV5hto0pz346yb\noicn\r\n=HTFn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE8/bfjQi9DQml6Ib8PbnyMSLPQz4/AHCX0+HYRwKb0VAiEAhyLrBXAxKhWatJ3QjN6GgmAGsOtRQThZK04qgryUHVA="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.8.1_1561453477324_0.5857470675109322"},"_hasShrinkwrap":false},"1.16.0":{"name":"kafkajs","version":"1.16.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"4f0c52de2c928dff0e2fb3afb550545de4e412c9","_id":"kafkajs@1.16.0","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-+Rcfu2hyQ/jv5skqRY8xA7Ra+mmRkDAzCaLDYbkGtgsNKpzxPWiLbk8ub0dgr4EbWrN1Zb4BCXHUkD6+zYfdWg==","shasum":"bfcc3ae2b69265ca8435b53a01ee9e8787b9fee5","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0.tgz","fileCount":380,"unpackedSize":700203,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiA4/FCRA9TVsSAnZWagAAo6sP/3KVzxE3j4LIVYkBhEhg\ndW77SpDBP7Qgh266QxJSWPQcm8X8WmllRD7oz9mBOZXZAEKgVmjf5vmwJKEE\nUb0e0S372Wl15KsV4SA0TmvLAM988auooQsQ4e4fFO+AMHGHxttmfSotLCIh\nt37S87NN9V09cTfE+5HppG9/gZ3UlIkkTLCzh4EseBNAbMlMHLZgeQ8q/u7x\nTrLzaaYdr14EHOiEMC1gvOVWZGJS7aPNDdMw1I4+s3Pdshd99oBfZJ1XV8w2\n/Ujt1WaqgpWZwr7vOVcfvD76OxH5TXHi8nDPw6hu/3HhAfVIuwuaP0+JLWu5\nZRD/ItGLnn4MGldcrsxZm3FfniEbHAbp+iJ4aMd2dSUBxWRv3z3YyBHlRYyf\nJuTiL7lc8tasR6xqWFpN39ZaLObzbAhumkYzTV2V3KY4Ua7RV2zXmiDSrghA\n4lE9a8L96+TB/ru++i+opmqdcYNEv3/6QTrVow3AYVqKc5FfsvRfKbswx89f\nAJpvTyJK4R8M5oFvB43QujnEDCcL0eAIWV6TuPM+CXJu0K7kNu9lHllYsUFN\nteKD3J5akod4kzMUNAb4CNHi8CkaK90TCUQSZnxZ1qz489ymGvvyiiVgbY83\n2PzSkAhVDJfH/CJAGmRa1KXGKHRVngyI+0qppySyhTUDOD0rRgDHKKt9ErWq\nBR17\r\n=bD5B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeLc6bSs4RiSbHjThiDGnHVcVRjwHq7cyUZv+eD1rYaAIhAPA9tkr6JKx8tdxxb/ZYRTUgi8Si0nnBLRMThp8E7ZS1"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0_1644400581571_0.6017094189504255"},"_hasShrinkwrap":false},"1.0.0":{"name":"kafkajs","version":"1.0.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"14bfa7619ee7e087c2c5dc88a4c46ddbea840067","_id":"kafkajs@1.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-0D+g9McmBxumTIu7xm8jeoYiCSolOsmTcHxfL8NfJ0T1/f9VbJO7pA6fBs/EzGVm5TbTDHHMF6GHJR7yKICLnA==","shasum":"c5ebdcc136249c61f96f0781c23184a0289597f0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.0.0.tgz","fileCount":132,"unpackedSize":374947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+e5sCRA9TVsSAnZWagAAvY0P/28FLa70JFntF8A0dqE4\n0/QNzs8+NG9zp0LR/Kzs8zxa0MnAfxVlYZmOPG1ZQa77lmSmArodZqdvHbqJ\n2zIeWPuAfHOgIDhbtSa3E3uThQb7AwO4lRjbO8PLmJzGc/gPMwDIRFIBeEeC\nMBNAJtYG4TGXpI3EXqwx8mHbZKwbd6YgPvXAxZy0BI5sDVz+/Z+bSUXzqHc5\nW9M24EH3sv6HirRmtcCO4J7KyzL4rn0KVM7d++9iH03z6i1pM0IARerzLC3f\nAYGp6cwGiGVUaoAnYk2Vfzq0KdjOnJe9wqOgqla3EKiymczoNd/qlCKD0OId\nkN6z782VAhKgK1IgTng2Q8omRcuzyfA9zynttqTnlQNpKBb9cmDaChtOmiOt\nD+3MGpIP6FC6ss3D1UNkgA+w8a2wnI5RISPLwwmGs1lPLk3Jw9jm8qLf9V7W\nz/rqpYNaEx871VVDShVUAjmfxg/zQudoZEICIUwtvjdXdK8IlRITVBLtsKNR\nsqaFTXfk+mwdjbAeF+1apev51WleWa8chIxnidcbBcyKW1vHRjnxPKzmPaaC\ngSPoSe/aO9hqsZ/wj/h6yXZpyna1SGDMAzz6TNUvLHmme+/QO9vevT8uudiE\neadiCHwK/RM2g267UU6x7+VCeKq8+R0I+93SffB9Qet2blb0Ns4MPxKwPtEo\nUI9U\r\n=VhuB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/8AIIiXQ5n4kzmAvgqv6D0fQ/7qioAKuk+3s/DemyiQIgDulji/jqihvLRLiUg8k0C5wMI09nY7pP0ckaCQ830VE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.0.0_1526328938678_0.3814745466866143"},"_hasShrinkwrap":false},"1.0.1":{"name":"kafkajs","version":"1.0.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"6f86a56263cd7db2e30ce22eda8c0184224f0751","_id":"kafkajs@1.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-3SNPjYxhdaTRHHb3U6F0v7KXUa60ri+Fo6dKhBx0nYDSd+yeHRLoFtFopBE7lorz04TYkdgrur2XtWRiiYwJrw==","shasum":"f83931b74b6f388ebea342db609f09956cdaab6e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.0.1.tgz","fileCount":132,"unpackedSize":377505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/unJCRA9TVsSAnZWagAA1n4QAJvaMFudMHgTUPHLgCke\nGwkpo5MQ+ewSZwsonm0pVuy7hWyE6dVZdvYeMje9pUlA4QyJXV8e/uxYVTAe\nCHpBgDIZFvbstYC5XfmNtKEvHQ7SYlchsMl/77tkT4cec89eLUD9NP00SitR\nf0or6VDFFuitkWx1KBLi5isoq56p3FU/+vv1Kgl5quV5fiSTX9LjmfudkjkR\n6E5Fnzr7/86uhUQ4qVgR9n4+irVl7iUA1kN4sMnT4Nj1QtD27ObKTfJC4ZBn\nb8OxQlCnnGWWxv1gwAhpqvjXL8AiYDBuIVqSzk576RHUApMIeidZnDsyIFV8\nIXPxpnTP0/uPVat7453j/PQ0qn+mYFqqzsNqsIiBbovxecsQSHia5rFQu3Sy\nf0bihJY5u0PXqNfz/gxHIHOw4yWTy50UmvKbHqiWt3nSqJgemq6inYMTqGf4\nnoLqMIUbwpXcB6FBm6QVibLb1aQwGGTa2iiMH81/FcWngn1jhkKI5Ut0apVy\n6xn4GqMsVPMQomTtgwy4hosIMH6LiUOZXNaJcEu8YVCPk37kmb0yrc+RCdlh\nbJm4zkFsoZkjv3i97lfl6LPP9Mzu33vhbPBguukrgRH0UndO2+NvS6C/BWHB\nzAQrRfP779mJG68vmYvFKA8jqGvx+EO5dz/aLFvXJep88LRw5/2/M41OPJWI\nVxJp\r\n=xJ0k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7ICB48VPBQCL3QUY99HG3uqfAexDloAXo+DdZmyOX9wIgSz6ijVWOV9VOSdoafXy1Rw9OCB6MnwIf4PaMY8mNrOg="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.0.1_1526655430829_0.3158025358318013"},"_hasShrinkwrap":false},"0.4.0":{"name":"kafkajs","version":"0.4.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"55c00d48ba38bd6d1a2f0d1520f56d616d690d6b","_id":"kafkajs@0.4.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-tbpBL1zKJrY8Q5cnrLlWtpjpca2Zly9x5Sv0hkshKMoF3ZkGylDW3LZwfRVjx9/ahi+hcayi3yADvhqi2+pggQ==","shasum":"c810a0bf4e424e770e2b813c0755c9235d86c64b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.4.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEi2/0uVgIEKj+YhCIFKxkURKL7+zA6bj8vcjTduDxwBAiEAkos1WmiJjEQ1AcDw2NwUaMqhBMaC2FJN4Fk/uCl0uIo="}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.4.0.tgz_1511468686391_0.039013479836285114"},"directories":{}},"0.4.1":{"name":"kafkajs","version":"0.4.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"0f7f43de2e08136b50b6f51b0cd3eec4cb415bb2","_id":"kafkajs@0.4.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-3SJltlAr6Z1lnMZM+SL91gkv7P4BfGi6kYS91i7OvVY+P3sI/TQMdhVHSIXh5vxhAvMCzv0239BGWKqbE+GMow==","shasum":"bc4dee879b68da43dc558e9817431c6749e76d61","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.4.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHXzT2eGL/TgYkjmjLyHSqMGovEGVfiI9YJReU8HSy6QIgPBhesp9P6X1l6JQg/40BVXsPBHtSEPxAF1hid0jt158="}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.4.1.tgz_1512078988120_0.3759552601259202"},"directories":{}},"1.14.0-beta.9":{"name":"kafkajs","version":"1.14.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"6c553c855e42688f196aaf4b9054750ab7d3f2b9","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...6c553c855e42688f196aaf4b9054750ab7d3f2b9"},"gitHead":"6c553c855e42688f196aaf4b9054750ab7d3f2b9","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.9","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-qXgtT4uDCPb2CUApQb0ULwlAy+5nMFq4qs/s5kGJMvzviBZa5+F+7t68Rc+Jc2ydcpxQd8ijKUcOHgy+uO9Mng==","shasum":"83acd0b6cb8c38d8cfcf8d569e24bc40360c98fb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.9.tgz","fileCount":308,"unpackedSize":578108,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaFhPCRA9TVsSAnZWagAAxzwP/jeizAETgAngqev6grw4\nLw2cmRiEdSg/UwKanEepkzcgLQd9GBqm8qVsr86o107IM4kwIsEeh3nwL4wd\n8Y3CamHg/bd+UOgtO1RobRYoIroCmwv8C/qv0p7kfAeeRyr+vwEL1Dv0HTTK\nlydPHbCOMwqaQqPQDa1+qr/dYnW7mqNzMJx9EqgEDibeE9DhczQuEnu7z+va\nq9mNMmHU/kJl104Tk7ZLVh5qfcAmyMeCNwAsW2Qwt6P0qdRjA08eIVVnr4DA\nsWoWbAVr3pteH2SuMGzrqcreungb7isCSqpCHHkxGN709blEr/f8vbvXLzku\neRvaWWJfJS5bvD6Ek7NKD3EmaJ3+BZpAhvDuuxyKcv3Mzb63ud8WfiMXmM/p\nAygQ1h4S+QOoGg05mCFfAINkdgvyGJ4NjFqpul4NZnq5u9HGO1eYNhsX1TU5\nGxMjXlWjsVys4ekEpJ8UQ/k4JYKoaOk5vs4TpfoPSsEtyt/OeiyLzw8zc5fq\ntKC/BaAQh0kGumLmH9JzU+rx+4FEWymNF3AJ+ZkfevCuU5KHqPtAokxE9aqP\n7bpHTcdvyAnOKiby61Na1Nik3L6OPeYHZC4K/TzrDoTc35iZua2fndEB7TCZ\n+/ZSuBp/vX0JwhmpV8OcniLZjtD0Rse9PkBeAtFDv4Ngh/sMndksaYpQCXx3\nhsTj\r\n=ybED\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHEz2M/5cHu8vg+C9k47lzGh2kw6KCrGPhskbC98CZFqAiBTfUH66cK4YasZwwTrJ1hf2ivexiCSn8LPwpAYJpJu3Q=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.9_1600673871145_0.8351744344452885"},"_hasShrinkwrap":false},"1.14.0-beta.7":{"name":"kafkajs","version":"1.14.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7b4c574b7977605844a7cd43f8d1e876bbf7e0c0","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...7b4c574b7977605844a7cd43f8d1e876bbf7e0c0"},"gitHead":"7b4c574b7977605844a7cd43f8d1e876bbf7e0c0","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.7","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-pMHV3mvepcUBIMAkLbZHy13xXQH4lbFJxhJa80H3kjsO9k/gWxptq7zKK7QV1HyRSrn5fzZad+Q2oNfAoxrKeg==","shasum":"b939ef387e4b88f0d548d9489b38675682879aa1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.7.tgz","fileCount":308,"unpackedSize":575269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYzt9CRA9TVsSAnZWagAAK6YP/jE9TeGe1b+iei47wyak\n/I79F+zVNpxIMRe/jtUzncjJg7C8eNAVZdl7TjoBDhXRqSr1eya7UXcb3+H+\nQQqSJqkpeoOLr7KKVpVnkn1C5scHkLsszli65zAVeK9kqgps5PjbhFMJ2cz/\nTUsXJTLCO3PupUufegg0b81kwgV7cVfL/SCdtSK3J/LnafgHvBWga0F4t+0u\nCnoNUjj1L31tdwCnHvES3liyZAruTJ7ppmsO0NzftjVNQ32pyZT/nleCaXj8\nzdKGwfHYG3Kf1Z5nAYeLH4/AMjtvOBg2a18/986wNbgA7UCrF5KWMHMKf9ME\n+7gcYxmIvwHOdYF1+GqB+t0KdAixqgCPaZxqL9v6m9/hAOzYwoNaHAtaosQQ\nqLDSrxYv3NNJbxeS9rwIw8BGQ++6MtKZ5mzSHlo6BWLODBYWs4cDbF+WvNYd\nReknOBER3Iadh3/Aa3mY+6ZFOalOwV/OzTHMpHPj3TS2505tlEWkdONfj16q\nBOfm7i6sO9TU+UncskgeK7CG3GfFkCSemaMM8zhkRHeGTgDFrdOd+W7mwyvy\neZTyNbX1bfB0DF5mVh7FhuMNWSl7Ng87fpF4GYIt/PiP3BVZe8I+Sp5BUDqT\nVpN9cYLJB5t/3RLlpR6G56VTHU3h0e2afH+quQS/924qDkSEayJKuy3JCQm0\nTDRc\r\n=SLJr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKU0TZahg09WsHGRGDW02Z7KlUtrT7VzODvAO9iFEWYwIgLvMdM9GahoPl5sxIFItThK+dDERB9mO0hsijkfZvGcM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.7_1600338813087_0.9638370177003954"},"_hasShrinkwrap":false},"1.14.0-beta.8":{"name":"kafkajs","version":"1.14.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7614eeeec75af3be3deb5f986e92f96ba0aeee82","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...7614eeeec75af3be3deb5f986e92f96ba0aeee82"},"gitHead":"7614eeeec75af3be3deb5f986e92f96ba0aeee82","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.8","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-moEMMnAVO4YMv40dGMGbiusBZBZOkV/3F0Ywje6s1Fe7qmN570xYoZvxUftSlY1rloeAIlBrsWuCbcbdmLTNww==","shasum":"7cfcf48910e634b10cacf143ff7f66b7c8645396","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.8.tgz","fileCount":308,"unpackedSize":577267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfZHOTCRA9TVsSAnZWagAAAx0QAJo6QFIXmAFX7QwVbNe5\nZZNpFEArRM+B0Y+MmJpj0NpHnHuDGCmJWesxInacmOce4m+vUODh/OfrNJI+\nJJ/gNL0552mLLIqDpKdVnfeqofVR9QG/fTHcZZ2w3D9xS30pn8K5ahuAVdNd\n1xhj1dYe5ugOBdZRSPzlHeZElGZ3BEtVpakB3DHxEVDeeb/D5nCXe/5Yl/V1\nBaB5exZQo2BgSlhIREIgg6b2U5DCuhhCENu7kNrm9wiNmEaWoauU+NI2uvN/\nOe5e4v6OpdBEzX9q8h9Q1CJSFIOCLoBmeLYgvn+2CeSePJoDncCOW35cQgnh\n9b7r0neE7tshE89reiJKWFHwIGezxxibDg0M94HypFIvuGeOCSjLJpwWWkMn\nMxP8xOTl/ETVgy3GL+K7Kei5R4bX+ljwR8DZHEfyL3q5hFFNaB81i68rOa29\n3yho7QnV7R5HbZCBMjXS0QVAaYNPx0MPbFgFJ/FvqC9r4MJ3WKONpFYTWYi4\nuC3rOTmMQHsHZFbnvvmtWPbQkVUdvgdbqim8kp+LC2DiV2Kxkyi9RY9axfB1\nXTQ354XB7M/BPhv2pb8spTYM0yrMAE+NvlvFlmSh8NgyPmyD3bpNbnuX+2h7\nR+Qjik9Apo6BfQReSKoHO1SUhebGm74CYbiMJWuSVuNVwAwxittZ+OKaEMWd\nZh3l\r\n=vL1U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBYDF1L5ko0ykeQVKgG20aAjRgtv86fF0OvrhemHdWJjAiEAqh25ghn7NrNh7jCVkPdQV/QbuxINxtMjsXevXA3YSXQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.8_1600418706626_0.06721020745035888"},"_hasShrinkwrap":false},"1.14.0-beta.5":{"name":"kafkajs","version":"1.14.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c09d3cc6bf6c9e0af7c2368209127781a30d07d7","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...c09d3cc6bf6c9e0af7c2368209127781a30d07d7"},"gitHead":"c09d3cc6bf6c9e0af7c2368209127781a30d07d7","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.5","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-GyMgRj4tPk3EG2zDRrSEz++JD3XcwgVIqcpmhmVd3Os2oC4ZK2FDST7AHzoGHbS1nVUKccxXJyyywHUosOSsOw==","shasum":"33746408013dcd4da90ac4f625522d4d686794ca","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.5.tgz","fileCount":308,"unpackedSize":575197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYinACRA9TVsSAnZWagAAr4AP/RopjI7kyjjMPcgonjNv\nq4k08pUvvm4p6tI9AeK9J3PydjSM7LhwPH1BYSiKG9V3E1vmPptiQ1wQbtqU\n5iYcPY/1IzTMtQL2aRbz/aMO0L4BGGmFpoWvYBhpS/jUZ9cnBlqN/1Joc04w\ncyj6ayiShrny6o+GQA/v8JQX1rA2iCfFnE0iWJnH5B4OudwJOxnousMzzTGS\n9QH8OLgqvGPUUI/IBHXf14V1lqRINi8qHfYkqSL//j/vJAkqcxY9tXqwqoNK\n/W+kXkGnygTpaXQRkr04rDfOQjGhTBDLa1i8djExJ3rDZZyznTVsG/iOmSJt\nUZRDHSLV/pzDIyXv0DJiiIx1saL/6KU3L7imwxOnD8ccxD5kQAMzwFL3wZEA\nst8pjIJIHGnD9HvgGQ3NIXMbykBVsPFqI6/Nz8W60NPx+LhK9muVvHLhKLx6\nJxO3AorqWwEH9BReXPRsE8YoIepP7JTaYbRlexIAWOvKeHLo3XrSjh2N7U6o\nqnn3sW1WtcNpFzJkSKN3Wb8Jst8XT+x6X0T3ExyxMQ2RtMAIJfM20bH3wBbD\nfAkEsgEi2JAduz26vUl6/Qp8VPh1LSww5Z0AVNW1wQ/smruBw7RyW2EgXp80\nU8dOJaILNxd3H1OyLlH3GVddTDOduKNNaW9OQ9y4pGgbEp5RspWSGM/uxhYR\n1NHh\r\n=YM+Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEK/Ohnq/NlcbWeeEPurG9InBzRv6U+AYMB+tO9BX7vyAiB+X6Fg+WnTr0PH9QmHeDs+CrejDUw71kUNGx52hcgmhQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.5_1600268735820_0.15593191708646748"},"_hasShrinkwrap":false},"1.14.0-beta.6":{"name":"kafkajs","version":"1.14.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"6ec106780671f980c2d27698297caf9b48f25462","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...6ec106780671f980c2d27698297caf9b48f25462"},"gitHead":"6ec106780671f980c2d27698297caf9b48f25462","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.6","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-My8BLNkeLs5hsyIfqQ+flF5P2J3Zz8D9i7//5TS5ucyIb1T8idKzlP6wksOANbcuw0AuQ0tC0Hip001lip6lug==","shasum":"acd499dd50ddd768014fc08a0d3a5b963b6b334a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.6.tgz","fileCount":308,"unpackedSize":575116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYkMuCRA9TVsSAnZWagAAFR4P/3ycwWTAFZu/WxcbHUel\nn2F2SA7zCFTjVYpU7aWHNfkz5uFUVhJKkC0kmz1l2qKYa0gLgz9NAwEFZeyN\nroIVjP/cvNbYLbxK6+ZTCreEal2PevUf5O7cWb9B9RP8OQCOA6N6I5K9ruBc\nF9K5bwIAYs4khXxwYTs3erzSKpqu8kBwIKlZgjYlgtypxFguToxehymnxWDv\nCTJ9m2nCiOg3grbgQT4/3nzHvBXM68PIMQJeyNuoQH/gwC5RcEPQO/+/DoP0\nmKxYP8GAS6EAdrMRDXKK1TbdXWZIl6NhIv+aFIKTCVsdBxaF2+7bUymONOo6\nTD0QuF93ksk59AFVieYiOcvCC92A5s+dseXq/IqZeRGurEcT39Deb4Uk5lRG\nMGDFwMQ8/hP63qfPcomudwGF2EraIrM+GAFTpgM5xiczvHHiIlTdMoItQqZk\nVhFzu+lueBzZ309QfN2zttEZcUdOiLrYczpApvbcA5aXPFpkGbDHBQXSmlFL\nL9DEoB1iOzCDnDa5l0b+Ysm2kXUOYKckaswUn/2sMTvICgktYC+jGo++lsuv\n6FcX0aJ3xsYCe4gYv3wTgge6SLBHxdeRzk3GtosFv91Jvvdg/19sB3Jlw2Ay\nVPtfDUE/hg5NU9KOTm0jJxlxOpyos1drDyIfXOfzAVaddoo40LAiNvK7fmj1\nMJul\r\n=vfv2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2gx4nqF55YnYuiM3m30EBuYeQzVM/OJ9Kg0gl/D2dUQIgUpKwl+jwi7Zx/N7/XdEytYfaLF4A6z7MUSuXOvSBFUk="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.6_1600275246433_0.2645175984433241"},"_hasShrinkwrap":false},"1.14.0-beta.3":{"name":"kafkajs","version":"1.14.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"bf598cdb16b787a6b3af19ff4177a445c8027c63","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...bf598cdb16b787a6b3af19ff4177a445c8027c63"},"gitHead":"bf598cdb16b787a6b3af19ff4177a445c8027c63","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.3","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-WxujoLfbE4lwk8V14tt33jtk0hyEuzakzFO+nkzw4xbh6Yj7NKQPQpmJD8kclQhdSpLH6LuI/2Jhhx5b1ThBhg==","shasum":"0881031100aa44089b95e83aa0e2fb716d0671e5","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.3.tgz","fileCount":303,"unpackedSize":567401,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfW3C0CRA9TVsSAnZWagAAgqAQAJqWDCidCFdJFIsyrX5c\nl3q6lGUsGSfCNUW4d3sLJCEydWDhT+fJLWOBD1vjGBPbsYQNubRImkYXCWQj\nSgOXPXgMkJYJW2G+m0aaFWiqqML9EMiOqnqzEU+Xyaf96XnLXtQevzJNGvfO\n/9krI59usahXrrjJmdVlgtlU0Gg7IQnRmhMV2R+g8jw/mm5ggHJpN5aRFB/C\nccuPAAVnbYVemaJEejrPxBmDZhrfl2Zm7IMrBhrxG1qf3rV3KLIi2gqCXxbH\ndjW/VRbf9rfrnnxHXCsBu5K4TGVe5IGRgmZEkUqJ/QPF4UP61PPufrdz6/7d\ni0eVQ+QS4Kbq27kM1epwR4hYt73orK9EnWUinfNtqOIA/V6xFkO/GVXPLDDa\nfK9rAAmF04mFAddMwy26y6xfC9w0x++vYzYLzyQZrw4rwE7NiqLBeMfrpBTj\nYS2c25uJCHZu8h2hjki5F+qaLiQGl7B/KWN4nX2IimoU12DwAHmClDt9weoT\nNejfUvJJxQzSosSHo3kUeu3dj35gJeZMcG9ZEw/Gsb5z24LFxPiSKb76tJAw\nJlPiqx0FIH4eEn+WzJe8O21DwhW3jgPRJS0mQgY7L1qV13OoAvp9oHZnvNj9\nVgWJnZ6PAbzJefXuw4a7c48S45ZJVlKPLENpfeBpJJU3XkgqNzTfDWEmxk5U\nYtFD\r\n=IWTM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFE37yHva73D+tdAHWY0dcQbKdsOw3nZy98J8jFw0dLJAiEAvw0AbnQHtitaEono02KIEXBzdKIjdwnVQJ58wD67vhM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.3_1599828148419_0.9970002684849348"},"_hasShrinkwrap":false},"1.14.0-beta.4":{"name":"kafkajs","version":"1.14.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7ac93f55dadff2ba8063d4f2fa235a70e04594dc","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...7ac93f55dadff2ba8063d4f2fa235a70e04594dc"},"gitHead":"7ac93f55dadff2ba8063d4f2fa235a70e04594dc","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.4","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-kk9RcHn0JLK7cijtDUV4MIrumpcOWW/hn/MVeeoC6fPZWajFA2gdvnow4Cn3tIPGow5IT6v/1M2pS0ptJZOG6Q==","shasum":"0cdb975870fbfedb0d65649c44039f9e110fdf3c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.4.tgz","fileCount":306,"unpackedSize":573210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYNGkCRA9TVsSAnZWagAAg1sP/1c1XTf9mpK7Z+zIOIJO\njs5Nb7EMQocbvhl9zyKElsrgc7yI/VtcnDZM1OvomOo9nK6WnhdVSdrNQ9yh\nqVg+WYaxyLlpi2ICz8rr+qim4Np6ynTjJS8Q+CDARQnmPrs4oYbKsB0ID6B/\nj64/Q3BjA3PEkohozmnvqBl7Dpi3t8QG700dv3prJqvwClfTW9rJq4jEybVo\n9C70bC5oFiHiVXpxItsaimR6Rjw1BFVQZBqLgKb1m16Zg+K/mjKwTpMk/kV3\nD3oLim55r1xiNKtsKClDAG8NgKzWXjtIXV7q9aAx5Xy6Z9MZ1pjPteqYYXqc\ne8rSioLvMRaJ9LC1I8BWMerj6iUv17hTvtbaEHX9WUt72f5LBBtcQ7DGBt7o\nCm6acnK5bhxzc3ii1oD9g+xUVfIE11TbDPDF1pCPpsrP4C2h3qQE8seo61Uc\nG2cHkWyGPPezVFTPgpSn4HwQq+soCJL+HGNLYyadhuPiDBOUCCVs4ma9k1BU\nLaPTIv2Uwx0PSAZml9Oirx62+657p4ZXStaFvWwBQIEvRJNxDwq0l1Ktibxu\nyU+i4wlBDrYyPOlaeFe8jrfVs81CzcAnzCIR2tlI1UXh7sW2IbZaU+NtHLQr\nvrEMyYh6uqJMmvlwq5YagPm78TjMbkjVdJMMNqwpizJak1fN4Ggs099bQp/S\nMnCU\r\n=dy2x\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBxQRloRn9/bEhf56Yl9h/rxCozHsl8BK0Oe7HwlfZT/AiBe598C+RdoR3eLg7AA5GSQ/riO5SrTl4c18sEsLg5l8w=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.4_1600180643488_0.9014892325593677"},"_hasShrinkwrap":false},"1.15.0-beta.10":{"name":"kafkajs","version":"1.15.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9052b0873334a3378c5a4d6a07d845c2fc48ad0e","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...9052b0873334a3378c5a4d6a07d845c2fc48ad0e"},"gitHead":"9052b0873334a3378c5a4d6a07d845c2fc48ad0e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.10","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-UEULbqM/aHLrEyUjomi3J8C438HGPR1aLmzJNFheo07QnxqW/1Yt29jRJ631jdLzQQA04cc+Dgd6dQ7hN3Pwsg==","shasum":"e8e51943aa489371deab8cddee477e4a86ad9cd0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.10.tgz","fileCount":347,"unpackedSize":636457,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff1k0CRA9TVsSAnZWagAAOboP/0LndnkLDojHioW1nz/B\n6S9ukm0G4nbF+iY4q9rX8bM4Gc2hNCz6oA4rjmEuBT6rXl0VHJDjiO/rfBSB\niDIxb+MYybDORiwjWR3LHux5czKbRTCM/Fv9KWQvsX+b8nFScZu+NgLOxp0N\nVXf6oO8GmBf1DGVJQkQJctFwtTR/Q7rt70qtozWRKjAeOSJm8ITLHlXJ/3/7\n3oboYs7NoSwxw+PTDG5JIcdBt6mwJYOxF9NTiBHavx9a/pU2yU+0RUx3A2DY\nEKB58H4NWO71L9zSwI94goBzCfVKNJmjJiDIJJah6HTm3MnOv1Bvp/gSfzp3\nD7MalK7t7z566cgfHQgZBVYcU/X9a1X7V1I6aMUXOY8eZZhsAIYi1yIFGS+G\nIBU3Z0Tveqxeqe4CdRE87fydfdWpS13Tp/ZqTmN4LHqaiV/ggn9oLnsP8ypn\nVF3L+9nFDTxbaPrSeK8kACjW1cw7Abqml6WNZx3zf262uf8+qmNWQcvtW/Qe\nu+JddJNmedXqqsRwygX2QfAymuHf/s7/Bkzc6MMPYlRvAeHJTzWpjGQd11Ww\nG0BqZjWB9uwgmSq+NeM9WvXROy1hPO81aMpST/UgpJEVVOks1fGNCNy14gh8\nVawhZ+byS9PKS4agcjKHTWTEzFgxCTugtezBce0WCSFopBXvuFBP6XAbMuuB\nOtqZ\r\n=9nFd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDJbjMXd1oODuPw+uzP53Ehgns4lBi1XgqtSRpy0EuVKAiEAhvLigbGaAQhf3pOy7Gv//OHaTd8fT7aQQmkL+NBSFaQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.10_1602181427704_0.6345681244361401"},"_hasShrinkwrap":false},"1.15.0-beta.11":{"name":"kafkajs","version":"1.15.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f9dafb53b6303991e745959e6eef4f8384f0aacd","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...f9dafb53b6303991e745959e6eef4f8384f0aacd"},"gitHead":"f9dafb53b6303991e745959e6eef4f8384f0aacd","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.11","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-4tKaWqH9fah+oOIss2j4fT5shN8PZvh4r3x4PIJwk1q5w4nQ1yahjLziTeBJEtbhhvWO5M4PpD5C7E+h+IrKrw==","shasum":"3ad717ebf4192d3d2b88516c813c5d55eee1fee0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.11.tgz","fileCount":347,"unpackedSize":636459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgDoICRA9TVsSAnZWagAA5DEP/RPv2NFLDUhNqWq2s8Pb\nM3AomCAiO9xHY4JiNx2W5JDKjU5BsIgCE484NxowocZbkPQpFao+tyylQiF5\nqXy9k9iblWv2NvuQCrq8H1WIMq2Oyyf/3VgCSE+G/LvMH7XZxqwH5igRbblu\nBh2Ty6btEQDPMXAnf1B/rg123uIjeyxhbIequ6tONo8FJNiA2dohWjgYP2eX\n+6ggKYdai1mnVkOK+Tzxv3lbW+Q0N0YwiOhlsET85McXtCgDqUyu4JGDSyAR\nnyvB6F0uaFqz6rITMkW9dU4Bnf6WZZ0iskDGQYHUmYLw7Mh2FV9uQUHbgu/s\nZXzlYBqFKqMgd41qV1bCFR4M8nkXxe5veV4fkgussyVYtSxnuu8fvCBUDHUX\nLITWmmeoWg9Wl0LbL9bkCJVtANh3MtlM0/iR+m8PcNTwdzmeEdiSclDANimb\n4OHhjNfnTruYLFbgk5nryEHKgdNg9NguLAH8mLVHb+bkThFQLK966llEv84x\nCsBgVYZu5IfvrDZW/dG/6VMen6j8VGTA40+9pvtKDsiSWKwseah5+PC/mviJ\n5X42iXx2eMfxwYmrNhBoJq2OmoZ75I4/5q1G7jOfjC4NByW9WCT7Wf3Ae9j3\ndgQSdtZZVegZCezSc5oj2ydr2d/nIevLag7OSm/ggDm2d0e0+qxYSmV792B1\nGaeJ\r\n=Dg8Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEgE4FEtaGcDvhnE2+A9E+D/yNjE2rc87DFGpC80s/XQIhAKklEs8x/84ykKtcb+Fcxqok2b98fLVRdJhFG8PW/imP"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.11_1602238983258_0.3660376437606312"},"_hasShrinkwrap":false},"1.15.0-beta.12":{"name":"kafkajs","version":"1.15.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a79fc9e45f6c8cd2695e23cfb7689bb824fb86a0","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...a79fc9e45f6c8cd2695e23cfb7689bb824fb86a0"},"gitHead":"a79fc9e45f6c8cd2695e23cfb7689bb824fb86a0","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.12","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-s4n7LW1lNt1G4uvz1U6phTJ97QYMzqPvW1wgzfAa+qnyW3tQGCkAr+ea5zeEEQi0GihaPTRognkbAq1ddqy6KA==","shasum":"e1406985fe959b80952fd968ac80e7534f88aa91","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.12.tgz","fileCount":347,"unpackedSize":636471,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiVJTCRA9TVsSAnZWagAA28MP/AkHvn7YxBDChNw9Dv3Y\nS3FYkCrDQf4VXD4WTU3HOwKGw4AdUXZDrkmzmj9+UDASEBm5mCKlIZF5nwf5\neF7Fs9aCiw5k6yGnB9k1GhggKOPQSS9RinSLVG3timtSNoOmx5pgL1vsuIYN\nC3lS0jqek9PceYZCrbJ5qLPzBvpWkivvowgwuJP8uz7pp5zyn7r2gQiFCBFl\nPMUoKv9SPp3LJWU4czCXXRmueQDa9ZMSS/WSZuUI0zRJYDRbJhEHRA22kPRr\nq6KxlVEfJVV2CMkK7QzFe4vOuGzoqs9vfh57dlHPbVYPUgXWLKVgPeqd5Q0v\nZpYqOjHLOA+J4qLKue6crHXkIqKxtMix1huLnQBdjqMnPHQvmm2KXsEB8Nsa\ne7YiA60Pb9Xq6Kzbon7CeL3WQY/DcQx+Tc3wWcaWIXAEXh1sti9+g0/DTlaM\nGuAj2dxa60It71TamlCGEKFdJ1MsqWgUHC3dvF5fMUefRc0kD+9qTcmk78Oe\nqad3oATqQDxk7sZl/CzxODGnMLDqFtKOQEOQ8vhy/CriDhY6//mDDV5k1M/N\nNlAeu1RJTQPzxiJtQjlrjAPuMZdG//YRvsXchntPnwFCWbByjeeq9pMkDwOm\nd+Av9Jnq0gsicJXdHWhUKo+qjqzqSQlHcLblCH2PzAiK3/A5tFLgAVidEq7u\neHKT\r\n=CcMf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCglz9SzmxB956SwL+TLBzJ5nqoAWMhQAT4igJnE/QxQAIhAJF6ZxFHO6NbB1ZGv9d+CAOKRRjPkOZp+uCQpjVoBOTD"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.12_1602835027227_0.6298092292258903"},"_hasShrinkwrap":false},"1.15.0-beta.13":{"name":"kafkajs","version":"1.15.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"5b90d16106eb0372d23c6d31ee139958797ec5a2","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...5b90d16106eb0372d23c6d31ee139958797ec5a2"},"gitHead":"5b90d16106eb0372d23c6d31ee139958797ec5a2","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.13","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-vsrcTVLqaujT6tXfySe/fApvoglnPaD8kB7HGt25p9GgInsc9Mf66rqMzehRcJnO1fNtFQexo5TXKeMWDgSHzQ==","shasum":"e9c7999955ab0635cb37475915baa777a88057e4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.13.tgz","fileCount":347,"unpackedSize":637220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJficTBCRA9TVsSAnZWagAAH/YP/3xd2m6sPZ9Bs1cBLeT3\niHuKNYTc0GgnkiH5Lh2TS9cfqXKoaB43kQHSTROLkX9QRbj0D61mxUOAnNZl\n2QPPhfKVIIzNay6Ufi84a+qCJbcc/cZDsnSJV1kIyiQl/JVMQDXBG7SrqASI\nIAIpURCEc+4kKDItUpoxuVNd81LdEkBeh+nWm/TODpdVnCAmjX5Sdtcv1yHH\n5eQk3ByWKy5r8Ierrn5TyPfhYuLsKDdtxrCtad9/Dn5lNnnM/gbRgG/rvZmw\n7bXnDZZhCkMZCT9IspcNqT+Ub8SDCprMmIspFlJ0hq90MnNkrKxewaXhwvm6\ngetsgnHXs9t0AOsvP7KSzStmh2KI8h5i6mCBZ17Fib6e6kc+bKVlOrDJTlt4\n5By6mrM1biAUBRa2n1tywXuNYciv+FwJGZOiucqLUO685XmkiaaLwXaGKR2h\n5VwZy7qkFLj2THRqk4InsVeE0mFwaJOAOW9SD+oxSwV0/e0LemQW3YWckC42\nrzETkgr5Xz4RcUjwPn2zvjaxRxE1ySbJ+bwv+gfeQoC88+Grr1AsuKKSTkHe\nDikKo/jMmwDyQixpO2Y0qLg89k2ck5+Mdqk6bEvttBW4oCOQnhOHszO8r1W7\nO1nOa0mEvOgcQT+emtr7iuy68BO4BGK+GRcpKktG+JE3R8IbdMQQdOs0RgJJ\n8Us4\r\n=6l2k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1FFGy0MppheKtDIgQpv1FGitNHDsNnmMaHUHPE9Rf8gIgN1bwMH3p8IY5Ndapzp/5dKjepdDKs1f0s4RCmNw/a4U="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.13_1602864320250_0.7795708921425313"},"_hasShrinkwrap":false},"1.15.0-beta.14":{"name":"kafkajs","version":"1.15.0-beta.14","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f7a166488321216a0feec4428f8e589b116eb31f","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...f7a166488321216a0feec4428f8e589b116eb31f"},"gitHead":"f7a166488321216a0feec4428f8e589b116eb31f","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.14","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-Pdqzn5ERQtrfx4AkcKdAx2kOkNvtO1ujKYr34DkXRrRFwI5Yu7omy63xvar1eAWXSutrSLujHOIyHXm4awSr/g==","shasum":"aa2f41b0cb6330509ebbb33b9e0e6f06e3f59665","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.14.tgz","fileCount":352,"unpackedSize":648326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJflCyhCRA9TVsSAnZWagAA2Z8P/ip+WZCeH2TV8WxxZfnX\nE6f1BRP3LfgKReWR9lxSPsVdAsVSNVwXX5RlbPpV/ib/iYlZhPKgBSuq2jZ/\nnMgnsopR/bTN7f9oNGZJFMTnOCB1waIu+IEFWIULw+ht74DWGeM8TG1kbFDu\nMZjZSOM247e/RyTsW6j3BIyLuMHCfK46gPX+olmV0cquZ7Y8PParaKCpitYG\noKYW/QC+Ax2WJK9uG4gWyM99Kibc3/oWY3U6/NLqTt59VuMovoQDq9nWKb+k\ni7onxFegc0DV+tcMWwcvpmu65lhXmFfZqLl81sLM9UPFlkUY46Pl4JykGt8k\nXs7YCrV6os05DycZ6FE142xxGnVdRk8h4X7VSnr/Rf98berblieJsy2Jeb2a\nUs1ooQMrtDnZo4uYQ1zR1KBqWkSnhPQLZTLx1nVcAGGZnnKgZUQcomO/qBq8\nhGKp/OoO9dsJ8mHh8A2IPMcFMab4wAZUbva8tj7/7B9b9OKK7F58tvzpwytn\ndbnfwWR9ZYRFueKDsYYerYQw1x3N5T011nuSYUeCosBhhxy6dedjhRuDLwUn\njRXGHPQF4xi4WeohtaxmVZQZ3PPcglJijvyaTMAgUfNu6JgkIVDDR3wRXuQw\nV28TkZ1Mw5u6pSNoGybaQEH6RVPqliBGjoR7ciROYihLdmafGKj0w+WyNnYv\nvn8g\r\n=2X9n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxhc9RknHQFOqWBSm7RKhkhV0ygpw+DACDLayl2XORKwIgWVYYusFHTIGKBpdkdT91myXPmd8E6UvogIY+8u1H8nQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.14_1603546272767_0.5881042495321023"},"_hasShrinkwrap":false},"1.15.0-beta.15":{"name":"kafkajs","version":"1.15.0-beta.15","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0868189d7388a2868bbc241b1bc763f4f570d032","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...0868189d7388a2868bbc241b1bc763f4f570d032"},"gitHead":"0868189d7388a2868bbc241b1bc763f4f570d032","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.15","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-Pi+PqUjyEJXK2hgJhk/dnLHOJ9kk5aHXOQMNjc3Qg/YHqg0V7XUbpymv12JYVKwUsmQKjEGQbQ9240V/bvShQA==","shasum":"d6e39f67ce8edc67fa829ffd2f78bd9103fbbd76","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.15.tgz","fileCount":378,"unpackedSize":670515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfnvEQCRA9TVsSAnZWagAAMDAP/j/mY5O+NmCIlSA4vJZ5\nnRIGPayzy0UMtt4R1WR8CScZLA0ai+dEHiILCJTBJQL7Eoh2IslYYDLnIO9A\nDOAe9/NcZoQATP+v+1MNzaA/vR+CDKJ7uhDr/kJfBGNe9vL76s57CJU8dYlH\nrRz3ikSzPHpGQDfDFckAWzKgVWc0JpoVtVt0vJZ+WwiJnd12wbO9f75AhG+H\nFRfnfi5u6KSu/WazQVpKubBf+b4kdfQzJnaKDgGPyZusm++wDAnqOppQHWoa\nQ36rHiT5Fa8iYdQxULXve+aB5kcNupNItJVfN9JCQ1ilNXOZXmu8E7YxD0Tm\n2ZTCX33mwks72+862Vw9wfG7DW8j3+gVIF7Xw42Nun3Y58aL0IAhKNQrkxWR\nom8xLZS40RckCh/wNGTYsSbwCSlOxawcpa8K/5fcKN5aDOlUyjkF0NettEon\nggNzDswqA37a9DWXvij7lJks3JiYPzmb0E1X+GKdcgAR73nzUP9XQhbHy4jf\n7kbEbOadPzjNwX3bc5Tb1b6p3vrAdNsMo0ocYiD8vtG6iJWFsi6n//vuomsE\nAnIjVDoKUEZDsuNYn29eQdNxJHYiz0P29py41gluNKpusQC0+3glrw6hkRSZ\nD9dw96FFqAzdpGLi4kEK1AHxGtlHcyDax+m/de+lac0lVSaR/XHUctryur3f\nnCh4\r\n=PlIp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF1yVo/kjGmiVMfygfACHTmFkraajYEavySeW5D7MZXHAiEAqtXDxziOZUsrKUq1oKzTSNln9+e2URF30njyC4nxDB8="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.15_1604251919733_0.16031894182244955"},"_hasShrinkwrap":false},"1.15.0-beta.16":{"name":"kafkajs","version":"1.15.0-beta.16","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"81d04bcddb64b1805ac56c5a0d86984e364b2646","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...81d04bcddb64b1805ac56c5a0d86984e364b2646"},"gitHead":"81d04bcddb64b1805ac56c5a0d86984e364b2646","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.16","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-lY5c0nQlxTmkNHZZBMQGThyTXs+cwhtRfSdk3IxutjseAKTmM3WsiTa6TTR2tbzMNWibGUv68mREeQBCCrpLlA==","shasum":"7d074607e7e9838fe1403f60ba8b63a74038733a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.16.tgz","fileCount":378,"unpackedSize":670803,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoBMRCRA9TVsSAnZWagAA0GkQAIELTLYj3B4/QXQCKkN0\n8afvo4+wHjxmjTfQcCrxq3oMFEHvM+Tuv+8IulKNHlB8BkYPvyAXN20gvn3l\nGkzmVm24DHX7BdIPo3SBmeyBfny4IZC7ASDk7QGR1Ms7w6TV3c4BYfK8J8PL\nYw3mEdjE2OVLruyM1zi46W8bdwh4rbWtkoxd4wyDhYPuc0QSyyt5qb2oxqCV\n+Xp3xp2NCEcUAwmjngRSBL7nB1k+BC6EstEBLMfEy3JWBeaytuRqUCMU22ZX\nTga1VvRilZCfVKEcsm1eGbXxbTZ/QtI6VYVr+l+nEGVn3GjxO5NiNLXOKm7x\njt5T8GliWEZAdg8OpuNaAS9UF5w01Nx4gwpfCWJW4pOdJRwVsy4IfKLAFRC3\nNLZefljoID6StnrNAAuT2xnHAEK9xqqIJDRqpnKw3mdp82ZT0tXF3F2El1Xl\nW63VDCVfDiXJvq4EGTAmXQOq1rj9elMXdyuJK+1cs9McK7r/Nu4Ae1KCvCQC\nuxbxfMgbhTtApy7ph5h0R4whwt02etPYGMCQ3Y4ncHzq8714ayAHAouTXiRT\nNMSy43xd8hOnQMkNrnKx+wOqvxeJp+qlide7mPz8vUucs5ntrMGNODmrA3Te\nJ+Qnuzu79TQ7C+av70PejmzoCc1lwU1PT3vPltbDA87na9DX5zxFvST3DcI+\nXREa\r\n=3eBH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUO1LSurMiVwk17vvriZjRz5IrP7YOP06h9BVtdskjcQIhAMVwQOux17ROJeEFx6z+BN2cxHxmR14/hsPdm9RSCQaW"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.16_1604326161009_0.8121509493864452"},"_hasShrinkwrap":false},"1.13.0-beta.0":{"name":"kafkajs","version":"1.13.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7fc1a14c4cf5610921a514d10ee8c4903b3a64b0","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...7fc1a14c4cf5610921a514d10ee8c4903b3a64b0"},"gitHead":"7fc1a14c4cf5610921a514d10ee8c4903b3a64b0","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.0","_nodeVersion":"10.18.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-9XWjkrnajEVjBfMCExpKAOWS5Z3ruepzZO3GeczUk7g4yJ6CunNyv8BR6ZppzVHGN6bWV0SsNxq37GfOFgjKbA==","shasum":"b64d11b65322606ce98e352ccb80d4093672e6fb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.0.tgz","fileCount":268,"unpackedSize":488919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMqr8CRA9TVsSAnZWagAAo58P/iHAhNpPyByuSFTo/pg8\nGzr7q0tow9SYAmK3wNrtr89upeJIUABkOYYjeUdI3Xz7dZrvs1ZF+zfZ0p2o\nIWWTelMRL56Bh0O2O02GlF7c8h+fvj52d+IBEKmNR3FirUTSRj92eZ7ggfNJ\nFgyjb6Y3gNJ3T7mczigug+EF3NHbc2LqxXegM4WrcFScQk06V5aX0pvc+ges\ndgmBUO9aC6z2AUxbjIH5BKpN9bGNrnr2LhrFzK9kFXWhQZgmwiDBymKpZ9LD\n1OA4XlZuuRC7qpO2dEfPNd423G7UjstNXfRyYFToURtdBU0WCgtryGgvOCql\nZ2oxC8GAYIjGqJsLRcBHOAC0+KTff55OZVZJlax/LxGdArS1jYHiVYi7NVZC\nhyDjqG5nS8hIWdHEAXQ15bG/uN+ZEoROoVzz36S+xo8oBEOrSovT5JwnjupO\nxOwkZkwpH0fESPRTKa48DgNzHSFrCcb6/JfEuSxnKDVy1O5fGUFzzwlq6JC7\nu6pssi/OwRIKIZBcsjJaDIX0+3vc7KJAnaM+flAP73E3tD6aqNd28Qij0Iex\nalQF41bw1PvSvmKwNBTAj0OwmCyRjHA7nB2yDGltb2ibMdp6HYx8kq0KJM3x\n/4rHdmZEPWB9NLMPl6HzNHe//Uex83xbfPMLA9NG8mv6FHbqfMhD0IedqG/M\n9seK\r\n=H7c3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8V4G9qfbqjiVzYiWH7lguLJG78k3TzNkfGWPclHnJkwIhAOrmAxKmAWil1CnDIAWkrtqBc6uoK7HygrUGxO/v551b"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.0_1580378875565_0.802505384902839"},"_hasShrinkwrap":false},"1.15.0-beta.17":{"name":"kafkajs","version":"1.15.0-beta.17","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"71548954035b1c0620a08d9ba8af767ffd0960b0","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...71548954035b1c0620a08d9ba8af767ffd0960b0"},"gitHead":"71548954035b1c0620a08d9ba8af767ffd0960b0","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.17","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-xTg6xYydL/DeQsf5VSLnJOcR6wCcDd+qUXlAQzDGrEFQnieOl/KEyX45lyV5vMCBX+T0EtjmVA6O1bXqgVlEsg==","shasum":"6bfd36363921e0a58186f5a855815800a6991464","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.17.tgz","fileCount":378,"unpackedSize":670804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfollzCRA9TVsSAnZWagAAnBYP/RCmLH3OqcG5NFqPFvtv\njDfNj7owtANgYGwdR3wMCMEcDa/wk06kkbqa5Nv7+vpRAsV4OvL1epWHAeyV\nn3xl9y+teJU6NbgVVUsnROPsz+mQcir5+kPTTzCzuA2zA0Tka2MorvIyFiHc\n4UBN+Kgxp0qNYvCUfhhQ4e+npBIM5kDRth8ZxxSu1PQr9Ksct2Z8NKXQ0mIo\nT8zbzMP2TdIdVcowdvsChqrr49M+zenqC0DsmarnUB+5aA3Z6ZE2VECxg79n\n6LM9LkAJ+L8yhiB9IpmPtMY560c5yRF9cv/Hh2dtCDhqabdUmqHWHnPQ0tYC\nLGzacrdKxk+8Mt0cfkAhNMYIbTZZP2K2n5/w6xrwQwOh7sv+VzMZmUkSg7pE\nNY+ZJBpqhR2iK9p3D5Mm9kuapf1e3KLdTNSYX162onRCQ3vdOaQ8tL5OwWnT\n6vxCZf+BDXyx12wrvOUBadfb7O3x7h6HZM55c3vTwcSzx/8vQI5YovlWPoT4\n+PdHas3dZU1lf5vc2AXc/uXpSzItCQY1YuKQ3sdwGT8PG7j39ypNd3WZaNiz\n2gfADGrECjoizRbVi8HkXO59U5/O3i5Rx29jBcGyf66mE2jXQEfLB1ABIdwl\nwYWwmTSA1bGCQSDXYP4N6qPDmu/J/dKrHS2IQb51LpKt+JnQBFUaNNuv+cpk\nYnKM\r\n=CP9I\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDim4vDAICbmRjXO8AVrmO+GydZuu4RI/ThZ6JF77OjuAIhAKcvWj0HANvtdTKteTwne2/hRoRvR7FUORbgZbaQFKZG"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.17_1604475250616_0.5206855605962228"},"_hasShrinkwrap":false},"1.13.0-beta.1":{"name":"kafkajs","version":"1.13.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"987db4bc7a879fed3e75bc55f7af4baa7161c7f4","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...987db4bc7a879fed3e75bc55f7af4baa7161c7f4"},"gitHead":"987db4bc7a879fed3e75bc55f7af4baa7161c7f4","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.1","_nodeVersion":"10.18.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-hCJa3uQuqGeQV/Mt1ERoAr3J0D79ACvWfSv/IE0FBsMO5P2Y8RZyWA1DBpLsGr6WeGZlQsg/SxJ3Qns7odXIug==","shasum":"0ed5ef03f12a7f7a03368de7162f21d9124c3666","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.1.tgz","fileCount":268,"unpackedSize":489089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOsPOCRA9TVsSAnZWagAAz+AP/3cTzVsvC1dFHApH2j3H\n8aZLN2EEVmFKtZpS8EBZcjmDsQQaKhzWt1GqTLKWSFJ8X1pBjSVRKVgKXjEi\nGRO4zGijFfZej+7PhQHHKBxmJ3U3HvxngVx9R/j0O1ht+U4jD2JM53VvDXZV\nxwTZLedEEvo0w4kxB1CdzZA4a2cZt0Liy8bpbQmCNnMD1gul2QaOB2uE1VEd\nDmXWSaoRRmz+rEQW+Ge10G0RnchPw3lccbRPtEAJvf3GX/bS8zzm62V3yJqs\nwG9Gm82uJ5T1ZfVkvTCf8Dq+unNzar1lSqFbr6pzXySwOFdauCMijNelnuLi\nkZHXWeZHGuNvOOG2bqtDGfsbePrTmgYRPn8TJIeplunAWet1sOkBSFA64d3n\n5aPz1saFMwKsY6mKm54l3BGICHzQgy3iqmteHIbHFqxNsV9Dutb5JbjPQeHW\nXdQgM/V7PbaJlAygtzExuS65zPdtKYElF1/awllf7pVJT7TguLHbbMQn9SDH\nOSaP2/dcJ5H0RLG7NrbObAKFVMgt78Bm0Tw9wLQARFAbXef41eRDwW9EQBtT\nuD9sZjEa+0/EqlAmOKrmZ4r3hT7709tDCeQS6Cm8KcKWIpN/2KPrlqdpS3IC\nOuvJWlk8+AVKM3H6SELD2SH2WHnTCHGdAVNqKhwMxlPoBzWEr7Ld+YrVfjH1\n5QU4\r\n=37gM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCrPpdypAKLsRzfPTai/EBMKyTHxAE2HdfPE+a3oat6wIhAOQwUFB4NAU2m3XCvWMDF5LmlCfQ/6eqcej/PVxLfAvo"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.1_1580909517038_0.21945147061040626"},"_hasShrinkwrap":false},"1.15.0-beta.18":{"name":"kafkajs","version":"1.15.0-beta.18","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"668b85e6ae5bfdc91618bb8f2baf517dab354dc5","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...668b85e6ae5bfdc91618bb8f2baf517dab354dc5"},"gitHead":"668b85e6ae5bfdc91618bb8f2baf517dab354dc5","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.18","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-4//KGuEChG+dATxCvmrgkmDqt7syOFHPiZf8JmBTLxCpFq1pJc5PGNSghiK0g+zPyWAeg06vDQxQgjrfsy2uHA==","shasum":"5fd45546d047f97a64b6f8cf0b198249b4e34ef7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.18.tgz","fileCount":378,"unpackedSize":670802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfolyiCRA9TVsSAnZWagAAsTkP/25HYNII+vMUA6ImovbD\nKQamTiqMdKhfQILg5MDopj9KKzaK3UibnwMpmv0HpDNlGVnA2rCOZC7Q3e2y\n8qVve57k5g2C4XrOanOmf/qnFLvHARgOGLxBmsHBkZC30mreuPRNedc8Pa14\nDbljjVGqbJzMcj1UJDDLekSc1JgkBdzt+W5XE+F6jALj01AtJrVLttfZSBp/\niqnb3zAg3UKkf08FhvmksGVraLScnrIgd7nSm65GenS24nan2kyNQKYLTr9i\nJKStzjF4JorBvC7LYZPYAUO3feM6IDEML+53aWlnG3HK3+pdRiWFOhP9UNM+\nJv5eCGk+4UrqHQqmxyaBw+TEf27IwcG9cSOgFbQ8ezGhqxuhyNF2HpKEENJl\nsXk0J+yEi0nt0nnnh9JsQgwUd7LI4lh4ynEFK5aLjpBBzp6MAv35d0qo+IoZ\nF/sgBUcJ4T5jTtgrMKOkISYGI/Kr9oaYHX9N54mnROajKdKgyEncXkxcOztS\n8ZFVZa8bGD3thLxWnSPcpIcKpcRh9U8rFqYoVSlUvEFaTKxtngXKmB2RafuZ\nOjoLnOHNJY+plW+V9zNOzKHDlqxijJVTGSNQdknJQtDScHD1Ys3zfmDd8MDX\n9rDV4x3WPEa8RZpsj9IBrnl7JmcOsq1FkH6tkXnb1LUyuMS2o2vM4y7bniSf\nzzvu\r\n=S99Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJDNjgZ/GpFH5Bf+gcOBduy0CfW/VQsgWw1dQFuaWQZgIhALA/AGi+PPd/ArYxs2TAwNHc8fHntBZG531jl26RyypY"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.18_1604476066174_0.223977098809796"},"_hasShrinkwrap":false},"1.15.0-beta.19":{"name":"kafkajs","version":"1.15.0-beta.19","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"3bd245d31f10acf83c91cba00e8cbb983947add5","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...3bd245d31f10acf83c91cba00e8cbb983947add5"},"gitHead":"3bd245d31f10acf83c91cba00e8cbb983947add5","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.19","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-9b1pR/ZZMYwy1IcSEoZwnt3QjnPcvJjNYFHnYkYs6IuB101HvfR2yZe06iepKXrA7GDML7ZwZTC3O5L8mDwMRg==","shasum":"90f4222bb9bb05df4f9b14f470901b235cab7f81","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.19.tgz","fileCount":378,"unpackedSize":670845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfouBYCRA9TVsSAnZWagAArfIP+wW7OkrxFQgAo0wet9cU\nzYpnrLPutegJUiEG5S+o3Jkx5WYcaorXFteO/xXHnm9fkboUpWUk2bCjLGd1\nJEJpHU4D+1hMyBa3QNaMRhB8jcyA+pZ1QT4PRO/sb8o6909rBD3ieIAwVrpj\ngtBBf8kNgnOavV00fpr//PxtcQ1/WmhiMsRKlpTOae6FJt50nNyrhQzyHxQW\nRm27XaA2GYLHuuyev4DqjIFzRhg1dwf5YhJiwXMTGtkhq1SRpKRhoyOVvPDd\nuucXFOPLTxZ6TdYGBdsTdPgchsjYRCVkIi28tEJrGTun1TLY/RMn6BRxQZi1\nT801RYs3Mh/iJVT2dLcyt7epA77V5Uw0MJ0VMNU3qYeXquPvc8UHk11E98JN\niPcH5hI5OXbEDbh88dy0IMnIWuwwO/6j/iqzq6ZqIb9+79FFYCUdfCnUZiWN\nGPXtg3FZZWdHQgPjgxDFI0a3RUbLzihX9Exn2R9dQZNWoZYT2htcAJcWHHM/\nV5bUsulO6o8zx2KZs/AgLB+ypJYgoFtxXWe8q+3cVQpyPlMDD/eTXi2OOio5\nf0wl1KZOCNDpwTMi/OM0ZdDI4YVjycwCfNrmy2XWzPUlwezWC4G8hB6StT/9\nDjXO3pjR5AhOxSbpWV1twnUlCdE1Ra4CP3NrWaVP8bQjqOeNxDVTX3gkt7UJ\nast5\r\n=f7yP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJiwAVEButvYj1ixQVd84CY8kNvkU5merz0hqpYE7gPAIgKm+nGV5RHrzf7YxenVly7SeK2m2Xps1vcwF/Z3oBd4o="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.19_1604509783595_0.11405762779948958"},"_hasShrinkwrap":false},"1.14.0-beta.1":{"name":"kafkajs","version":"1.14.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ca6b68a0a862973e055bddb87509194db99e58fd","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...ca6b68a0a862973e055bddb87509194db99e58fd"},"gitHead":"ca6b68a0a862973e055bddb87509194db99e58fd","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.1","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-USSAEtFlfYN9vzu2mR72L87ALmz6MVg7sv0wjeeEbh6hG21hegQwCrmt6kbNUcKy2GiuEFDMP4L8XDbTVCcbsg==","shasum":"9b64840cd2dbe5b2cd952c3fd0fbda0718962f19","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.1.tgz","fileCount":303,"unpackedSize":567381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWir5CRA9TVsSAnZWagAAiFcP/2c2BzFJzMqZhVly/AWs\nIsTBE357+T70wRcEf8MnR49U33YMTE3xSTogZ4u2SiPZusp1SI8PWBRG5MT7\n45dF38td3f47QbnXwkOSJMZt++wm/lnxTd2hq8O/ROR/XGx/OwIFwW04VIPR\nfPt9rfKLpHulE1Zi9YmTHunifnGFmQbaTIGClbs5MRR7K50ZT2S8SFkfxwfU\nYJT6mg0qXsrqor+YmYTqIbJAiOUEBPUj2Vg0/B7rWTdAzqGtnAfjuz5sD7mP\nGkf2dY+mHbo9vfPFizKs0aj8wvC+cVK+FWHI0R9DOZWk2npNt6OP7Na6A1ZR\naUh+Rig0m3d+xwzTyDC279EnftwZ4EXE0JZYiUU3Usu7sWSQnvTFg0wwwNBy\nLfZYn3lKRkDaevLKE+ITBbzH7ki1GdF+An4Q3H052W73tK6cBqT8IZfv7I/t\nQi5CHoPn+R3gB83DNenwlE/OxKmCCO9asNFZ/2fByv6whHMAr/OtEqcb8Ute\nH4+kQvMXnEs8W+Jepx+K4lwSa6rrmvrI6Kb9OaC+5Z75LyFQ0RT/+o9wycn/\nzQXLysjgqk9qXx2CFS19E9ba1rkybAtisoYyd0GFf4RL/lniVTDMiV+s3tLQ\nE2XIrfvmnlQ0zCvTNRcJoMutyF3PaZsl1EkuCDODUA8SmJVByRRwzlJ9H6gH\nAXH7\r\n=DRyi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGOO27p+EtH/pjndSyQg6izPPalXGVaT02kspQx6xE17AiEAuPao1rCTdx8lZWkx0epuTr0GRy9B+cnY/Ya3iJeVrxw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.1_1599744761275_0.6429641799295183"},"_hasShrinkwrap":false},"1.14.0-beta.2":{"name":"kafkajs","version":"1.14.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"bf598cdb16b787a6b3af19ff4177a445c8027c63","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...bf598cdb16b787a6b3af19ff4177a445c8027c63"},"gitHead":"bf598cdb16b787a6b3af19ff4177a445c8027c63","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.2","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-4pePN1j37YUdBvvqRQcSZiRWVATDtmDT7OoPZ9P3HcvW7j8EWn+0CPobs24odMZoolwijaue0+TNz3d7DFon2g==","shasum":"9b8992bd9fde8f74d478338b85a7766a2a657cf1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.2.tgz","fileCount":303,"unpackedSize":567401,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfW3AJCRA9TVsSAnZWagAArrQP/3V4RfCvth+JqFdUmkIx\nzM7cBtHdffgw7gVg7SD58Kndnb0MabksY9/c51GLi8Uec5fuhlYsGpGZcX56\nL54+kZYmJ5ovEtt0qK+7EgUSBmlTykswDK+5xXli9sKIw4Ke4EdAouq/Qqo3\nXw1t1a8nqfmIYT85MNhmPS4jXuSBGg+WmNeyYQl1p8a4Plza1bVJw40DN51m\nRRAvlaEUPIWqXcdWxZjyq6AChiopr4gG4B1mNR2JzdGJwOzXAta3pr4Yfhiw\nxLsETMmCfnpYgWT/5EqMWZE1atQ+erzR+UNuHzPxge/QM7L93KzesDdOXdep\nRP34E/SXh/jiBwAELFCDuqZvMldg7iuhFolnOpaW6EAVGtPpFWgPM6GvYgnN\n6HtaBT4QKGSGWW1NZqiAockjAKwRohBkmHqlDCRe1Dvg55uOqTI15cHMSQVD\nS4MFbLtgBIQ8WOgfcygGzwrRN31Pnj9cgTQxuB7EpNO8b6on4SbSSBofmSnv\nSjoynvFVBL1c6ERmY/0AYK5eGpnX8C1sWqX8Xg/A03YRmduOzKpxXH6V7aN+\nXavirAiCDntJhH8aRI1APae4Oy4QgYXfNDrjNNNwkeapWxxzT7eBR47zmHAf\nV+sp+xhbtjIKF0BfWn7O5sXBriwsqYdUjXxQQQanxDqWi5fTCPvcboFL+V/k\nZcVw\r\n=tKrm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDngwjGhhXKimv+LolEBJ2UoLYGucWJPJktvY04a0+DAAIgY+HXoY2/eCS5JArpEUCMP1hT45xsHKwFKDx86uKs67A="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.2_1599827977314_0.7216271074298177"},"_hasShrinkwrap":false},"1.15.0-beta.20":{"name":"kafkajs","version":"1.15.0-beta.20","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a46d2a09b09d1cb3b57d8b5bce805f1e871208fd","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...a46d2a09b09d1cb3b57d8b5bce805f1e871208fd"},"gitHead":"a46d2a09b09d1cb3b57d8b5bce805f1e871208fd","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.20","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-MQtIObOW35aVyQ4I0L0kRqZvGbJp1LXulm/BeDWzYf/utJ7c1sASbZi0c+WaptBeHV1BUX8tT6uCqxiD3UkQ/Q==","shasum":"61979bac55cc6f2284ce195d7a7afaeaf9ba3497","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.20.tgz","fileCount":378,"unpackedSize":670845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpRriCRA9TVsSAnZWagAA0gQQAIai/DeOD/iWvJ+BwQ+T\nbYSLN7s8nIgNEjx7gxXwTe+mzSZbTKAnvfeUT3yACk0WP+R0OATY0YEFrhpm\nV12Vv7/uKVXHfwsNX0SXK2WZfkLVBebwdYSCFuLx2Y0c1/ouLwYqW28hdBmP\nMA+RswLZ4jANMfHEaL+mZ4xFtbTxfpIxvNh0I+cusxYzpND0iUknz4UGZB4o\nDyw8mdtLrOcRb05T0pmZp6tzupCVdL3BwQ3uUM+Kr0koLfyX9jmralr9qBYc\nGWYX+DBwc2GQJuiUTunLHKJ9mTCndpsUmLm7RYGX+AvpMIn/Phwhh2It2gxG\nAJQciFf3ZZBKDhHMKkCWXwCqMJBNrTP1+eekZvXWLsEz/HNw9GC6lVHqR8Rl\nRw3hMkHy6TCOdUOAkZDENibD4eh7fdcRjakDPDYTR8JjDKdus1bvq/ULoimw\nHvNlwpj0hTEBrELjz/0+9YkjdQw9XlqLsp3YVCobjn62yFNZ6DmwbcG06mGY\nJ0FTugbKSZV9s/UHyuNcdWVQZl7fLIl/mDdI4dELX9v2cu2fKU17UwboabPI\nUSQcnr9xWZF+hRzRzt/gItR+eoZy0tY55CWi38xUP5GI83mGwcijj/cuy9M/\nD+yQkADtPVoMFPH+vsk4z6muyyqP2Qk+ul52MlyGTY4KKJAzDti9BcbubtJn\nnCjU\r\n=njPa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAuPHjewoT8t5o4fgXF062XVMoHUJf6193JyRk09nOxEAiBIeOAjdSn/NA764aPmFGpguKAJdhg4pEVuL34Et69LZQ=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.20_1604655841945_0.2064576164600136"},"_hasShrinkwrap":false},"1.14.0-beta.0":{"name":"kafkajs","version":"1.14.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"008b023d91f4f9a1249a82f467a06513d9043040","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...008b023d91f4f9a1249a82f467a06513d9043040"},"gitHead":"008b023d91f4f9a1249a82f467a06513d9043040","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.0","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-b4Gua8vdvEk6RBdGVvzOC1x4igYP9kv94IrT1Ch38FKBKeAVK0B0/ZMeF6qr5foIJ0r2kKEnx1nA3jXz5R8Npw==","shasum":"0f945cfc168bb7c63434f3fbd35aafe5eed750fa","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.0.tgz","fileCount":303,"unpackedSize":567978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWiZjCRA9TVsSAnZWagAAVpQP/An+axf2eJLI7IK1IM9/\ncQUQr9dCMVgUwrDGVOojtCeBGRU9l86mIIyEqsDWrMtQm3wnhqotenqa0se2\nFAKPs4D2jKK2dfYhgQA26pjTGF8r9Mx1flJZsX/4IRM6NgqhkzE7yxnu5nJ2\nQet+PCaWl0Gq4GRAahc9IWNj6xA+bgoOjtWTbTbATwrGQlHCGRvIf/vcHd7n\n7p/JyRlj6OkcJnspdUvLR+kh/zNoGFniInOdgmTUuw7KlPvljQd5e+cdi5tC\nOSRM+8ybmGGxHTOEmtVQgX4necEcEt7XQarOTvY2JUaenGzTbeFq92AWUqeU\nggjH1lk3b5NoNVWm0yEzfljCLSdel3YZWeTVpIOdCHcZVhjeBmiPoZKLQtcP\n08JlYE+2jOdRJ20YRma9ncdyYifVPpBPdcEDDIuMnCoX/kkoYI04rzq4DbDc\n52AbvHmGv0wPcSHhxoHgUiXxTXXMneY2aG0BBtsf2TMJ1WTpbxIec4M1H43b\nn368aZLIiKyD+ZzKfpQJ4NjR+YqhHlt6ng872pUtsTBW1pNv8YQ4JajjnzDD\nwcURSkV6auqhwzguDc/9319jWnwPp9Cb5yBKp5ZhhCGvM6GOKhr1sN/hg6IX\nFY8uoJwgQKpgwcZPzX6tjz6LcliSffSZPRxS4ksXV11AgMLqTJigZVIw83xI\n5pIb\r\n=eZT4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAbapnJY7RSLJmSJOt4aOij8G+z0++J2YJaHLWdt2NQgAiA/so6oGPH2S+N9/TJPdvvf96G8J/B9AUQOtdDyF1ndiw=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.0_1599743587090_0.7572895852074162"},"_hasShrinkwrap":false},"1.15.0-beta.21":{"name":"kafkajs","version":"1.15.0-beta.21","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"daeec895c09828622a550134b7cf9b1c0ceebded","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...daeec895c09828622a550134b7cf9b1c0ceebded"},"gitHead":"daeec895c09828622a550134b7cf9b1c0ceebded","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.21","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-iqRFHIOCEqthktSBaZlUoB7A8u0disYZiBrY398xb0BjcJ9WBgGJEihPYaA4ArF8tQJEh8ACTSufwOx9JMe+Jg==","shasum":"6471397f64359a5fb88a26741ebe6ce97da5c6ea","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.21.tgz","fileCount":378,"unpackedSize":671103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfq/99CRA9TVsSAnZWagAAy/sQAIgyGhqAHyueZHnEzkEH\nS4HWjRsIUhTY3/xDyFiUZ2RaGmjfvUs6upDpYbbjWvojVgKdMSpXfhJNSNFO\nYmsRhZ4OMkfhFx/W6Zqyi04wcaau7ZqlHNxvw4xxtZYTCaVa4G7BAmSWbSKB\nbC1GgVZ58QgasNJCb9vjIoPc8wbdAtZ5q8MmCFI0vGBirbzZOnIryfl7Gj0c\nCrWAXKCFQVNBNpqqbuR3zM4Bi/b8wtOIuPkKVAE7LD/JPIJrj/nusSJuEXNX\ns/4+vodov9ZKeuf0mvmGqn8rcTAZMReIZcnVDBTj10vYMBHvjkXog28JlkVs\nyjzbFCp+FYcImS++Jh6PVEcGsfVndFSXCCbMFyoWlR9pLeNTTb49VEuEdJLS\nrnuCJ/A/wroXzI42xkLbBqy6zgTKFWAxlK5sp4D6JFWJSaaqCrA2IeeZDuj+\npqM4bzIlW/BuUpICCxE68d69fJGY5Pm9axvmXnl3Cu6Ilc0gc6PYBziVdCDG\nb8ONXlmovqGeRs8SphtbdYFDbdRAEYqAgVR8iA0r1ujiXUvhrdZHmx/Jy9pn\ngQS2/b3Elpx0onG+hSd8IXsIxSDXqIpK0aNpT4rKp6AgcsyjaD4Ol2s1VAVT\nB4ag1nRnhyusQ9c9xsL8B2wGIP5tqPZ+e5eziffe0FsIBvEf1F4nIm6/4s1N\nP1nE\r\n=ien7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdHo5WIb5AU0kgRmIl6n5LUgGTHZNs6Z+q85ixjlySgwIhAK9Hlb/sloTNHEGpfj69p76ryZKKQ2VC6ZKtmGUkP92d"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.21_1605107580438_0.511605673280096"},"_hasShrinkwrap":false},"1.15.0-beta.22":{"name":"kafkajs","version":"1.15.0-beta.22","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"28e5be5e292dca853ce075feb242a76df5478a04","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...28e5be5e292dca853ce075feb242a76df5478a04"},"gitHead":"28e5be5e292dca853ce075feb242a76df5478a04","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.22","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-do9Op1czpOHPaVzCC826a9HNytuZG400bUb5FUU7/WRUl1Cmh8Q2msYpPAFQfW1thlDsSUG3YWK3j86U9JGmEA==","shasum":"4ef397d86c8be8f9374118f1742faad53fbb8c60","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.22.tgz","fileCount":378,"unpackedSize":671167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsiYHCRA9TVsSAnZWagAAh1kQAI8fi5w/IwbE95ONA0/Y\npTL9QEyKpc3BY2iwLPI2hy2byZELjM++6mRE7CXaFqgAccveYToyCgQWP0U3\nXKdRmGLVAHNA/9mEd/7cp9rK7/azIq+pMg/B/jbatqKPpBpc62rJbp51t8fY\nxVyi5EGvlFx8ZmuOLSAEiOlLt1B/Q195afTQ3VKKxCZHCio+BMIiHdWIoy6x\nLXxCR0NPcwgA0JI73OwfxJW/Nt1413aPvhamDZ81VLF9aVD6Tw+P5uN6mw3S\nPEEp4cemz+DnffZSgTVoDnzKIMlJd7nyIJL9gZGn/FVSvydgUp2iU9JiIOm+\naSVpmRikxZ967CkHDeHtAKM7gzZRMBCiO176fCtSc/+PgrHvTka/u4L3LlME\nHP7TABN2yaiCOCIPRtM4xnHR2FoXiurGsW8pBQ3MDmMJVyEGfIp/5vtHVY6p\n9R9kJG0wXR0vWG3tVsPlEsy9cSD5qYSPmHw7PgQ5aXWUKkY26ERXEJz1KeRW\ntCaAZt1sC9UrVq9uiArZ/7/q2Tm3wgx2kkDvGf9UjrhcOt2T1k6nnJFhBrf6\ni54DDRqvVAeZAsJlq9gzWQ3Qan67Gwdm3Iik5EMfq6kY/G0iH+C4Fuq8QUZc\n1exGLOaqPpSQL9dd7N3nhY5WFLN8z4Dt+ZsPIMFIfW+RADnzlm2KXvlBJftp\nVXle\r\n=jb1j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICS7iMIo5NYDUsgEYLLGeLDGPAKrmsTzl7heTslQFBNdAiASXhfgfDTUkQgug34rTlhL+pVM06SMZj/8eKUlaAL4TQ=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.22_1605510662898_0.1012581308276308"},"_hasShrinkwrap":false},"1.15.0-beta.23":{"name":"kafkajs","version":"1.15.0-beta.23","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e2f34ffc8e8e37fc0d31ae51202f1147263cf0ed","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...e2f34ffc8e8e37fc0d31ae51202f1147263cf0ed"},"gitHead":"e2f34ffc8e8e37fc0d31ae51202f1147263cf0ed","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.23","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-phbwnpN1kEphme+Ouv0H0443Wk+EIbG9pbIeAUHcs1NZz1kKgdrvUYf+4Oc9celNQdHYdCAm/ziqzHK1Vy+PuQ==","shasum":"408b3d97fefd4a240fb49357a11b19120418e320","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.23.tgz","fileCount":378,"unpackedSize":671167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfskV+CRA9TVsSAnZWagAApaMQAIbKfs/fEJ3/oEmV21rV\nIlrSEqFF8Hfb0pajOWIjlfcnemXM1fW1Q8X0qFPhj0g16PiHsA0ImKYP/E91\n8IUmdL6u/Nul4ExhblKReK3VHU1DPKmYJ2xKftrOzu/sY6D0xzJ+Q8BqmLR6\n+ZU7nLnHpNXE8oRyt+t6owHOvIgMjTgQ/e/rf4mNStda9hXd5ky1w8uuvKeq\nPchrNzEVLCHLAFb+Rk2ziiYnhfMipE8EtzYI6lDKWajJlbV/QNkmsCGPrJR1\n+JEJ15OPyidTnrAZ47fN185D62EujUm7Wdim2EmRFYqiOkn4UPNdpMPxlGdR\n6RIvLu6L+0Dy0e2EPkTkVUTYSsMoYnBe23VgGiVjL4uYf/SNarxFKSY9wGKa\nugc78dyCPXvkZcXYOXNvsb/9TqvXiEl2I793kgsjiU/R5YOwuZW8HYQybpuC\nnHq0rmsslCCBJqyJksgwz4f+Y8LMUOIwST1/NEx2xuaCMLWQHAP2Ggrv3SoP\nXILetqVr7kFje23OQgZbZfDBfKVxSmnV4CK/XiFEs4Ocg/HJZyqWpFEaNRWs\nDiDYQ/Iu3WKU1PJ8fnfjcffrVgA0d8aTk519/05wAkCDeywgOjsQ0DRc/lZF\njroB+Dws1spCpBbNbKTdfhQuUmhrjnWxVnoe+gxYhd0ifC4iHgYvM2yffi47\nq2sc\r\n=ddDm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDD8ATXAbU2f/mS/aSz4IWeI+5/jNHxbt2ZDd1NSZ611AIhAPpLoeBI4g/DPIdbArPDlS3uewTA96VV1RRdBoehyTc5"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.23_1605518718076_0.30635133434554684"},"_hasShrinkwrap":false},"1.9.0":{"name":"kafkajs","version":"1.9.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","typescript":"^3.5.1","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"8eb8d489227a58ba4be34c9a90912aeef404247a","_id":"kafkajs@1.9.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-cX6Kdzz4ine9E1unN7HdWTArm5N8Ug07NhXKPlZttK4b9jptxknzs5XlpzJD51sqVDyFoM2n3Do98mq6erbLJA==","shasum":"3045d0089e0a2a073c6000f942b8dfc6811d15cd","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.9.0.tgz","fileCount":264,"unpackedSize":459604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEex4CRA9TVsSAnZWagAApNkP/3hi3ueRpYFP9dqNaNpn\nZVg2jwPNbn9PR+5YV8V9RGcdmrZ1LldtYB3rbw0pnECIZFqSDqk1CzXiz2GH\nUeEHYpSJGScYwHtDsT6eeG4bgPtp9jqMtbqdhf9CqvIu7b+u/CH07veUzzrt\na7aqqPU3nuWtPplFvMnlzXTV7RCig4QrbVOmAlFr+C8zL9kl1Go5CPlCKvTT\nFKfYIyaBLpvDIxMDVLI3wiROinyNa8dMDjFThJO6W6GzKSW49H9EKZmvbm7/\nvc5621BNTrGkjvNBLSsVuR/ze3kztvHYE3Xz6cWREo/KnJXw7N//VawOOxBF\nGuJ8WRTZy1FyeozZRD3diNc98gvArpNFUrtxoCrLogHU3nd1bwyKRW4RmqJS\nOsTOgCsGzyN+OyUrOWP3p3RFozTBHhXGsdBwqMf6LqQeyEy2crBIHK48eafI\nLgdt7ZC3WKi9jhQiq5o4nnzBefXYm4R85jZ4KNG+UjtUx7Ic5fptHdyXgfgZ\nFEJwheHgcyacZO2ibUodDfSPV3rj99j/ct1Ag2Q6H8C+X9yxSfL734tvL2PP\nVRxsSLA6zzZBV0+dklLdUZx4HoVUj0W5gWibSv1egltLxJDqZVHQ+IpS6e8A\nsffapWp6UWhoOlA6Qti1AixXFSxNlldkkaYVYjU8JRztICnEfFgH6dIJ1v7z\nbaon\r\n=ypVg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH3JMzh6tZOF3KVIhgYvFhWlWgWewVjKKDGOjzai56T7AiBKUAkCnVkIjCYuRm0UHG3vlOjOcssE2rgaQp2c2mAH5g=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.9.0_1561455735839_0.6538601579095755"},"_hasShrinkwrap":false},"1.15.0-beta.24":{"name":"kafkajs","version":"1.15.0-beta.24","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b83c14b332a61716fc3553ec293ee6c34dd46d22","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...b83c14b332a61716fc3553ec293ee6c34dd46d22"},"gitHead":"b83c14b332a61716fc3553ec293ee6c34dd46d22","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.24","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ztv03qrV5w2i798UQtzvUvqr783yxEwA0+6fTgogj5xl5qLh1dg5nTRpERnQjqz1iQ4jf9pw5WP++NDJvQTWIQ==","shasum":"6286363d1abf0bf2cca1c4e63bc1e07c5801312b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.24.tgz","fileCount":378,"unpackedSize":671194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftRHhCRA9TVsSAnZWagAAsowQAIAyth32Hd38NdSKqrYh\nfFwfilDWIXi362nBavst4RC+yP816mQSCkBbhEbdKYmcUhzhs6XwyCzM8ePo\nzEXXYqTAjs/+npyKU4H8hmCmsXAVYU9Yiglll9KBtlUx2YojX0emRJkpnN+Q\ntUSKtc7SPGdT8o+4sI2dJV/Zdrq2Vv7G1y70T8rMbmP8RKnggqfoYUzKrKnI\nKkjojKbyroXAYHoK2QARpZ24oygvfgiMBB5zlMJXfVm9LS4AhOsf71z2iv75\ng/WW5OnvL3SLpCRPAsyg0H2zvf3kS73LxZS7j2E1oolabsA+oAb7JioWrJtW\nU4IsDANK13dG9PbG7kvFO9nXxYLYxuYVttnQTPzGxciRJ1oFrOng9or+THB8\norR3+GxqLD4gNWBD4itAVKUnznn4NTh8CKBeyke9O9EWMaLtNcHxUJiE2a2B\nKTjx2ImfJbIYgB0cSqAO5VENzJ5FIWe6cs/QRTJROh9PoE+jdyXuucpS3Iuc\n7y4gwJFZOHKQmfKYxha8jvSbhmmKvq6urZDlRUNd/rP0MHOrr7Ewcvf+k/97\nFhRdWlcVWs+DlX7BY6aDzYK5903OrB05xBg2wH/vt0+UckyuWL+FW8ltzLy1\nBO748/pjqK2hszzTT8qhpyKAjnXG1WvEXgRp+F77hk9aHkRo2qfDGsfFcLZP\n3ZpP\r\n=QoD4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG2N8vdltiKm/gONI1LjGWOtSE248dgYDmiS7zVPpK9EAiBqcJrt3y69yYF+muGv89XSeciH2ghWqwQOG7URiL97xw=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.24_1605702112427_0.0035755828791774746"},"_hasShrinkwrap":false},"1.9.1":{"name":"kafkajs","version":"1.9.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","semver":"^6.0.0","typescript":"^3.5.1","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"4f7c63cae74981ac3b41e89f50445e776028c21f","_id":"kafkajs@1.9.1","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-8k8kfoMJfmk35lnAn93rLDKU/iL7+TsbPzEJOxb+SOVgkdKJwcBpFX8HG2ffnQg4XPJD9qsizKNAVprPURy+1g==","shasum":"ece8f43ac7f6c7aa37ece4ab428bdd9446f48d3f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.9.1.tgz","fileCount":264,"unpackedSize":459749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEj5CCRA9TVsSAnZWagAAgNYP/1xlZoZSDNvjrNSSCrKM\ndex+UHjSIUBMST/k82wUBpbOi7r0JaFAy0/wNePDQzyK99rvcOEXTVxdsTNI\n6+fUTBiGxTVFlHjagB5zQFHFI5g+4zgdr9ln14Bo/VzHCvv8wZUMfYNP5KvD\nwYugOK6mye2RAkg1SURg+oX3JDDhWj9U4Z27e2iwQWfDGuWLFnnf/EZ7iOeH\nKjR1fvfckIKfsCjWUEEIlIi7tk8BJ5LN1iMAfNfVgcuF/sfdCcxX/eeDVMQv\nfd7V8yRPvJNRbVYbJYLbN3tU19WZceDsSbmpOOuYflzYSQBPyrY8PxVso3Nk\nDE7NfdgDEjRUNfZqn3HUKnMDZcpnnyjPqupmZXRFGvrmMee5lVzDbO1EqGPM\njbF8qORc+eW4MPK8mqc/iF3gC2LaeBBhmLgLD2npcPxhr4xXfEKVlbEXI1pd\nT+IL9BxAbzBtLYv0HqDrjqn8P78sk+bJGSoHqW77rTApVjHqW8GDmn5bvuPf\nqi/Pqblw/I6z91Qxsk/urJBUtie/gIwQSHJGqtwANmcuQQaRkZ1DuWxmbIL0\n4jYJRU6qg8RsL5pPVb8BWzEBxazRhVQ1+mY12sC77pqYyk3qVDbg+ziQo1Qx\nzZUsgmA2o9pYSJjJoP/zcCeRaj6P0b9iEKN/IgUegankjATGw0xyxJcHqfAS\ndqTP\r\n=lwUL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEk6fSOBJEHKhTrl3QJuisyAMslpVPXa+eklCSDLSKXwIhAI3GGgt46HC4NYP1X2mp3E2w5aZjSbyPcTVfc04PqZQL"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.9.1_1561476674036_0.7361576048663923"},"_hasShrinkwrap":false},"1.15.0-beta.25":{"name":"kafkajs","version":"1.15.0-beta.25","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d13acd58f693bef5f2460ade036757d6314e4710","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...d13acd58f693bef5f2460ade036757d6314e4710"},"gitHead":"d13acd58f693bef5f2460ade036757d6314e4710","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.25","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-/gW9ROxSivh7VuZFVnPb/+wLlvR6s2pqZEwr3FIb9Aue6bCBSQeUMM0cd3VzFa3styQUtm5oIxtN/EowCA7v/Q==","shasum":"b9f25d140623e1eb3f3556ad92e2b13954efa1c2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.25.tgz","fileCount":378,"unpackedSize":670874,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftUQ+CRA9TVsSAnZWagAAM50P/RstvIfPVOhNA88KP4S0\nwaPKvpSwCayNCa0G1M4Dilu7/7tGJgdT/uPnGS8Bb5Pb9yVKf9vy0jnAFfbY\nYFNFzFR81eA+Qswb8j5E33aG8Zn0lxyJi+VdNhUlKzSbHXQuxa/sbm0APfpR\nMaPNi21AOZk6lARMKsj0gnK8QOfO2D3STH4v/vvBGeMaHPiGlD3mrddU41Mz\nfWf9vMcMs/yliE6O07QicxronYtdnV57gJ2XTKtHMEfot41J2pxCnsTdW91K\nMm5CvFdy9DasXzK7fEMSfqdRp3+mcDH0Mip918xWbTpqpfjtClLOIhCJcqWX\nyJFU0faKpZ0qz5/iTJps8sY/O9mUWDCVarlw3xc2kVn9TpnNei8BjtjNwXho\niUdjDXOb2DaWqox1sGi9FwOUzxoypG51vv76wcSZFPTowqxDJik0d+Ise3sP\n27Gtdk/BCdmikAYDHLWMfeQ7JhmshGsHfgNCTzPWsVAgpw7g/97DZ8gguYwu\nsXb2AUYWSt+zdvbS53ZBcfzwt7xUabhp+/WIVzwIIMGAkPa/fkgzJgcN5ibY\nj6Vx8s6vMvmGo+ds31QtUPUylcer+W2UkN9n2ynI0qf+eBcpaRENFVoTMd1k\n74uyVxZ87lxQ5aNBfjqjEly6Y5SKjr9dqbef1DvWDpniNCXhvpnepIF9P9ns\ncLXE\r\n=m+p9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDugIwDtOMzdWluO1on5t8HrCMiqIGaVGwHsagSgCyySAiAbHk+n3ovUzVPrmXmzQjYlJpYvVbKT1u879X2m/7aDjA=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.25_1605715006344_0.30241699541014766"},"_hasShrinkwrap":false},"1.15.0-beta.26":{"name":"kafkajs","version":"1.15.0-beta.26","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2c55fc190346eea3f458da983388044349fbe527","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...2c55fc190346eea3f458da983388044349fbe527"},"gitHead":"2c55fc190346eea3f458da983388044349fbe527","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.26","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-FaNOnLSrkuy7w3MpBe/mMA+33ek/sAwNG2GZyw9S3CH6PFhI+T0ISGx5vyTnl9a0NRmVj5lfn6VnDywUIpWvGA==","shasum":"0e8c12a61820644f9678442149dc320490ce7018","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.26.tgz","fileCount":378,"unpackedSize":671244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftjFUCRA9TVsSAnZWagAAvmcP/37LdoLATUa/w1B/vkFn\nlfA8k8USW/DFZakwkrOMYdGbbhWPqyCNrZyGgmQzVGi72QlYkWMcgoEc6hQY\nfdDScKLyUk4oYJxXS1boH/tlyacmUuMJGX/p8m5yeiSczXjK5b6SVrjrF3fk\nkGa1B8+vlnjEPwaE6nuWVmpn6FHDW7ASIcLaIWOINEem84tieJNOBYdZ+Noo\nNFMKeLzbEvSZCIhbmNCmPpMuW+vRkkO4NTX+s/hVpuY8oA4HKpQPHp+4khVx\ncQrtm46rcKH/zCq9x4wsXiU2cZ9wZYAGN2GvdzEuAWinbvuHRJiILXtYjftY\nNrDC7HVLXXR76bJoVCf78vtbzmG2cSQGTcWz8UVxLP4jTF2eOCkIKlGSLRSZ\n98FfBOmhEqkfH6SUyjvKIjAje4tDkk0ClFD+Ypc5PQC6K1TJYwNeGT0b2aQz\nBTDNh0r/YtaR6AnPPIbF7jyUBnktJVtOf93XxAZHV5uiPQ7M/WrdICYVsHk/\nKyjs2HRJdMBfBty9eZsyvCB5EzNah93mAi9Nt7enfOiWeNXYnRGpydGtA1Zs\nVZBYH07jWTBK4RMe39Px7opfP1WXaJe1BIY8Czbe747IXbXtreUuo345XTsh\nneqPZv2gk9PNvqzM5Z6/W4IDtpZ1PFoza89rzSSieMV+uz2zcjrOXD5XlK7O\nCfaA\r\n=HbJh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDi/YCfuXG/3COcJG1i2vM8ve8RxaDvWMrJESiPoue6tQIhAKct9itm0EJndUQ/lxAbO/l8lO0Pfv8aFu2t1DU783+C"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.26_1605775700256_0.7191558194600722"},"_hasShrinkwrap":false},"1.1.0":{"name":"kafkajs","version":"1.1.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"6b88f43ef95f5c808d795a68229404d8cce4910b","_id":"kafkajs@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-FqN7q3js9INJwadnSGmOfJectu6tYRgXeu1/tr1etjT0TEqfMuzsePZDoUEL3WYVabO9whP4wBuwnyTeujdFvA==","shasum":"c0e53fb55361863f642d390fb4776c8e83a6c417","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.1.0.tgz","fileCount":155,"unpackedSize":462492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbIjEtCRA9TVsSAnZWagAAXr4P/io9qRSaIK54dm9341M8\nV2UdFHExJjfmNv6AzW5XG+nE2+c+IfgMDbUeNavd8B3P2X7f3tiFM9XHoQo4\nKsrR/DJZ19DUrPp26Ftny75n7kTBpHos9MUpyIexx8K1kacM1RnR+OSX27PP\nIVL+6P63DVVJ6/r6b10FLhpekm6ac9z88SpezEk9/WXP7oI1myxVlWQQ+HLC\n+fcRj+fYgrRxBzNQXeSQGVeOyANZlpUgIGQgBPS2aMcwbcslIUxQZOz8JIU+\nUHFxCEQMKMIB9eqguKeAPiWQwsfKYAyXBW+GubBXutO4YG8d++mBVYMGhWgv\nOjwcrqsxfr9yPRYEa8V7cEO621e6ODWrAcrkoRRr4ZAwMCc5XdeYLl9HG/Zs\nmfyyKt95pP2ch0spWIeR0OdaK9tVML5Py4s1mh6LXLrgOr34h7iKKA5R6Y3s\nuQoiqjktM4uka4+GGMLtImO5+iaGanoCFqAiwipm5elm8mFXRlP4Tm7nkCHm\nqnmaaOSe24Be2j4sc7F1S5WNa/rwQRTBlvR3xogLMmuJusP7wmIfXOvRuO28\nwM7VSrKyJOAgt64NQg41G6zOxn+kijxtKbjo44B9S3Pi5uBgY9sYbEBaPMC6\n3Zm/eN8wxeIaMO1Sa+2qrfG/ABTiV2iE+4+cOhfSEC2ga6UmR86IGqcerafN\nF1fL\r\n=87BI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgkmWzq4KF9rvPsJHX7HXEsHzMUeFwl71EstC6Ues+IQIgdM61bTExxZGU34MSg/9F2aC5Lmx9+XcJyKn2Anm/jTA="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.1.0_1528967467885_0.4715202749513965"},"_hasShrinkwrap":false},"1.15.0":{"name":"kafkajs","version":"1.15.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"21571460be837c6aab78685d9910331ab7f0a645","_id":"kafkajs@1.15.0","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-yjPyEnQCkPxAuQLIJnY5dI+xnmmgXmhuOQ1GVxClG5KTOV/rJcW1qA3UfvyEJKTp/RTSqQnUR3HJsKFvHyTpNg==","shasum":"a5ada0d933edca2149177393562be6fb0875ec3a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0.tgz","fileCount":378,"unpackedSize":672159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvUB5CRA9TVsSAnZWagAAffMP/jvbceMJiqgtgZzhhrf4\n3KNEwK1Id2ax4l1mWg6MbKnril6Uwz6yn0QbsNwR1gnhXjsCs/v6L44G9cKS\nPRuuKuCrAM1XHuIwfBs9KjEnst/RuWyIA8Y5RUik7LDt399qcz0AQJ3qW5xU\nEqHHZG4Sumc4sOX/7g6AbJHIxl631GTquL6hY4fQFJAZp5HQFHzHm/jqWQBm\njozWAUyAHytLmJNXkLgho1Ehe2cGqfEG5w1QSn4yRn9nCJ6Dnv4ibUnkmxwI\neHZnv42xf++A9EGqEpfOXAsAPKxQg/9/OQUq5K9PqefYUFCGjODFo8O4H6S8\nHu/Cxl2tu0FtKdBbLhRg9S/JO6NdIK/2SVgIX/6zn6JuMdDxoBlje3BASRDy\nU+uKnEW8VT8YFNFoIhg2qqq5hNBB1PmBtFhjFgN3eWOuIbN814oy3XUfCA/F\nCocqJRuN1SkYg2WnK2xwtbdzGVV2cbSkLTswEFry8nx/5+N0X6JNvIh50GhD\n3691WzSeU17R2VnUIE6lo7yYPH5GCGsYb3aBXDJI8d/lCJ5CLQBWcaT/D8Nu\npWT9y7m0WZGDS6fDZDKeoAhbnILCYu/oCBcMZWaG6ZoQ4RL0vSsuHecCRSlH\nn+Sy302EGu8k9PbyLiPTnuh2IU820sXqjxRpcYVpS8giDsFzQpWaORW4qrI8\ng1y2\r\n=7uCH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAEkUE+dUZohYSukUrQvaS04qD6s/BIx5QfuXBBBFFn+AiEAyKXrAXMnxit6SFkHqc+Op9CN4aifTQa6/hIPzuBSOdg="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0_1606238328968_0.7292492296877984"},"_hasShrinkwrap":false},"0.3.1":{"name":"kafkajs","version":"0.3.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"b6f10bb7ebbb0e7aeee03bd98996c2cbd05f3fd3","_id":"kafkajs@0.3.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-YqAxF3mz3C6dW7wWZAobZ8AR6g+FU3UV7URDI/fxgld5+vCyDiKYjFzM08trc7AYPD5YC2Zvc022/pYr+aPbvw==","shasum":"ae68ec908c5360cdb9da874ca64ebf2f22f7d195","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.3.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfq+n0wkIXTEBN8zXfXlWsnHR5691CyESzeMIJuunNegIhAJD54OW9lsrlqe72PmyXxpExXZsNIt7pJhLrADCWrLbo"}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.3.1.tgz_1511166276189_0.8812200941611081"},"directories":{}},"0.3.2":{"name":"kafkajs","version":"0.3.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"fe731ccdb784ac599d4f5b113f844dc034086210","_id":"kafkajs@0.3.2","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-x+IUy/tUPupqfrC0kXm7ihvwFy1HeIwFIJhJehaQHdKKc9o2laC9DUsNyXwLVneNvbGElNOYLTgBDD9kBixNlQ==","shasum":"983b0587d91b61a8cc61c07f754104ffe62cb2ff","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.3.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSPjtUJ3ANxY2LRIl2ewSoIw/vdxQ2ThI1qPhm9LuLAAIhAJCfHqbKM6eNHDuCqD67Fje45uGd6qjLD4Fj4JV8GghU"}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.3.2.tgz_1511441751120_0.7989666073117405"},"directories":{}},"1.14.0-beta.10":{"name":"kafkajs","version":"1.14.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e29350b848732524c53f3577b6eae0c98c342a27","compare":"https://github.com/tulios/kafkajs/compare/v1.13.0...e29350b848732524c53f3577b6eae0c98c342a27"},"gitHead":"e29350b848732524c53f3577b6eae0c98c342a27","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.14.0-beta.10","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-7ZkY0ThE0s9CVcUXNFbVpOHSJMGCbEoWldfDGaTKNI9q5yR7C4JFT+iouDmQQhuSVQqtkCbcujWYr4Jf4WjYBg==","shasum":"ee0ecf754a296e1631fec43ba0f67acbe13e1b7f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0-beta.10.tgz","fileCount":308,"unpackedSize":578247,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaJySCRA9TVsSAnZWagAAiGYP/36HpjmhITG3Hv//q4WL\nnevhPMay+s1xWkoS2+m3UuxcrqrjyylR9PuBofECoja96CAC8T0dbLlTpLsq\nCrM86L67r7AgBjWhD3QJMQlvEMjEmkKj2L/gA2lHGe7+c5Z9RdaT2tqII0oE\n9XvBNT8bxqkFLlsrK06kNo6zRabdy8qeFHAPQW+JtXLsYOCbMA4c8Wnb00mV\nrArBgEG3G1AvHZTtKv/dM7w5+rMc0BaBic6bkQZ5V4I+1+K/T/4T5yWPaOHU\n4X8VS8IYBp/T7Zp1v3ygPJQc/dAaHIkFZqujCTge/SVQ+Uv7MdCpinFphb+W\n4heMt+BwP0rj97WwRA6sPzW8LD0D01LFMZ1vOmQmtryxmh8/tr/rWci9B8/G\nvZDwct0k2A6pWANbsurjZ5vf54hqyK7pzDcoHfE5Ozq5/Yg9uAgHSjrGx8g+\nxFgnNyFMSwbUmkVxj0lSUq7foO9bxPjtJKZdEo2X6S3bBa+JGM3hAEdfoeyB\nHLV2JM1Hq4AB3TxyINzqXZAV7TrPaV3s/ipemTE+pVzvGqtg0M1zDg4tdXCo\nJDGkq+k+bSHhPyRWQAPfqbQaRwm2gHhVbyuHUhv9VU2D7JLoOA0EfRjtvZzE\n73ocLGPkwActZ7HEHGYe8rcVS7rXY8mUHcsaeXllCSAbpavdelnWvutl0C86\nVc54\r\n=IEUK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEvRnldisKT3nVHJJbXCQT0avBFf6xCjDPr/PG6prA0OAiAzgzLKGZma+9AVgxlz1knM4B+RyxD7C07jVXmU/UXSFQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0-beta.10_1600691345710_0.7571148263566452"},"_hasShrinkwrap":false},"0.3.0":{"name":"kafkajs","version":"0.3.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"src/index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"dc0961d56b97e2d79454fc16560d9487409b4ac6","_id":"kafkajs@0.3.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Jwp6S2MGmAeoHwG/gm59BSqt/B8UjFkCJK76kMM84vtIytVGeNkGs1HkVGvagE6jri1lxm1xqnLIH6EvWhg2oA==","shasum":"f6a890e5f2a808e63651ed4efd26aaa41a1550de","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.3.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCML1TZbFHRFLXQxMVxUmdJnSab1dUQKRyAEdl/aUC7lwIhAJ2KDmwbf90gd7zcH2w1K0kq1bB0/x8tKXhnT/QE8c6n"}]},"maintainers":[{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.3.0.tgz_1511135939826_0.18718016985803843"},"directories":{}},"2.0.0":{"name":"kafkajs","version":"2.0.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"7f70dea79bfb59d6e2dfa1dc5d0637d3cf2fc87c","_id":"kafkajs@2.0.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-NdDhoEJcCBx7XTqXDbolkk5UJ4Rt4XefZ1SdP2NmFF5J39+WRh1gLdqhcQfnP8bn6sw08llfjyrg2bOhONBzZQ==","shasum":"04f468bacc4ccb850529e2293886db6b7c41c08a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.0.0.tgz","fileCount":388,"unpackedSize":712351,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsIruDqVFHafwbPxH3r1n01gldyE4aezRPnhBpMPZvxQIhAPApPdSX/eO9VvTooF4JBmIRrCMvLwRK9oZvAXINbqTJ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidOlKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpeVQ//W8kBTb29BEkvkFvNiKn+CdhrPzvWbHNCY5ZwI06pmpB4FJJk\r\nr9wKQLvlYtcysdfzcSfyZDxOJJEeK8BKSTBA5Bid0K134MXizLXqtibu/w23\r\nb1too5vGHXLdzcuGa8GRfriZLzABp3Ffo47ZzI+lyuhQaTT/YXKZY+WDa/TO\r\nPJvlrgD2JoTPVY0vnlFiMLXohLzmTPTuLJSKIss1zRR90HH+GCe0DDQ9poVp\r\nAF+itynCy22yv+BRZxHM8HRJvO+K8I3N0Pi9CsT/AcpnN2D5zYJgbv+KHAm7\r\ncexcyKLXcOBCcPCz4s6khlY2EQ55HVVo0XHrVVwfOeNBmSMuoOZEiAUKTZ9E\r\n7ozG2AgZ0EY6L+gWYmRx6DJs8ZI0kQvQRKESFJ+YtAymwRJjAvpxvcWLVeeI\r\n5e/tUebVN262FryPndrGVQ3R4zc4XESnQaQzZ3kEkBaO7iM6wWLS+wClG6I4\r\nSsl4JkgTAdNeKjaz5oSiRzyJj6+/pDY1/4jeUgw5gUMXuQVICuIw5DeBmO1p\r\nb7jbFKNw4gYdKtgJKO2tZOxZ3V6xC25dABoh/bVSFtp5GUisU6i2F3+OpMZb\r\np6WvXISs1ZCsHzKShQLh/lKRnBcRDn2bfe49qoKL+OlF8OpqyJivzFEG9bE9\r\nWsVyRoqNqK6fYR4QigDEO/7re9/tNV5riTY=\r\n=3ncv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.0.0_1651829066305_0.13220115631952978"},"_hasShrinkwrap":false},"2.3.0-beta.3":{"name":"kafkajs","version":"2.3.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c7135f76ac57a02ac09daa80e251e1d0dedaeb91","compare":"https://github.com/tulios/kafkajs/compare/v2.2.3...c7135f76ac57a02ac09daa80e251e1d0dedaeb91"},"gitHead":"c7135f76ac57a02ac09daa80e251e1d0dedaeb91","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0Abadge.svg)](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.3.0-beta.3","_nodeVersion":"14.21.3","_npmVersion":"6.14.18","dist":{"integrity":"sha512-5/BIt+gl3GTTS0f3+7X/J/oJSqCyNKO5lbcJBJNZ4ocrY3KWC9VmJb2NoLWRvG+PTZtvQItxY6TD02oeOSEJQA==","shasum":"9ffda80ea8fc096f562c57a7776f45149c31b704","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.3.0-beta.3.tgz","fileCount":391,"unpackedSize":731993,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFWajm2AMsqrIDr8YoBxLbgzN3lxsLWvde372mc44F45AiEAzZL3r057b6shomeWa0DNLTWZyWgFsIPdOtAVfgiuzeo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/KcoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpa6Q/+IDog0bbFvJ6pSerbRLp47e7xKoTAPSjMgJGCt2kM6YoR5BIP\r\nfoMC9hQuNY8JoZnpAEYPiQX6IbAolFtMKgnc03FzO6iU6qT0bLaTRUSpT84J\r\nC1kav1guLUjaTBfM0cVpRQ4CemeaZo/ua7vdxOpUY/3y/X/8cKGfJyc1vrVZ\r\nuVCkqVim+0yeoEZJUcMlCwxJ6Vi8bWkVyG6dhZjpy2NdmVV0rJc8x2aQx4TQ\r\nRL+fsnJxI8daOGROVr0JYEJEtMUteVAoYSQH3VZ0lmPl5F629VeKNDOkrYqM\r\n152xatbNQzQu2PHAroB+87uRWpkcmP1aIl3YIDUsLVvAVp21UaT4TefRREDs\r\nQJpYLfYTvGJ5RYlJq85/gGawUxenFyhhCYW8dn0gQHEOxxEo7cUkCQ3b8e3H\r\nJXnewvCXI2F1nxoXcdQ+hdg12C0l7glqCTZmFQ8dvgTtjnMhYv8O4Xs38JgD\r\nK5y5SeVJEwZQQ3iCuNuwOJCY8CROYH25kHVa9Sl8GC0p2JiaQD8w69H+CED2\r\ncMQ7p4b+3lvY6Pj9/EM06tmG2Cgvfy2irFFHnFm0cePR4cg/BHUk0O8mMaLs\r\nc/9zvhoR0/Rq5RuPAcdQNiCt42eVa0YGhoeau+zk6ZCoEhjJvK+D4n91vxxb\r\nRG45zPnk5dAlS6N4LHNtWUSiWACAVegkCEw=\r\n=1Rbn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.3.0-beta.3_1677502247808_0.6241692699146022"},"_hasShrinkwrap":false},"2.0.1":{"name":"kafkajs","version":"2.0.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"8aaeb2be6d083282f7180dc5da5968aa9bfac2eb","_id":"kafkajs@2.0.1","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-UCR/MxWvLNqV6HAidD9fb4qwzgJA2GmxzhZWbeBMgRe7noeadRMdGYTpvjW8hm6WtOlMqPdr5cdfpMEKmQXVHw==","shasum":"c6ecccbe77ea6a976e80e2c119353182394f0f3f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.0.1.tgz","fileCount":385,"unpackedSize":710626,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEBCogwJ9nXRDB5YPhvUT0VLXs+s6CpZMq41mK010vJ3AiEAriMTOgCizQLNpxpK5SEkHBk1NJX3vbkpmCc2A5I67Gc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiizCoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqH2hAAngL8V6UTlvnA3ENYHezYf8SacCkwYJMIS9AiHbM2gshc72sC\r\nEvp20XFdB8uhpt2Kvhj3c9FggfHvvk6WM1Zq//VAc6qwSARJvJFwUgMPXtcE\r\nxnnJhlbpr9NVNWCcSh9MCQtgd/vTXfTcPBmjFAe5Ida+rvPdXEJUxsa1K1eL\r\nuc6uTxNsLEmvx7HZNq6sRDHejCSprCNP0LnAdyvhvXm5ZHNhGZPw72GP8idb\r\ns8URTwD4BBISuGvVpHZ7HVaNPkaCkcnoo6NWp/BVIeQ/oRaS4P/6hGsvsg+r\r\nvdXSdZa0SDldOfLl6Ip5p91l0FGhuyZS9cQ2IfAHK/G+OkTzkCjUix8xQZaz\r\nq19dtGJ4hVtZga2IIEMkVxGCW6izyXCFEbAHvBj4Yn0caUvVpfCUF9yV04PW\r\n5e4n4brBADkCZc5QnYqLVlFvjB3LPht7FhGS4cLI62YtgHjjJt9XLkuJsD5k\r\nqOE2XE+4mbC9FhhjjBtDqWC6aFwQ7PoS5uCqQGAOqGwA0HKfL4/FrGo2+C9w\r\nRSMCQRnRit9PI4Ugm3/2R7TMkcQEVmnbGZqzlV2Ctz8APo98p02OVtAxAliy\r\nV6tSwH3VPhDBF1qtykRkNY5lleEH6X+TwK61B0V+2UsI36H3VBIF2aK+Z0x0\r\nheluApJqDlEzTznzhM/unUYMWDk07V1PjZ4=\r\n=XmkG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.0.1_1653289128578_0.9250869434562909"},"_hasShrinkwrap":false},"2.3.0-beta.2":{"name":"kafkajs","version":"2.3.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"57d1e09e2737eb5e276f7219de07014b06f23d0b","compare":"https://github.com/tulios/kafkajs/compare/v2.2.2...57d1e09e2737eb5e276f7219de07014b06f23d0b"},"gitHead":"57d1e09e2737eb5e276f7219de07014b06f23d0b","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0Abadge.svg)](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.3.0-beta.2","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-bGFdpopXOS8KXOivgw/m6L63FQr2vycWbj3QvAtYKBCLvtAKpzDifjVBs4sn78Mb5BTw6OhHl63sH+LeWn6/Nw==","shasum":"e4e84cae22fe58815aeffd2cc24a039ef58a94f9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.3.0-beta.2.tgz","fileCount":391,"unpackedSize":731085,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHqJmHpHS2zeZtuEnmRGgPZpvaGonrHtj7a/eP5t+W5AiB914WKOAFTfQVEWuK5ECn/WhV8v72UBe2yQ5HYRw3Xnw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjeyPPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp9Sw/7Bv8ikdhmV5/8JMDH8OPv+ym2loCCWD4hfTgJz4qxuQxs/O77\r\nOFwvuDVKbNI23WPubQjYOeJYcFAX2x0vlUnBPhFVPRKbURP74hBmsf8JQnTG\r\nmGjdD0ZRtweF1t2QbXHRVmOk05hCbuLuWzil5Jsw2ptG4t0SUO45tihFBc1y\r\nGPzNhVRaZycjpOFSfXVCPf2sfw5ptAgXjFMnN47wesTz/ukCwp+Uqw0zkGmw\r\noXAdpiqJRM7h2OzG6BAjPCNQzmrn/hWhXFCMZ7oU7WWHKtkOpMiiefpE2qdJ\r\nEhwltrQyur5qNJbjNwdX+NN8vhYfuLa5VK4bqSm+/wpemVpRa9y9HtMfQECJ\r\nW8XhmFGXA8FMznuGlYAiH3xNobzSP/9O5E19WBZjg3kGCaQjQFC3uGxMjVrJ\r\ns30fnWKThDBsC4VdnBu/XPM5DmVFrr/LqQ2FYN/nO7TbzGCil6sAfGIDU96i\r\nUSoUlVj5lzXQDqzZULQsPd77pZE7eq0jkMDul7ajHAoGswZlc5Prqdy3fs65\r\nuCiw4ZMOqoK4cHxIGUE23nmcB1pUCluLbNijQktm4H3+gQA0R00BYEC1PbjX\r\nDtpyKpI1hlMsq9wYplCCQDGarFlqAcZVyZSUq7zN/U8vdctFlFFL+rBQL/B7\r\nKzHJrEVwBvpO7IhQ9u46byaX56J94sQ7FK4=\r\n=Q4xu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.3.0-beta.2_1669014478840_0.7507674047138817"},"_hasShrinkwrap":false},"2.0.2":{"name":"kafkajs","version":"2.0.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"a733eaa2f215c8d763da4a595c50f65fcd050566","_id":"kafkajs@2.0.2","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-g6CM3fAenofOjR1bfOAqeZUEaSGhNtBscNokybSdW1rmIKYNwBPC9xQzwulFJm36u/xcxXUiCl/L/qfslapihA==","shasum":"cdfc8f57aa4fd69f6d9ca1cce4ee89bbc2a3a1f9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.0.2.tgz","fileCount":385,"unpackedSize":710780,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/OPEAA09Sx6uTDD+5okSDACT4IlajCJfqJncYBPwTegIhAIHX9D1wK8h0SkW9BNoI2zGYuXkwYSSDaneBpEaZI3Pw"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJildU1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr70RAAgC+3qahoNlU1xXfBIVucKGt2sbW5fIXihJ6JWdn7edCZppu8\r\naVrEwuHEFGhrtEQSMb0rF6Qnwz1X+kNGwRGK0ukHHlTshwXI6PwmsRWheVWa\r\nJTouZhIf/o5n/NFivt0fc1fr7F8J+/iaMiMF0yXuJE+go6XLneb4BDP/0hGn\r\nD7rHWQiLpumVWHPVq2xK1JtbE+khlsmKJG31YYSz1HzwiHePY1zDieNYYi6m\r\nWzOhvsOB6erhhuo+RAk3woCMvYKR/mQHMrg822BRD8NX/SHcyyEEegDwH5LU\r\nU10qs2NEf530MOhTqhB9D4iOl8/BOyMtslh2JAn+76luvqAKhypJ8RgCiAop\r\ngQj/NW6A2weDIVbl3Tlgo7qgtPOtQDpKHnj8zECM8kWaNhLsfTe9yvlU55Cv\r\nMD1RieLzI73XLK4SwLA2KyqjzoUVZ0SRAE4CgRex+KjhDw/WzJJ+m9znPZWa\r\nwZfa9Ge3oruZLBWw9wSzu2sJ5Moqi/JURS/9f5A3I9PD4ONoAu7CrKQX8YBa\r\n7+rL48pYfuG/hnRJeYbtIyJfMvdIcRmLJI4ShuzqD4AcNHNYdzxbe23j7T75\r\nhjyMmv53LWjdNQmcanNxGfbZN/35nv5lJ82G5XifE3Zd1cTvgzWB65HOr3ow\r\nVlyotE2X2m7RCNWuJKV3wGuAGCBe52BV0IM=\r\n=Twgk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.0.2_1653986613085_0.9564018863533426"},"_hasShrinkwrap":false},"2.3.0-beta.1":{"name":"kafkajs","version":"2.3.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a963bd88b9a9827ee7ea750805900ada5682689e","compare":"https://github.com/tulios/kafkajs/compare/v2.2.1...a963bd88b9a9827ee7ea750805900ada5682689e"},"gitHead":"a963bd88b9a9827ee7ea750805900ada5682689e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0Abadge.svg)](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.3.0-beta.1","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-a//Fe5oWYOciSWihdltDj7hiBgwb6eLtYUZmBNnkDPbwc+QzrtsSn/+HsGOMwx95cJLBRzluQHjogbEH6KPS9A==","shasum":"311b3c8e1759b58c7e310a330ae39e90ab439901","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.3.0-beta.1.tgz","fileCount":391,"unpackedSize":731004,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBEL8XDXIRzUq9gwViii1Wwv4jkEb1AMRipnP1KTryJeAiBiNI12yIyrsy6FLqcg1KOwI3EeUOiOQsB4tHgQ+KA8Kg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTSFWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWIg/9Fcpr6QyataW6Txr7nDyfLlHWxdbSLv0guQgMSUDulBMjH+aY\r\nbjk8e5K1hh3bI0pWzMgCvwExgnZ0jYvPVxase8bKo8mvn4/ZNRxLPm6EWAd4\r\nLdpbQ/5bYFDumtYjycJJvsnOjer1ZqZMo4W7rgpk6wGMpzzhRGocGGRFet1y\r\nfrfi4xBNsK9VF1wI3a3aSamXchQczwxqiccXFUyP7DZKjaABXg1mCS/sMMzL\r\n3uYXxyReiwF33I4EygpqryfCFBskufLlmXTwIctm6UgHPVP+TAi/t34IaRkZ\r\nwmds9o9PlJfM9bQHoLQGLyraB59Ej2RxyGDq1ncF/f3ks0Y2MqinTC1O6Ola\r\nsvf17sX81RcNLAQRRWlJJaaEdaGSNEj/sZnLhJsgCFo5V6S0MDlSwe68Cznr\r\nt1dF6CrYtwuMWhg9A7L1XOg3wtSOjjPdIQPBnr8wEi/QQzjkBXpl36zN/nK5\r\noCX6b2ORNc2doDJoNoXqGfosdLe1RO2YCfqSKIKI8gx2ZFuUcR1fBdFydMXy\r\ncnp7E1QhOs44UUqeXjCHYdIthMLlhE8FRd1V3KxMZW3LYMgpqHsT4s+m7KyZ\r\nQmDgKfP10J8+wwZOgDG3URzR5YPSFuyEe+mxEvoHtczL2M6oHx0ocvpvsm+M\r\nNvzu01LFuXzdW5NCTC+Vu4XDLS3xMaRs7w0=\r\n=hnrE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.3.0-beta.1_1665999190278_0.7371195729386522"},"_hasShrinkwrap":false},"2.3.0-beta.0":{"name":"kafkajs","version":"2.3.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b5db7abc485ecfbc2b621349d78cef11ef6932ae","compare":"https://github.com/tulios/kafkajs/compare/v2.2.0...b5db7abc485ecfbc2b621349d78cef11ef6932ae"},"gitHead":"b5db7abc485ecfbc2b621349d78cef11ef6932ae","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0Abadge.svg)](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://join.slack.com/t/kafkajs/shared_invite/zt-1ezd5395v-SOpTqYoYfRCyPKOkUggK0A)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.3.0-beta.0","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-J+aBXxcgalcltObPk2D5+lQcHdkps8s2GSMCxiTjn+rPRDwOYI9y88SQKfKwSP6NLApIBB8iFNXo0kiB/sQBsQ==","shasum":"ba2b90f6859f6852145656faff5fa76fd6d16012","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.3.0-beta.0.tgz","fileCount":391,"unpackedSize":730892,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHQ2XBk5xVeFLMLy0ibY6sBmnUI5vLwm9L98id5wZrTuAiBC5yW60NEMDmmgh1SZoNyfa99IgQAWDmbrwkZr7C0FiA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjR7cyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo4vg/9FWLX43CSgq3WewJH62libYyMQsZ7cbHXUMi30NK5MgXvLp2r\r\n0VOR5ZRc9fXUmnOAo8Uhi25a0T5AfVf8YqsoyP+qC86fIZlea2lFBJE1t+QY\r\nu8NsJEjBg8Kz8kiPr7SiKa28vcOO35ej+kLubdajSHa3ky09z4KfrXub78ol\r\nxRSgCKwANiKvzxC8D/0itZ7TlEUUIyv1P70Hw+zMbTtzxuELbMRScGRfkZOz\r\nvmsheWYk1KFDqkb0fZj2UmdBtr25smzFu5v+F+3a5AuCnyX4umjIu5heD0ZC\r\n5Z5LAQACkBTzc2dZMdLx2Quw+D2H6St5j0hoGsnxxoZhTXe0zNPuLRbZ1trB\r\nqWgzACksQZtau1bt4uJNVx1EGTYJlWvhcfsmESo53lEFFNDaPsD7e8mBdKrJ\r\nmQCwZgxwJYRZsvb8Rc9FyhuM/YvU0ITJ3vo/jPLty51bz79HxAdeuDllQNeJ\r\nee7YKzwkDj9tFOLNWaxJwLsdUKs3DyZeNVHFJDB6TdS+xbstqHkJoBtvfHLT\r\nD10S9x3cLRfocKbHyys9cM08s7AezgKt8atfMQzrXTK9Sg47NOk2Y1RD7BrK\r\nnTT2aTEcFwfk4+zPTdyua4a5oRWKr/9mmz6kVaD+5jhc/VrJJiZvTDiRdTrQ\r\nwldq9c6T29fVelI0Rpkl3j2YtmF3tfGNBgA=\r\n=k0rJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.3.0-beta.0_1665644338416_0.3709820109510682"},"_hasShrinkwrap":false},"1.17.0-beta.0":{"name":"kafkajs","version":"1.17.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7cc43da9cdc91a3893ce349457a7afb14284d734","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...7cc43da9cdc91a3893ce349457a7afb14284d734"},"gitHead":"7cc43da9cdc91a3893ce349457a7afb14284d734","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.0","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-AAlUjayXf2F0SDHuODjNDjZSC0qT64RtEgt03e4ixqClYS9a/deslIGjUEgNf52xNwIxRdtEpDgK4G6VZguGHQ==","shasum":"1c474077a7cccfa23ab6c52183a24eadd45e2407","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.0.tgz","fileCount":381,"unpackedSize":700914,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiA7VxCRA9TVsSAnZWagAAdNMP/RjeiEY/G9ShQA/OxLFm\nrCyJcQ+WJtnOmc4NMN2rIGZF4inefl19HlqPeLm3PY7MpVYXwRB6sa4RDA7K\nkqFA2VYUk8IL+1LTKYz8U028faCuN6VQfiEgSG8xHA93BGC1RO6zagHvgAsC\nu+2ln7WYuZp3d7pIp0qlIJkbJQi5v471y9Uxhmsy5yFgcPPZfhYolaSC388y\nHyWwf6j9SsVkwQc9lII+GjXs0+sltK7ekwUvi7ksekwFcuxJSXstOoAmTsMG\n2GDZTII/9FJxgMbsAetdWNVzLmVPvc44c2dSihN9to08r1yX5nFz4RejFR5u\npnzKi/e1DfvTJYDok1958kpBsugL0KuaOUbpBw/8ObZUvn8LQCV8cQCI07cD\nwUYdB4vfLFcDOE6FlDqrRRplu4EK4jfyUmEYgQEviYJey7U6mehJ2DpJbuVC\nIG5pHdvIsDTwbrqKchiRNBJ4Ab3O9CRCjeDV6tYLwS757KZj/0SRBap5aQv1\n0kOEdqvyXbsTh1I+vpWfFocrtk2RHNTO7xfy7POmWbzqJyBBKHOBYSznB2lB\nsjG/nHLUNlsgZVA6JBUr9C7bpXI4HizGyda8zcp4lgWolRDJjuXtoqT4OtSg\nqIx8GFVTPdFe9cF1nOa1xkWuDw53SQ18GDXLB8Gs7gB4bx4/BzcKownLXjCQ\nC1F7\r\n=u2xw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICjWIXOp1kyTHJYavRj7J9yQk70jY6szXRJb2VsfwVS8AiB+1+Uu48FADSoBZmXXFVrZb6eqYaLjBcCUeUQqiiH7Rw=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.0_1644410225386_0.8287392350918703"},"_hasShrinkwrap":false},"1.17.0-beta.1":{"name":"kafkajs","version":"1.17.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1876abcb5effd6183c1fbaa50dee9cef269b67a5","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...1876abcb5effd6183c1fbaa50dee9cef269b67a5"},"gitHead":"1876abcb5effd6183c1fbaa50dee9cef269b67a5","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.1","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-Fh0tluVKyZMPsVHqG0gOvJeN1DrS9FXB1ndAGXjYs+g0wvpWq/XTx6hiC9BM63DgDGHaqJRwx6wjNrgXzd0WqA==","shasum":"ad213a6a715e07a41e8c8a20f6310b1eef2494df","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.1.tgz","fileCount":381,"unpackedSize":702507,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiA8CICRA9TVsSAnZWagAAPYEP/3664HdTT4pKEdo6Y3A9\nESQonBFDq4t70JOeGvMk/RhtoFuuyJhkFEk+Jpenxx9uiceEzJ0hdQn5W5Jq\na9g4bg6wu4HXs1vqqcpel4s1NH9Urn96HJ3z8X+9/4qqJ4O7fN9WhVp6wTE/\nbEEPPMzSMWbNItQsjcXH9+zQC1pGMeaiVKQ39H3893ZMTED8QzcNvltCrOZM\ndciEOwWDJZgBv4sr1XQ7vu2bk8oiJ2zLbkCU1h15cTR37kphO5LGccyYDsk9\npGHN6YpDNx7EY3YZNnvRp+NEM7SdEgLI9HTjzXZMwVn2eUDuJ9x/IqAmymLI\nTDJ8+Aq0er2bi569nKDECGNw4kA+XfkLge/U8D4bLiWUlqkVnCaYD8DVyBjJ\nZca26mRKTlenXwLRyz5wAV4aCWM3SVFX2wQxvkzK5twvja6bGIc1GfTaVR1+\nMTHvzcImBYqIvNgIaj7MzwpvJdUVV9lT+HzyVaMJ0rNkJCEP99HcUvD2veVV\nyCPFjj+XxTAXBi4Nk+zf3LGBZkNpyAkHXDoPkGqNBZiBMFEmZ0H1FZTpID0D\n2MXKfHM2NvuRJZDWApZ6kgn/cgMXup8i09NB0Kl1ny4pjXDocUUsMHSIUgP0\ncRWG9cSlvMcj65T0wX6aWYDIOODQxAHFcqiiv9RXbGblaiRJRe7pN+ZLoP/s\nzwD3\r\n=zUSp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCywfd/LbWgfir2p6vtSLaSbnQ+Fb7fMket5vxshdg1qQIhAMl34VKvrTnoTDqwcSyxqUPr84wAWv5lMjun1ugYVQnI"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.1_1644413064469_0.11249474486853495"},"_hasShrinkwrap":false},"1.17.0-beta.4":{"name":"kafkajs","version":"1.17.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a8b46b4721755ccf90b54c7c6baf8361e13e8106","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...a8b46b4721755ccf90b54c7c6baf8361e13e8106"},"gitHead":"a8b46b4721755ccf90b54c7c6baf8361e13e8106","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.4","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-63FjMgyR9SNDikBpm8+lReX+ykzrRni4wheCVlZedgzFwjiAhPcGg4ufPpQqLdxuVXbYFsIJpHUBVFl2h1PVJw==","shasum":"e282521a3dea97baf40c07b874521128197ee71c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.4.tgz","fileCount":381,"unpackedSize":703613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKIbHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrESxAAj/9EoJxUs6icXCIlmgPbjSrki8Ukbbafzr19uTxkvoqS5DGN\r\nUu9Tq47r1GthEwYU9h/ndE5yiu14GwSzN/mfMK7yzc0ALWc1ZnsH9VAZ1ElJ\r\npPY9w9Kq3p0vNYAeyfyTu62crcKL83uprsNgof+eZFFNXFETPopCX4FSzbia\r\nUX6QiGPKl1Qb9Jo4/aN5NCSxncdQuMq2mABeu4uI9280RZni9wZwapS8CZHl\r\nV7jPeI9out2SSS8TZ5Tf3LnA0eRiSN6q1onXIavJFEGWrx6MSCzisOY4n34B\r\nij3MS6eKbRhzF+PbBmx1zw4KTRVa9wjE+Xg6a6aiwBoErKi7VPyP42YhXCTm\r\nr4n9E8NvCC2bcgJMNq6OVSBYip13ejH0xB+72LsFsZ3TDpuL1qzKgrcJu/BR\r\n9u4Eg+wd1CwP5xCbTFvwTOjghrCOX+Ixe/LU/1xcjIa39+ZeS4yN/UJpI5Hd\r\nGEqraMW1EEaX3xDb+l2UFTuXTFaw9eBpIzi3Tc311BLve8q776RwM0++MKCj\r\nVHgKkDEpre/QjiU7+UsK+MsOe6YXz2P+GqEfZFErbPKWJZxHylRnav5pKiAS\r\nWo7cZT6lqKuaxVSLukDZnoZG9sS05TIt4hzpWHGcImAbggHeC0bf6pams00L\r\nv6//7rALrgSUq35wFxlOtGRTUTv5wv9n9Ho=\r\n=PG45\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID6zsOFN/9vW88qVxmEpb4ungPziNYIFZ1W+N24OD919AiAEplD4F/7qNjW5PmJ0kVs+YupcNQnt9eNPAYnOIXwOXg=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.4_1646823111446_0.6457261194558197"},"_hasShrinkwrap":false},"1.17.0-beta.5":{"name":"kafkajs","version":"1.17.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"4246f921f4d66a95f32f159c890d0a3a83803713","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...4246f921f4d66a95f32f159c890d0a3a83803713"},"gitHead":"4246f921f4d66a95f32f159c890d0a3a83803713","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.5","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-cpk18dfrCUSfNvSaKQdzMFzwo6tMTPFUFe9VBitSHeVTsAD2Lr67lnWwysRCOPJg7/iKLYfO2xUTEUzvrdWDYA==","shasum":"2c587b33f93d0f3b5934d648a2d34ae27ac41390","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.5.tgz","fileCount":388,"unpackedSize":711372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMEsyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmojvBAAhilWNmLyD4iN0wBbrTZkPm5E8HK0Pd2Ibk2kJpC0oq0x4Oq+\r\n+I74MJ0fAeO7AK2qdHCiTfzmrCq5uOjqCFZCWQnpnqkkAQshJL09V/JH3za3\r\noVJVby7w0AMyOy7BBL/fpFCGZ8QkUoX7i39snEF6bxTdixb52oLXhAIa7o5a\r\nUrfk/+VDUbufFwv9BWVVsSh2gUA3onl7paHMQ7zlOT2zjfVZqwHamHuHZzhs\r\ny1aWv0mIsJSxBIw7utJKTVnpRWLThnuW5e1+a3SjWUCKF0PgIAB+XNmH77HS\r\nn8QTu5WTvJ0clrB3LplPXPV5Yo3lGo7vT//rVwQ0GGnvpoV6+bOsqFjfOVBJ\r\nDt6T9gqFHVq1fJleYbpheuvplA3/VQbdr1LiPdHxtCX9ambTcPZM2P1eGVIS\r\nvIU5ezzxEtlnFVx5ncKEAZnevF7ukodCAvou33iUHUZUQegSqUuP0Cu7Hg5a\r\nrlzBeXYDn2wSbYiVoR6rKjy1fcXu7IPzQvuTWFkM0YF1M7M7mr2sgTcQ40KX\r\nQAYcJ5+B5iJ+UD4M5T9iZeeEEtxtkpaLm+v5TDkDRqNB7gJYiN5i9etmEDK4\r\nwh9eOUIxyMQTsfJAAJHI1MUqmg5pdJmH0/yPkOFXC6eyhmyfpPoXUT/h/FBt\r\nJGMcpVZml0GYzdEPb1E4tZoL4HXBJ7gCUvw=\r\n=Q1Q3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrZPdVe3L6iLSWNerJI2JxC+COk4xlxU7n6/+ZuUFZtwIhAIWn6Ff77fUmJMUXPjjXA8OI3rJ4FrozSbdon92ix43+"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.5_1647332146553_0.6237813753072501"},"_hasShrinkwrap":false},"1.17.0-beta.2":{"name":"kafkajs","version":"1.17.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"33db95cecf8c2e6adea21df1360d06230c39e1f6","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...33db95cecf8c2e6adea21df1360d06230c39e1f6"},"gitHead":"33db95cecf8c2e6adea21df1360d06230c39e1f6","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.2","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-KoIaVKhmG5cSjtOIB86FCYK9BqFhPVYR/AIwyiEPFMkczKmQaSLKVOJZsMwlheJKY34XDbf7IlX7Sjt/lK8JSw==","shasum":"c0d2dd4eb6988d0bff3f5ec23f3d0ebed2040742","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.2.tgz","fileCount":381,"unpackedSize":702511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKF73ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmorXg/9HzkJ0Y1X3nvDUAll18Ts9tmA4fwjy/pTOKm5mguTjvlAaMoF\r\nYkZG8PTKnkGcGiutwcBk/wBfPp2g6Sb9bwjrgvWW7fB1/B9p90EcoBEoy7o+\r\nWWX63L0X1lYHZE8scdjkiLtIrXesgwwSXYwRUHqQsivPNVQr1rBv5At3jStd\r\n3Wff11jSApI1uUhiAZnuQuaJXvzvjb17EA+4rMtaC18PN6V/zqlFqxai+p58\r\noPT5tARzCTujk/zHZ+NuVxsSrI5u7hAuiN3xg5WXCEwl9gEHEHWtrx9iz6An\r\nqkGqMIM8naWYZFRJAt4Ovpmr3Nto62iJNdxOrwIYDPJniRz9lHMBCLz/zmUq\r\nCHkhZHAD7N79Nbtlp8WhCnVcMxsPx1W+yYNfIfNFOeJoqTGxuC5vq8bmx+ua\r\nv5CmzTgtPOH3+KCjMgOdFBJ8Ky+u6eIsoIv5Cs5VuBizgTQWo05QL2sPfHhr\r\nIideDFLMlIjAaKNYWgqB75SGWrSSLNN1+C/I++BWJW+iAMGLIZDV7nvjVTWf\r\npBL1qwL4+u+gmP/egwlaiPE/rZG94i3C0UMBw90+97Yn52A4f1C/Pc2ZNyIW\r\niSdibHd4jBtuwYIMT0rTpAlpVfXowJaq463yrb/Yi1VuUcpbccXxIjM63U+E\r\nreBPULv8OqcdBdiT9AurOcJpWgLXZrg1XHw=\r\n=I78I\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID9yM0Ofy/u5Ehsrlz4L5I+713FYD/ljIx/vrF2g13uqAiEA+/Q5Dv3hYeUObJNEKkIzPe8s2vMav9tlwgJb5Axu4mI="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.2_1646812918976_0.1189067328165403"},"_hasShrinkwrap":false},"1.17.0-beta.3":{"name":"kafkajs","version":"1.17.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a93151d77b97d62d75f67dbf67469427bad4106e","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...a93151d77b97d62d75f67dbf67469427bad4106e"},"gitHead":"a93151d77b97d62d75f67dbf67469427bad4106e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.3","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-JsuXbS2p8+MHbQkgmbtOsl4QUtRyqN4E2hqfpAfo2BAscTu1OPbOKp70x7Zz0ID2PpV7wGi0SsUrfsiaggea9w==","shasum":"220b95b136697a266b94634902dca6e7d5a952c7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.3.tgz","fileCount":381,"unpackedSize":703594,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKHclACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpbiBAAnIcsVtGdrBbXEg0nRJYf39A82rWpNUl0574m7etTAm9nuPKi\r\nQjM9XnnvLXDKXSy2PC8WdhPAwASJEHiCLf9ByameZwJjCAhZW43uLmmH8nc8\r\nmHdq8kAFDIx1KwmExyyDU8tAQNhDXq3JRV2znjSULWOaayg2UVtTGVxozuHE\r\n8UJy8y2blRrVd1ZSIGkoQ316jgjtmLm+IMbLgpKo29SsvQRmGaYfCisypwra\r\nYD6a2UPQZLPriwHRxczC6PmdgW2xoajH1dfogB+ax2oXwyQ1L/YweHbiwUG1\r\n9KOYS/B2+LhnE3/zkhyce3mB/JYoHmLztcyBqHdq+69vrEPkg2JBNqjsJFzd\r\nFDTWcJ14g15RE99WvU5WLj5ufY7NFmgyxD0IScmibKkdo2CAz5qwMBJUwHxu\r\nSomVxqWZgRU7hfiSk6D+n4gcHiTuF9xiBqn8XzMoIM9CP1TpCMLjJQEZHeBs\r\nsHyS0zUbr5U6bY9Wx5Fj104PWOKnUjKuy0i9qzOXG19DmnxIpJ8Ob6tmDLqM\r\niYBFSvuPAug2d9BdvCcn31hkeJh6cO/JaWeuSZv89CItOrrJeiL/FOpzgNcB\r\nTdcJpHzFQXVUk44bPsUMoylbsUNxRy9Pg4c3iDmBA6DnujzPcyvBwcAvI+7W\r\nhgv519msdpGvEPVSjtqEXhBC2VqHoiECt0Y=\r\n=UXn8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNfh0Cs8IrPUJIi00eHXNVs8BAWbVDLK8tB+43W19s1AIhAMy0Oo4F0SkdxabJIjksMsDnxNIZwjB0QgJHnhfLtDiU"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.3_1646819108830_0.5784286595093886"},"_hasShrinkwrap":false},"1.14.0":{"name":"kafkajs","version":"1.14.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"223c987dce2052d155397c1970f4b4081aa67e0b","_id":"kafkajs@1.14.0","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-W+WCekiooY5rJP3Me5N3gWcQ8O6uG6lw0vv9t+sI+WqXKjKwj2+CWIXJy241x+ITE+1M1D19ABSiL2J8lKja5A==","shasum":"3d998a77bfde54dc502e8e88690eedf0b21a1ed6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.14.0.tgz","fileCount":308,"unpackedSize":578684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaKRxCRA9TVsSAnZWagAAyisP/39yOMpTk1z886AwOtDm\n3G+ENIdJvDrnSiHdxRV6Esni/T0he9cJSc/aOwKXbBs9ujddki8j6Rot+q6u\ndT2KlJwpNeIYBpGsdOlBYmQWbhDArN5vB6r9KpiiEyzExeMtmRapAMyDuj/V\nTZI7EPY64QDhnL5wmJrfBJvASpOeZe0TRG/dgZDpgMQy4u5bnYqayoIfwf4i\nDbRnG1yosCvEhnqqElXZm2kRjzzsy8jZPXzLgWa8d2y/N848ioYDBgpKlW4h\nSciwi8G0kTkotMxP239uzPjcFD32f8iNyOJWnGBuUCujz8jY1ZHN1MEjCHRN\nQptlOJziVP2RDIh1++lAYVJNTK0kxzNmayPA4p5aFZ3JWnX4kxOUPazTbo6B\nKADjC40nBENRQMp6YpGCpdcq+vIxcmarhwgmSs/TrZWbq8hUIcbML0g0mCpB\neV1GElkeHCajpp/5aSOm45UO9mmRAaO/nzSBeb4Ec/e5o2o38XQufWO7/1Ir\nxhYpljrSZJyg1bnlKubXvGHlg2ohdOZOQd1tw/I1QA1/eE93s/B5ObptbqSf\ni6Al/sYjzxWXK81ZwNT4hEVgOOx0AiT8fTtZMTzQVbGFQ4euZW15jttGS6Q0\nF132bOVZ2yUg7ohKKx1fgUBQHbQR9r/3bm5wBq6HT8260Zko5pPkQbLtxb3+\naSuQ\r\n=4LyG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBho3bIvyxPGEdFoVpQkH2uQ+QiHQxd3kO02EaeUj92AIgZaK/aJboIojyVuzPW8UL/s+/DuM5chbWHwRHTswRsn8="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.14.0_1600693360676_0.7300798438310419"},"_hasShrinkwrap":false},"1.2.0":{"name":"kafkajs","version":"1.2.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"1d9ef732cfa3bc6c537504d9e0d31ea6870357cc","_id":"kafkajs@1.2.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-47vRqxxrN41r3EuSFgrSaXfFDsc6tNBGZa48hZ25ynDIANIMgr6HGi10Liv7+0tQMbmUFVtE8cRsfuFeM9YWlA==","shasum":"eef056c9be157710c725a3755302c14d8e4607a7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.2.0.tgz","fileCount":162,"unpackedSize":454392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbOeY/CRA9TVsSAnZWagAALNwP/00ccykd7T+EXCopvuxs\nQDiyWVH9LKvLgTRzAZNmIeMXd1Tw3E6+a10RyFa19zwDDc62BgaR7n0Z+9ua\nwWfHOppuAnGk7OArKCFThPVskZehCwrDjbCxxG/Yq91RgpJB1qoAzJEuKn4a\ni9dM5Vhrak0EB8WlSgz8Enoe7BG/m14hpxT7CTysEb0SdhHznC4s9dJCyilI\n9xO/dwxcncZvjxOBAguI1/+pd7afYvkPXDHsUwmmpVwgiYqirrXZcvU/apN0\nGmZ49YsvPFQ9cK4aFMBOjVO9p2IXuA2D1pWnJjSf1VkKoUGaolBXuInQsoik\nyIfCaMppkLY/iO0hGaDnHBdMOhpYlY0beli+cJ+1V9g5tKGSnosns+DxDQbu\nmNrOBXvHjwNQpPqwkkLbO2Fu0BsXQh1byrVUv0/dsx4EheXH8Jzse//Ab/8A\nf/6H+rzXpybmpWN1r7GBCCBAJ2uRITvUw+vwBz4W3qyj8fDQsUspZNOrjc5p\nUOh8GZhH+7QE8TLzqlqro8+4yW6IFcu45Z7Ij64hX/5A5soceVZlQ3huOPln\nFPCHVYsSpSDQd74dct5YkmLXzQpeprH+4Kxqp5GSwqPT+mSJJ9z2Xcyh/5X8\nLGwytCzj/2X3q6qVOyHrl7Bg1d1eA2IZiN7xxwrcePLw+iAK9jJvpNGNU7cm\noSDN\r\n=OKfH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG79ITbcleOiW1nWdZPYUcqIuygu0IbZZOYs/odW/ZtHAiAD0PfGnuyga/MiTBt1h8H/ehlrIf4xUcnUSaFPmJ6ivg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.2.0_1530521151267_0.13644975164517703"},"_hasShrinkwrap":false},"0.6.0":{"name":"kafkajs","version":"0.6.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"3b16d9a7b6406a50b435a9df95c82c6b526bb79e","_id":"kafkajs@0.6.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-FhYzUa91ylzLfTVRcj/WdZDGDkqussAdpw0vQ8wuagASX/vIs+lbP7EdmoSTqwtep5nDTHuEHcWR/Doau/3I4A==","shasum":"3ec46b3e1d4ddd55811e0fed4437c1f65c41fa6a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID/RFdk6ZEucZ1NeiQXTLddXfGw9as7CD2tDe9DAnv5OAiEAwvzh2PKNxNPRrQ3O9WvHVD0KlQ+urwJxxhhf8Elizp8="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.0.tgz_1512637678898_0.7304556418675929"},"directories":{}},"1.12.0-beta.11":{"name":"kafkajs","version":"1.12.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"6002347daf0a07353347664c505a536c79538721","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...6002347daf0a07353347664c505a536c79538721"},"gitHead":"6002347daf0a07353347664c505a536c79538721","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.11","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ysd4VLsQyxDrB0boDLGqpkCdlM9V/iI1tbMilsUjdnz8INHq6gBUK2hBxNfBavgoV18i29/I3EoxaYM4fLx/DQ==","shasum":"6b7462782c20c4841a7beb8dd33b7038ae27e1ee","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.11.tgz","fileCount":266,"unpackedSize":480238,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7hvHCRA9TVsSAnZWagAAsTkP+gOx2Yj5FYWRH8PaRKMm\ntYsbtIcvex81w++f2mPyojKK0HYis3qAI3aoWLTjUFueYkIjE+IatIk9igtt\n83m416p0rwXVBqVInV892+wYUoeu6xNIBIfoyxhj7C0H19N6Jnib4cNcVFwj\nXOTHg+MxYXLqLHF8f6ES33WLewj8KVrSYjVE0ZEPNI5sqZZ27YixDHLgnYeC\nhS8Nv0qvC/jOxXuCq3f3pRbLe7nkgqLiSi7aPRhaE445CJbK34QZaGKrCwYv\nZgG9wl2tAO9dL6VzachbFmb5z+Ernq/VI9UakQUDkU9EUtxhnU8hrLl+uGCl\ntbCJTuwp8IV1f3gX1o/vy9/fhAtbgt3gvNhIln+iBupSw2vUGLvC014nbQ4H\nVSGnaSZLUzdg4EDx1bnpL2vPE91Rv1bpMHtahJrm1nc5cVkQeTmj9Yt485XR\nZI/jkzGats6SCvstAHJCiKlQcKN3lUtKUjypA8ey/tadMd5WolwRBR9IarKj\n/kbKatyhMHQKuLoqbgW2OsSWBW1FrdstC8Pw7yRFkj63VqnN5Hbtk+Cxxg4H\npnr/tcbnlEJv2oyLn3DhdOAvMmy5D4r4us9x9oRpnGqsxDkhJLvJZXq2kw1R\nmXUoaq/H/dx8BtihS2WLo75knra3G2jBQQ/OuINyw/ZTVPv+bD+yWQjJoE7O\neVgT\r\n=yv5d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHPS6jDI+5fxAr3xH8ndj9Ag5WyGqEYQ70PCQRVYuV1wIgIRV6+eJLm3lITgLbLijlg9wLwb7TGxQ5Vy6XRekFEUk="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.11_1575885766886_0.03621131403919753"},"_hasShrinkwrap":false},"1.13.0-beta.26":{"name":"kafkajs","version":"1.13.0-beta.26","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"4b7e79b2361f20472303f28f6946930ce2cc9908","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...4b7e79b2361f20472303f28f6946930ce2cc9908"},"gitHead":"4b7e79b2361f20472303f28f6946930ce2cc9908","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.26","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-bchYAbHofLfWTd8mEN2FeS1aD/nuLiWMnk0E9B4cpF4cgMBHbJiZ5uFBierF/hLAoD9DSEPLG0SonE0CFnBQMg==","shasum":"d111548a0f024c5ee0841bbb706601767cda8433","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.26.tgz","fileCount":289,"unpackedSize":513778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1L00CRA9TVsSAnZWagAAeUkP/AtPMdLWtRaTg2eybKas\nV5wxCn4HG6mcPDp6gfbDgEUmASxapXySKTmh685rTcifnJh7beoUFUEfOfat\n8pnTVFCJEX10snK5RbhQptAlLll5xxVTpeZMelYfqiTKy9owYya5k7WyG+K1\neI8bFx5MorWiTly6XRwSog/WQ23a1uMjaXZZOZPR6EwayKB51VQRCVu81fQj\n/hmoK97SaMMOdAszP+v2aCqRuqD2YztFxmSRsF934LQE5zwa2/mA2dXOhB68\nXPOfVZ3NvKHpRtFE60ZsHQ2FwyHn3BSLvlkkNsIJ08rEX6Se8cBbXU1+yOGm\ngdUBALP0TxFDtNaZzsVPl28EVthrukjvrSO3PkpPyW4Ac1BdLP0PD5wwwCLp\nFzX3ivbQCsLcpZmGQU+pt7ddcMAk8c49ALnseDNiAc5emJLRqG09rAJCdLcK\nErL8IvUYh444Ycnpa99Pc85X9hoEG74mcSu9tAYg+PkY5kmfFWzjeJY9XzRO\nB7ecj9v1yb4IpvEmPDkZfi12xtwj++u1T74Gepm/AG5ak7wmDKtwaCEX9vpM\nktQE5HZMbZ/JDIWdZIg+B7GlBh/VmAziJykT8iBK9cCm4ZjeZyumgeCxXEuq\nvKFd1BjLhqhv6JZyhUeeS/X2E4fdUxCu2SQx6zcQEXa2YG6DJuvCPxQk4mjl\nhQmJ\r\n=lR1f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCACDWej03J0GbFpGY0IimFXPUndPX74BkcG/07Cq1XiwIgIPLHoxHBETZtVhfM+MsEda6WuDka7sReH1rE29z7cAw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.26_1591000372078_0.10180169340772816"},"_hasShrinkwrap":false},"0.6.1":{"name":"kafkajs","version":"0.6.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"533a365a1afcbfbe9033c43ea2f937a28d767253","_id":"kafkajs@0.6.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-slfzjBLkNvmNK3gLRb26XJ9H3TmZ8ryJBSEXW3xu7E0RKhC5lPgMKgNDgSWw5rIjtHzgoxIO60rvu98uGwO7sg==","shasum":"8dfe51fef938d7691b13af09cbc91fdde869231e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/iZEcePCw15tKP8ZvKFvPKGRyF4CPu1jNBA03jiPosQIgG5kzzVji+89ShiZ9GqOFt5hgVkW/PRBKKD+krgjPh58="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.1.tgz_1512745532577_0.15857717185281217"},"directories":{}},"1.12.0-beta.10":{"name":"kafkajs","version":"1.12.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"3c3a91c94f3b32b9c5e35ff6af671244eee45487","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...3c3a91c94f3b32b9c5e35ff6af671244eee45487"},"gitHead":"3c3a91c94f3b32b9c5e35ff6af671244eee45487","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.10","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-NwrqdDboVljmP6oPl9RyicHONGgY+BBmjp16qAobBlPxR5v4VSJgJpY45SYih5oI9Fc1o34j2B2gqG81PmZpdw==","shasum":"06edfb010c2150a05f853b9cf1e83cc2b31540a3","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.10.tgz","fileCount":266,"unpackedSize":479126,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd59FCCRA9TVsSAnZWagAAcIMP/iNeH/6Prnvp1wBcO22U\nB3VaTiDmjQR+qPkhELUECvSmvYU76szH+dMACq5ibeu7/Koxyh3c7Lb+GDRF\nBq22ln7XOuRYQAiIkXjRe440ZTZBrVWg+AeShbEw27A4saKcQ9AvOhHj3ccg\n7c6r3spsweyZfzadtdb3FINIXzFldS8lLIqm7OZBk1B0B+ODCcPggQvdoO4U\n3LdcN7bJyQnZoEttOITJ310oYeBggnyxwIGx4KU1Fno5QTsizDYjNgs47SXX\nAIk+L5aXChRA7YKYPVS/h5c8oEgEiNQ9vc6jjIk0SyI1D+gOVFkaTEkeHqpL\nlZTF5Zkb43KKSne2sQTsKWj1yfY+eSjAuKGSJZBRFi8qc5p1oPhNyF/eYg/D\n+/5lUU27/v808Ch+HFIa9TOl5lhPO0Yc+2HvjepFYguxfgdKivAsan5X+CDb\nZZnhenQcufh3C9khAZCOeTQqlZhwAykAG0Eku2zwWABjAiWzQ7YcYx0TPsFW\nfvmOTSu7bJAsiRKGacI3gVpuAbt4MBtaXOX+HE7X4GubcK4naPXmrvo+3HS6\nVQzS4Y8Yya7oDQPxws8NgnbnJPWQjRPSrYcNx1mesP8cvoy4poZWgg/swRCk\nRx/i3LXVd2ET18frkXZivV3HKGRvPV1CSxds1zIplntV+Yhzpw1iko69lzVA\nvCCB\r\n=uhFR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIq+lcjrEFCpYbi4SnSgcc6WOQKAMs8X55xrNnz3iBDwIhAK9WM9rWtbwYbbPbrjNCssEeTxqrSoxP81pHAKMNsrEI"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.10_1575473474411_0.3017994297614941"},"_hasShrinkwrap":false},"1.13.0-beta.27":{"name":"kafkajs","version":"1.13.0-beta.27","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"72788614fb5a7f0a550cd6bc834d62b7828c7b12","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...72788614fb5a7f0a550cd6bc834d62b7828c7b12"},"gitHead":"72788614fb5a7f0a550cd6bc834d62b7828c7b12","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.27","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-S3lIHrsN1y7OQy2S12P0SKaiCDuSuC1VDCejYgvlUJz3kYLi61SZ5W1SSF1kx6MYOByKMfiauTCkI6EMaDAOeA==","shasum":"0dc0524da2111ea42c100144aac15f1404d2b10a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.27.tgz","fileCount":289,"unpackedSize":513778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1OtJCRA9TVsSAnZWagAAke8P/AgVLwiSnZ50WXutRxmD\npZbiOqvh/AfzrM7bxWNz8fJpJ1IqNLJJl/phWSo+o0cdNoqvI1K52mMn35Ib\nyX6QWbUHYS8k7R/Xh7m6MMcxOxwOndkE7hn5eyROnoxsQGpOqzh3H/kH4Z3M\nRibk8OrWXAAev5ELTh/6tqWjt2ffT7oFaKGZXKByD+aCXiaGvsHrTsSh7CIN\nNCZUHA3rIek1+UZc4Cdch+QqtT+oatAYLMrm/HlHU7S5fszJGa+yoBwFRyLe\nViyDN+ddgRVA9u1ABQTAK7iNONgU7xG2x5UgHAyzkC/I5+O6WSN42Cqo7doh\n6rbN2caJq1yGEykwQ8d7/vZ5G3JB4E4anAbZKMMGY4lwd9hH2UT03uv9w2db\n5Wgcs6T6YAaQnl+P9jERmPMloQYeWTdGbA4RGO3VgdzNZHvH2Ros5ykJwaOx\n8c73VtFmmEOGZebQZoqSIpH5BBXzBMbLYiyI9JgvYRRtmaJQV6rCuricxVoU\n/R0kdbFJl2XV8a73tUNI1R81g4zCUh8v+DapZs4uX9KDvVgFrVdMkTO06sAS\nK9szjU40ZCYSmu5rGFjj+ZWGQ5PYd4eJ4WHRkogthWl1UeZx1QlKP5oxaTy3\nerxGLVpU5N14mlw8VPKldZJRDIp4OAqrhFFphlLmwqfBruxBUvAyPW4dUeTo\nyyP4\r\n=tN+k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAMfDi41fGiCIIEdUSH4u25dKLafqvLGZwuEnyCsPBpIAiBUhONDcJ/nm2Mjy0aqEamiJEaZ5vCBj/BrP3owbCOb3A=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.27_1591012168418_0.4717758399741274"},"_hasShrinkwrap":false},"1.12.0-beta.13":{"name":"kafkajs","version":"1.12.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"67c71927e9c649ff00a88eda8c752849b2eda864","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...67c71927e9c649ff00a88eda8c752849b2eda864"},"gitHead":"67c71927e9c649ff00a88eda8c752849b2eda864","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.13","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-MA6Eti3BlhhM3Lqm2byVp/J+sIV/seWLhj90gQKaOGYIsZzOgwSy8JBZUgThMV0YKi3QOOWw+vg4gQASBhpIuQ==","shasum":"b941c89ed27b6cce4cb7c9ced85391fb2d21eaab","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.13.tgz","fileCount":266,"unpackedSize":481136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8mmxCRA9TVsSAnZWagAAbTAP/Relc52j2A0HDNsTox9S\nI2LxVsJID0oWPNpQZSJXn4N4bhm3qIQ2SwLr/dV4V84buGc6lVUfp3g9Q8pp\nImOyGVdjYhW7fUhdYFTU0hex45YnJmkFotOpzOdtFfg9E+MBGFDrfJltTnoD\nut/vnOoy606IJTb+MhVlmqG4CNvsxRQOPEME7FbpZ0FYIKqE6aMIk0Mr1wuZ\n6MhMkMWXg5KLdOVWzbnHAqUF7C+4TV2GOk1BkcK4zS3do/w4fdkN9QTDOm8j\nXCBn5v6Wfwkh/WmRELfBNNJJjAuz45neeqIHzhQ/bCKP65sW7Muu5iCD0Kgm\nMDaTMrYj3WB8MKt+YmC4WvxOVvtqsdg924ABIN5NkO8vE6ogXoc8UstJxH7N\nZeqc2R4PtH5WnFxnXW7weyZvBb59GuRY39swAplw1dBZADHf4pSZaICiWqol\nV3qqbJS0ZUV4YjoYvDH8gLXt4CW+8uFBpxWLFoHQTV43LE1fo3TR5VLx9toV\n0JB5mC8YU10P4u1u5suQSLL39AgMXk2ZrYWBo3nGMt452dC/4EP8SgWmwRDz\nQ95tXzz2Sa0oq6bg0pfGWtcKKzE28kKEXoWyPsX3LI1P3QeE2u0KJwRHUsUY\nM1cqf+ueHfwjIRwbfKUvjDyNS4bJk3AOlZaTi7LxK1neVb6irflP9cyeZWfe\nvsWR\r\n=1CsD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPI+AHqqDyrzz8hglIxMFUjProvBTMqgjiuGu6S816XAIhANZZdEqf1u1KzSIEU9/PfLoL/3yMpDg0Sjev1FA57TFi"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.13_1576167857032_0.5309091439149494"},"_hasShrinkwrap":false},"1.13.0-beta.24":{"name":"kafkajs","version":"1.13.0-beta.24","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b13567d66da541b7049a9f4e0e981d15e28158bc","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...b13567d66da541b7049a9f4e0e981d15e28158bc"},"gitHead":"b13567d66da541b7049a9f4e0e981d15e28158bc","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.24","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-7IKQL50EFRTI7Jmp4dINIBgp191ePcrgLRZmCLi1MaLnxj8GUu3TQoNEGsMwAU2MVHRudyMclkN/vrqgpCcmCw==","shasum":"2a80383e21e7ca075c0bc8acd8463e775a6a381b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.24.tgz","fileCount":289,"unpackedSize":513641,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0SqiCRA9TVsSAnZWagAAjEUP+wddJbTEapB4uYmwdnVq\n/nFzhP+Fz9hjEXaNVBNHsw2ltHdxUsi/JP3c8s+PJBmKjPaQ/OlJ65J0Yu2n\nVIwdKlSZgvaQ0sSjtx+/CbJkNxOQOL/pQJABaw66DZ/LRkiMfJ+KxFt3oilf\nSty/t4NUUGkQqop5u7iqsDyefg5dH461Qw6KXWZdXzGw93MVsYytKAP+eMB1\n3tSFm6DvhSXw3HjxarikowP6DuXT5+gwT/z8IEZA6zeM3pZdDluirDcga3im\nHhaIZ5AemTqtbHc11E2do9gRqN1nf8JW4pbvKehkO50V6n3YPcI23pD1rb0/\nZqACCYcLyYui5n5UescJwSkqOYrQWIFDKMJvyA10rhDMgf2n0Dty8BbUq5G1\niyLQSL/DKHcFrMGw+/Ij06oDF6Ll1OGr6QhOQ1ej9bYW40/acvFXiW78anLG\n4288dJqX0QbDL3Fd2uRehFSMTs5JxK8CVKGycwlyO9YH1ZOV/5WciF2OmpqQ\n9vA+QN01qhxRXWy7lX/GNWr7kvX4d6rhDANs8mYdrMM4Uyxebc34UGmLXlKx\nIgMvumQw9aa+can++ZxrgXrEVeNpL85PuuFv/XUIsxU+c/Dtd2CjUBpKcHp8\n7tPSuysI6F7+lafbqbNoZv5GuU4gRrnBsZgkwYZ99EXSNYl/NoRLG8citxhv\neV3s\r\n=IA2d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKfs+ODFQVU13fZ7Y6qeba09YNw6truoybc4LRNLSoewIhAPnnyW+phpLxGE/oemdU5SiTfAP6RbMcZsQTXnOMzj9Q"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.24_1590766241800_0.7870715579934102"},"_hasShrinkwrap":false},"1.12.0-beta.12":{"name":"kafkajs","version":"1.12.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b15e0f15325553e60182ee733e196671e5b97b72","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...b15e0f15325553e60182ee733e196671e5b97b72"},"gitHead":"b15e0f15325553e60182ee733e196671e5b97b72","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.12","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-b/0IZ0VoN9GdA5NMw7jQuRfAXZgCHQvFMCi2UwjENOIlniOhsdi8lfloZ7rSiFTrSe36L7L2UR+aRgnmCq2Ojw==","shasum":"530a8d32cb7ed8d04f6a03ece091ad14bf1c081e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.12.tgz","fileCount":266,"unpackedSize":481143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8luWCRA9TVsSAnZWagAA6fsP/iWRUTPEzpN1t4ud5ZoJ\nQcArReeXfV2EiKpnOnD19UDe9+5xjvWoKdQcjxKFAo0QW/wzl/FXc88KAz9k\nEOApuggvXd7PumW4/jkMrew7g3lSVFzsjnrMl5FDEDeAMqrUe7swhAvkztEA\ncqU0Y1pct3p5zm1V0ZnGUAi6xs+FJKOpwE4VLNAOFNKUUfSTWoTQQIktH//h\n90XJZ6QkZ9Zh1v5T0G6n37TZDgjwMtN5d+yGp+hjgG6SSQfT1ZG9DI/aHIHH\nouuJUYq3RXDn/+DBvVw0EMFQ4NOvzIrb7W+dWlB8JfLqvj9h1R36l+c09+VH\n3IwjvtKVWSNFDRIpH0WOhm0OMpbfpaZjOpoq9lCwsia6qH2kUoDAsLcbu/5+\n9T/JhBcPUkDllv+52puj9NrcBMuPTW0ev20xCId2aw8Fhok4VOY8LuP4cIBH\nVlPBQOUndwfv8s2/fJxvpsSoKJqcrnG7XwH86uUOOK86cXSDxb+QljVzXGRP\n+IdyvdyYNSG2vRjYZalegJd3zMsPyXiPls2omkxtY45WJFatU/6GuKzOrV5t\nHtaUFQcjoKhzpaxuLRK3RvpQodMZbIxyje3Jc92fpz84nRUo2sHfoBD0ZoQ+\nNI49ELcd4r7uZBNgqPE16CSkvY2I0WsIULKIyTuM4OCu12F5wmS91Pnq/aY3\nGccB\r\n=r+T9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBR/9kNWTPxRRaaWgP8noyhX3keqTNeXSURbct7gyfLuAiEA8qOTjmfqqyKf5Ul2SwGsEe2lEmJIn0pwRl2gRfbBSUY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.12_1576164246131_0.05196680597030534"},"_hasShrinkwrap":false},"1.13.0-beta.25":{"name":"kafkajs","version":"1.13.0-beta.25","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ea873f654b1fb4a366e0ca5530dc36b4f902fc8c","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...ea873f654b1fb4a366e0ca5530dc36b4f902fc8c"},"gitHead":"ea873f654b1fb4a366e0ca5530dc36b4f902fc8c","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.25","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-IzEjxgQFdzeHVyYl88TqlvJpxRR3WqPynDzh7efIHHzj0qnFKleYIokPq48qWZ/YRZ0MdIfpBP2CSSu6MqW6oQ==","shasum":"15dab11df69d62def99fa602a2640dacac373bbb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.25.tgz","fileCount":289,"unpackedSize":513807,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe060kCRA9TVsSAnZWagAATTAP/11Q0PottMUZB+oV1Ww+\n9uIUTcAPOz7xUjxrxaN0oSFX/fNzwBw1B+H6DLmXueRVozJar53wnaADkrFN\n04Gm4dRu1A0NUlszSgEI7hOPFUMLyGwYy543QxMfKFVHNcUeWo/7XcW9PP5s\nXt9/QVTdgLgSHJZrRlDO69AhiZRH86XkxhT8Q1QcaGUrhZfietuibBpUqIoF\ny9Wb6b0AWkFQsQ1U9m4HFA2JNiJ24KTw58CeGHLzRQJP5bQHjKUMiGDcSI5S\nW9ryWzQMJWY+TsfzS4TO+Ll6+vHKPViqY9aiMArt1ZgO+vu1OESvP81oegxU\nOYdgtqcvlHUDSwrcy4t5ibyk7yJRBy/Hx0NUQ1PS2tAj7w0h1+vIiptu7XSO\nq9OkMUKbLVjKExH/LwzQIN57TTQItpDW94aDX+/fbwrY/jRIKHZbW//qwyFv\nOc1IQH5gtVD82r2qVoKtp70s9jNJeQHvtEIElGyGxlvfj4+uDDDcnDCMd2xu\n9Bt6/OWSiFFbtgwDPhqSYNdmepggAdFPUSxSNp6n30d2wp8xTkT+vLuH1D9x\nt0jWGbgBUXNbr+EaRLG0tgOPW8Ia8x2EaIU4VlfRX2GB7I/OdvRcpyb5AalF\nhL5UMJ/BbZaTOLJ4dBvMaQi3My7s7DxyNzqTPpPzNREqWFngkQq3TvJbc3jk\nT3Dt\r\n=DkPz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBcWcibvJ5gdDMWL3fG6fAfF9SNoRWsiqaj6fKm6H1N+AiASms4gUpMAol36espEmQ5v9frPHri0Zc0daIqU2hRfNA=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.25_1590930723875_0.9363913868556073"},"_hasShrinkwrap":false},"0.6.4":{"name":"kafkajs","version":"0.6.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"0f1910332ce9aaf7b3feefd8d3a1451f20904e98","_id":"kafkajs@0.6.4","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Y+L0yCHas/9zp9PsO+wOD4cQBgbIqyTsWLdpv1ahHx7NSuFCUlGvW5j4yWoxF3MMO++gLm7jc40kqTCd6CSXfg==","shasum":"fd1885bcaa2284a72bfffece4f5f20d80b16477d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCo3zdRAAywbrjJAQar/K7vVCTpjH8J6KsJ0VHNzR1OCwIhAI7HbzxGtHetniCyDHFzBtMfB2QnjeIst6Nlm815Iz9h"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.4.tgz_1513195619488_0.4574553892016411"},"directories":{}},"1.12.0-beta.15":{"name":"kafkajs","version":"1.12.0-beta.15","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7011d31c45ed3653ec581a030106b7fb1efa3cf1","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...7011d31c45ed3653ec581a030106b7fb1efa3cf1"},"gitHead":"7011d31c45ed3653ec581a030106b7fb1efa3cf1","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.15","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-wKJHAiZ1OOTvrDyFQKH9yAl3OK43Ic4Awa8r2ANdfXJQwDS+VpB8w2mpnCqDa+RVB5b8JlyDF1H6TZba/Qlr1g==","shasum":"9f80f4b297741fd299a593dc4670cf542c649332","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.15.tgz","fileCount":266,"unpackedSize":482611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeAI5SCRA9TVsSAnZWagAAm1QP/0lSeQQKY0QFkkO6ZaaG\nKp18xdmJfNVj/S1hzkqGrEz/dsQkVfhMKxPXAQvh01mD8YsyJQds6Us7Wea1\nh4loxaSp4Y4cL7YfGDqVNWCNnXymmNo5SiL0sZEm9dgKk02707ruX3kp9wLa\nSG3FuPceM210APGVX6A4YfVRJR3Jm6tyvUxqXiMEvVd7nbDpN4eg0E5Ra0Kp\nub36/7aTzTNeTU+fvvLv3tzLbmNdubfRiNejssFAcaAYeGU4a0t5+7JshCY0\n9s1W7psiIgJ22rLhny4G/jTuFvHH0zFRS35f3yRk8eqUMqgi+IEM0YhQkP5S\nh4rRj321H+Wc1wRRt+uWeAsdfqr78YWfgvJItwlwYO4DieO8C0uv9VWoMT5a\nQnPNtwSKSMwp84h8Pe5GBjuxH2qT0pstZls7MmM839iwAGk1KkncUDqCWyar\nMDDq+Ba67YzQYRDJSRxJ4yjGIVhIGQPHLBXgv5Gcazau6Kjfgt4ZdzZxwyao\nzA5yBAgcGScg7H9Fpt/gI46lRIz2Xy6iIyxaeJh4iYEwgwWZ0jWXUSXkR1QU\noziHsQKHq7sR+q6pSL7Jbz5g/g29zCgTcG+Gjx6HZCJ9KeUxENXaxSN1tZWn\n4r2Fx7mM7NRwYY6vdjwnL4Gk03VErI7/B0y2Iw//4uhxgx3F6m4YqRCUiAA3\nio8I\r\n=Brl+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDS2DAMcxllv6PUKwdYfL7SKQh1oyxTuJM4z3rpxcOf0AIgNDnqx+P2S962fpvtKO+ekAZ3A+SYCFY8d/+RW/Pnb+o="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.15_1577094738174_0.16619241466888535"},"_hasShrinkwrap":false},"1.13.0-beta.22":{"name":"kafkajs","version":"1.13.0-beta.22","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"414ecd21973c2b1dc853e3ab09132af729ee7516","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...414ecd21973c2b1dc853e3ab09132af729ee7516"},"gitHead":"414ecd21973c2b1dc853e3ab09132af729ee7516","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.22","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Y4HUnWudqwKYPQedBd2QLpGDmviWh4Yo9YEwJ43K7HSMTL2v61fmv2nIw5Oh70JHKLWbAW1ZUlHnSYBd+oE1NQ==","shasum":"864392be8823a2cb7d289a044b7af8b3c4e48cba","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.22.tgz","fileCount":289,"unpackedSize":513388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0SZECRA9TVsSAnZWagAA6/0QAJJXe6pdsbDjxiW9kjiv\ncEI+QlFWjkQD40KwGC9fPT/gt4TxcZcQJuIYgvbxPfFalsOQ/E9VMuZ6gzxz\nU5+Kg3+jeIPun9nU1FkaFhal4V+M7hFKKr9a9BN793XCxwakUJbSZom965MH\ntARiOjHP5YWrGq3cPOPaEYaU+4xa0gf72FpH9Ys/Pc6Y6ivOAxBlmWfWayVb\nctUkiJr323se/BngJCo57YQt112xAwj82zI+x+xbSthadxjGp3LevrDZK6If\nu1Mtz8CMkfYNMHYaFvDw14hGz+iZvLM6ZUz/vzRFDCKyruNYiTW69hPVplJr\nHXpHFi/pvmx/eytbpsJQx21iVBf6pOE/MHCkX+1AQ0cNxiq1Ys+UiWeX4yCw\nCf8LZyenXfaVSy7rQ9ugUVV5hoYcoUhWQuhsmrt3f5CmuS7IRqgtBXXsvsLn\nNmp7rR0ju/InGY/AU/C2v/0yxGlaTezrFxBajSpAyUqYCX0Okt9hmxzhTRQw\n+a3Mit6da9J0Z9ipU546b146Hc7n+s0KQYm7z+Wq7ZLBESCfVIXmAD3aeBMW\nSyXvRqRMcdAIvFqzbOVA07v+SC0YljZ4jMYzWWcdfR/Id7jJ+rZ5b7E9WrPA\nOrfdK2lXgSOFpdMFP10VARZ98CRcTOTopKoeVROTPxMOaYRPu+zH47kcqjYt\nnU/t\r\n=nLfF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB+HnP61RWSZcBE+D2HciumrEDpY4OKD434+LqwSFSuHAiEA0ZrcqNPVxBOAtepq4iawLTYVsBxwQUIhUjNFkC7O9b0="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.22_1590765123822_0.04844282289920265"},"_hasShrinkwrap":false},"0.6.5":{"name":"kafkajs","version":"0.6.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"76bca638368693ffde6caee0ad3d6242ce9cafbe","_id":"kafkajs@0.6.5","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Up34abhkCTvutsB84KRYgwxgYaV5QH3vHLiErZrbSG0Gc8p22LL31zn+wrTevQjSfxtW8GEdML6bv3yXFDy89g==","shasum":"ea9ae29277981a5641aee6ca5f63ac3006bdbfb3","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTQWNX/iV3YjO4hcKL88B+ufrzw3Ufrh7JQa7OnaH4NgIhANDchbRrMKVIWy+BZo7VgnMML55YAKLNHiVBAoilRw54"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.5.tgz_1513242175410_0.9821204016916454"},"directories":{}},"1.12.0-beta.14":{"name":"kafkajs","version":"1.12.0-beta.14","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"5910b1f3ce6cea7d73b0e266c48387fffb3ff355","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...5910b1f3ce6cea7d73b0e266c48387fffb3ff355"},"gitHead":"5910b1f3ce6cea7d73b0e266c48387fffb3ff355","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.14","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Lzph+z51lA29ULYAGOgNCnjfAhUufX4wla6O4DdgR1cBLGXrM2BnkiCQj71CEePS//6Q875Q6nQmd6QhoklO/w==","shasum":"a57120eb0dee243526fb7e3dd8da90ce45a370dd","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.14.tgz","fileCount":266,"unpackedSize":482367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/fRGCRA9TVsSAnZWagAAMF0P/275h/Vr5pAGceyxhFhf\nURKsGMOhY9C0WmGCGqDCA5zt85OFlUw3CdOz7LB2zI0KeOmM2UHTh2f22eye\nC9+U/xxGpLqjy/GHp2dGiIbLCFPZA+2OJGtdelLHpaJsqinYqiQ2imoKkZFr\nJbW5Ztk1C8hA8/iQx6JtUoTyNeiDYsLPy/S/DrJSi6XbaCtU7+mCRCtkkvUJ\nH0/4z2FImn8dRQuGviFUVBTd36xmXXPx3RWVXAwp5ejGVEN6PlrprICdZlI6\nW2HICSJ6KPbE98JhqtRmFgGwOIe9HiT8l9krUbF/pQOaoPdmuroHOWFlyzaH\nVNouhcjlL82eu+SEDA0sLsh9jcY0BWZ7c40q5eQnazpm8HvFhmHX6nr+nqlK\njV9KZST4yZdDnxAwVaYE/xptfg9GFJLl8L8wXe0hlGOtntuXp7u37/Ftv5Ba\n2/ic/mq4ipnP3MGuKgBd+eREToxKlyqaTq0gjdbfmOhuJXhuFqCHwEAyeAiF\nokO7hSnu46/tiy42wpDfcFSPSJIHlmPpypDDaBQAWZ3wDt/6G+RWHA1vtcJJ\nctMzHP0f7kP7iV5Zqd5HfRgPY4fCA8oU8erZFc12PmWUz6sD4fjPxBDmJ4RT\nE98ymv++SIsFzCLvjHyJ4yIuiBeA7UK1E/BueGSglQYSzbQ3LHPr0/I05XOh\nAxIm\r\n=nDIa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDM6ZkG6UGnO43+Mi1dqUsXPCuH4McyDqxVF5pae+F+ngIhAIet6FqbC7x7CZjWvCMoJIkAhoB+mG39vDFLhMvGTBEr"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.14_1576924230104_0.30461333932698653"},"_hasShrinkwrap":false},"1.13.0-beta.23":{"name":"kafkajs","version":"1.13.0-beta.23","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ee93cf42864f22483c5918181bf035e65dd7818b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...ee93cf42864f22483c5918181bf035e65dd7818b"},"gitHead":"ee93cf42864f22483c5918181bf035e65dd7818b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.23","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ILxB5M8ma01UUVjWtTX3/ImDggwj+efpZEDXKZvuorB2GhoKbmmQ5h+SOVaSToUrVjVw20JKEBRmv3eK7X+djQ==","shasum":"272a965f11891001fd0ab6b1adefc98cc9def217","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.23.tgz","fileCount":289,"unpackedSize":513379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0Se/CRA9TVsSAnZWagAAMLwP/3tljETmFhkfrmAAGA+a\n7l0F3+bQpN7h8AyYiIGZxH/HzWxPMRCm/b9LCLr3mb9aqjo8AnUMQNQul49/\njzibDQm9NXJ9pFbqCuHtAXRa2K+eyJUsN5FUNFWa7n7jSiQiqEez4MKwCtKP\nK1Cy0P/avvVEzuLRYgoB8TOGUp5ImjVrQYrXuKpxsjol8ufDYkw6SnhlNB6g\nSlG/mmRaRFj8IMGJzb3T4zHTsp4NC6yqyH2ErqvQkDrrtmzxqZ9qcvRou2FJ\n6cv+e6IBpeuJiHORTxvaUMBsHAG8cHxMbx0X0gLo98IjE/3D99f4D1Erf/xd\nsNHbQLQQnesq0pdTT0LxZvUJkFr13jXTKb6cMgmmrkiI0RJkT2+opfS76/nA\nVS40wz8+Sn2zEQfFwIhBn/9zAD22fYKF8e9nceTy72Cy+RQqMpxMjX22pzv1\nuTfdLVt9HbFrqN49oHIs68AXEXLvjbhjWImUrpaviSdlq9w7dAYV4Ueb5AoR\npoJOZ3DBsc2g1iv6p/yXyibGWjExraRxx+TlKgPSErvxGoDWee/ktNtVzjgR\ndZl0nf1qhOD6yXfovxHwCUgy3Zf/229KMMq/3vsj6uSLgHWy5bf6FFH9lTGf\n6aochrQta0l8wxJqMn8qDVGPbqnAs9TRHPYQZkDkoaAOKMu4uKb9iHR51hTy\n7U20\r\n=KyxG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHr/Otl+26DfsTZgrqrwnqRnHbOl25POCIokk9I4RRd5AiEA6xeERCz2Dj9Xm+0DHH7RucaTyk2s4gwHaTN/nU6+vwE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.23_1590765502821_0.5494104210451121"},"_hasShrinkwrap":false},"0.6.2":{"name":"kafkajs","version":"0.6.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"d1024d546e053e1719090e1ea9ef6d81554e94c3","_id":"kafkajs@0.6.2","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ltfeLb1jpLxGWvTvYGevHS+K/yGpWOlPwW93fhP6Ap6yyoIEM0AGOMU8CdyaYS8Y/iCq7Od6LUb3WXuZ8o4PdA==","shasum":"6dcfce5fdb32d1b948bc2684b5af3449d1d03427","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSIPhQfv68uxzPr/Wc3RvummNI8hrxjy6HYcWwhunEoQIgAmvNjqlaOFwP5W9M4Ptlf0XNajkz1s31FRs9l07RBmw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.2.tgz_1512986147374_0.09172930847853422"},"directories":{}},"1.12.0-beta.17":{"name":"kafkajs","version":"1.12.0-beta.17","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fe7c0030620ffdc33e4141b9dd9dbff97d500f20","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...fe7c0030620ffdc33e4141b9dd9dbff97d500f20"},"gitHead":"fe7c0030620ffdc33e4141b9dd9dbff97d500f20","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.17","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-tQzja9Fr1gv15vWGQXNrMHD2JfvVVD6pCFPFBChgcUyxn8ZoKQN7ulW477DzKybVpn9n+DWlzQhzObNjKbxdyA==","shasum":"b7a5590fbbfb3772ca8c16f7dc93b28c16c72516","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.17.tgz","fileCount":266,"unpackedSize":482615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeASZoCRA9TVsSAnZWagAAlvAP/0IS75cpIPsoGXDIdr0i\nreG0328UJS7sX+jyqjov0PEOdkk5gxyeacFiCf32CAgH5CL5u1nkPFRicdjc\nsX2L1IjXeEK1Mged3SyNe70LHiMvyq4soTsppPZlVDODNdQhn3rpG7GPFvRC\nKBB9W4mRQyEbXnVTFtdYdVSeyengUH/XXEKHzRDvTkW09KBY3PB3NZXDk+vE\n2rUSIpgt7DxeHAROaGtN3XztUajYiuLtFGpO6aAbNLdZuigoSYeOGJUBmsTo\n28tA6+8c/CawPKd1keuxxgnqwEPCnVd6E7N7x6+d70DxMOy5ifkFRr/OCcTX\n5xDWzZcGaapL/G8aaklhlDd1hbAX21xgDUERiHxtBQhfsX/69Odj+yCfJ6rK\nvxNRlr9kovGQP2LoKx+wc+zJUgQD5H8Pd4izxHPPWR8pi72/PzBoaHVGEwsI\ntS1ri+9uvx8IVaJEt4FT7ddDuPVDNsznRfptUAtDnIQAjuN6kxI8AosWxgBw\n7ZyYjac6ik/Z97VYm+TN9Pg8KZHgFxKg6TMhZ1gMQz1pje1v6LNU592KfaMc\nVck/MISWnxR5t6Up+TOwPx7UKBF0bu5Kh0rBMc7bq89DkZS88FKntDzAV8HU\nGm5aVzMMFHP4i0hrovkLmQaJxIMlbxkabAz1lbN/WDdVMYMa/bAn61CMVlFT\n795E\r\n=phnB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdpMeiz5ZOsgL6u/bd8vZf4M6kzLyT4QKdI0yqE31EFQIhALyWgvrWiwKnaMVLR7TIKcUEvLqJF3Ef7hOffET/FrVS"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.17_1577133671910_0.9028815864769479"},"_hasShrinkwrap":false},"1.13.0-beta.20":{"name":"kafkajs","version":"1.13.0-beta.20","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7eaa3539c0135f4ced9da33a3a457acab147453f","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...7eaa3539c0135f4ced9da33a3a457acab147453f"},"gitHead":"7eaa3539c0135f4ced9da33a3a457acab147453f","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.20","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-FRENJZLSmaGfxeRQee6/BQ2JekLLCjC9iNLdGByk0qFd4fQsKNORJ/1A8iM2pCeg6xNZfN3hpgxOVLnbHRdjXw==","shasum":"7f3216a994ad8e90e2660260782592071dbf9b0f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.20.tgz","fileCount":289,"unpackedSize":513351,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetQ40CRA9TVsSAnZWagAAVSgP/RMJXH1tPfk3WKU+If06\nCuh52SNIxPousHgwcfhvHB5CaXCsWIP2eCLL2DyjaV69mCY5vsLcc7gUxBMD\nsQYrL6lmVgvNTwpqlqm0h+A1vE6kIbHGjHgBZ3/t3qaEuAH9nJeNadQ79Zi6\nxYBao24G7dMuv7k65FggeGSrQ/q6DZqW8FBE6htamyhFkezS2SOscl0kLdy/\nhnEkSftX6syoBGTyLUSxFtEFHvDrfEqfZSWIWl6nza3XYHaNWUJEcO9eIh77\nhtnkkKW1eaaPqSP8ZiM2nkWLRBdkMZaeD+kNv5p8KfJAPxuo+PofmFULb+BC\nn3ZJs+W7pKgbqMuTK+V6yyFpj5vuIsLYN6zQSPnJ6j32zOjpV8co/vH1471w\nZjo9n7ET2YZEyTkX2MV7Vsn+SGDHwg58rWSm7Us9O5epwb82lUMqZOf+SUXR\nnNm7JCKKk9yuzpnba10TSKsJx8CufHsagWDFtG2Y7vqI0R3lzo+TQxp0vF0o\nFyWwciGI6x+ULO50yiv5aT+jb28/aEfBvQYdbAgTA3B4zLOdbhVYWI59IAuX\nrJO0+zLJdDrcHI6c34HfIYZlYTWDUxSlD4D2PlmT0Mky5Y5nLGOw9cVUXPrK\nOwkN27d6bcdIDl1ZEamtZ44bVHBV3q4LyhpA3/tw11oSqilns/Z0M065Ymew\nW0jl\r\n=RYf2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPqUGMXZZNYdYaXAYw52lKb/UCZCQ8xDTu0vabgX2QJgIhAOzqJvTe/KhaqcJ/Iyp3ZS6SOgn3mFDmDBa633uNBMS6"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.20_1588923955543_0.8375647340869994"},"_hasShrinkwrap":false},"0.6.3":{"name":"kafkajs","version":"0.6.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"da6abccbdac50b13986586d7a0225a72a58a8a3a","_id":"kafkajs@0.6.3","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-jNt20pjg3NfYl8SYyJ4FAj02a3+Qdq3eOnTipcSDeB2wLm1ZqCub8C95EoCJpLd1KYTozNInvstHABUKDtoQEA==","shasum":"1358a255a05586d68adf18f893715c9eb503961d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiv9QRpUVU2iIG58ZRarp3teGfoClVauAs7hzFNQ/4ZgIgLZXSwyHoIN/3PB4eato4RW0615NLJIj9WzascsC9Oxw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.3.tgz_1513021926756_0.1021491342689842"},"directories":{}},"1.12.0-beta.16":{"name":"kafkajs","version":"1.12.0-beta.16","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fe7c0030620ffdc33e4141b9dd9dbff97d500f20","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...fe7c0030620ffdc33e4141b9dd9dbff97d500f20"},"gitHead":"fe7c0030620ffdc33e4141b9dd9dbff97d500f20","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.16","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-syoCN0TiYcPNG6MaNyRToyTjqQg6CD7t49jGz7BwFcEDTcdm9YMK6tlqmqsdCzX0KU2iYv16BNRd7kOC5YTHBA==","shasum":"22ff5f6cd48fdad2c96271d4115c477286506403","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.16.tgz","fileCount":266,"unpackedSize":482615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeASXOCRA9TVsSAnZWagAA85EP/0MyWzgMHWBvMbvd5R2O\npT/J5/6SrUIJA+9psvHatgSz9GKiJ0LbIOB3IBbKZ28UdvA6Beh4qeIn/0Hp\nSyZFuHB5hclLK+i/4eQ81CHQFxvUn7F9Vg5D17WiDXcH4kYDGr0tPxT73gzl\nTVRYJhhjSrX09biaUWeC1CNi/gblUblCUr6GelRg+fnu2S0HBXyJmAB7h9sW\nsvoSK7BPD/BbICK/5NOVEbXrFbOicMBLQwYbPonimhHRZxcMiWkRMtzfLnpv\nJP/PIPMItz/j9Ny8oYUFFIQvRgR1Hi//y6rA1lkc/BYi12TSz9Qkmn2C4hVF\n5U9w9ubjFD791JwJpOOhPalN/nIAxGB4fK2e3OaqDkG21iXL09hRjIY0jCjx\ngc160GZUS6RBPy8Daxq8qogPus4+fASxK1yERn87oFCp04mTkT4nHIi4OsLl\nukl5a8T5xbIrA07Jd3CbxCwodanRkm1uqcS1+2S2/Sssj8RHzD3ttTeIiogW\nWfhxEoNhvP1smDIKQs3hZSTcTovOD2nzwiP8h79NiYBOsRJq2BzNHhQEFVRe\nFQjZH/RV0004peotgzilhYb2iLiF4EK8vbytPCLhH/Vhp9xGY+chP2R4D+lJ\n9Ia99DavnPI6/9jWAeIftXAfVVBbnMqC+Z7kMNjemDgJAgDmy2lK9fg4dQFN\n+oXO\r\n=vG8b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtol/JiMDKOR8EUrLkW+5S+bHqCXXIX0G4sDxe0vIjNAIhALhY8dpFZzYddL5dyN392p0vxMzWQ8w2EpeT/SUcy3eJ"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.16_1577133518051_0.9824887110280067"},"_hasShrinkwrap":false},"1.13.0-beta.21":{"name":"kafkajs","version":"1.13.0-beta.21","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c51dda6fd3d1626535cd7a44e763426e317f2d3a","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c51dda6fd3d1626535cd7a44e763426e317f2d3a"},"gitHead":"c51dda6fd3d1626535cd7a44e763426e317f2d3a","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.21","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-8e+MC8PIXc6OnV45F5QlymJLf7EuRosMH/lPanO1h0BtTcl71Zxgyz/EfFFxt7/NrGgyJClowzF30blaHF6fGA==","shasum":"8dc739d25d4677d128826f994684ff4e6ab503b7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.21.tgz","fileCount":289,"unpackedSize":513354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeu5ajCRA9TVsSAnZWagAA5kgQAIcl1EbUaDo5B0qH8WRT\n2BfdLAxgGBvmvGX4NyzcPHJiI89/fXoFwVGOXm07phRk+NiVuQ5fLoQIGkgd\nNL6iFEqFslw0jdgZxx4VWoZ88W4UKuK+TCsa4YyNlxBwUZ7TQvN7m2z3GcsK\nfCfP72mV2ke/QohGZlL2e1vSSP+Ydc0LfzLxq9aqaWJkWwvt4q4Y8QRLpYIn\nOauiyAuv4BZvk/cyUJCpEmV0W6u8in3uU64U97pVDM0eyYUGnP9SVkjzuns7\nb2b19ZNwaBODtuzMlweEijXFa7P5vtcIqlBowX9Ji8nkIuM2hRlMMthu8DGM\nclQPLsNEif5mF0xFBa6UGu0YjMFwjOK5q4wSyueL+kSZaSe7J7OFbLNjN8US\nkNGBk4IhuoLAuazkxQQzufQdxNMeKpAE+HPjXW7HVSfWCQ1Zfi3zo3WMeuJP\n5F+suxTh+k56kUwSY85kyiLS1wVV1NNpp7xTQdHknwV/7MC+zlPPrkG12D8i\n9Vb+c55xPIL3UZAb11QOffAJ/44xHQxcy4Qcag8RejF6AAZKk59Ipu8CzD92\nPw/0klKJ+8sTlVvedNDz25GvPR0d1/XEHbw8dDebkp3NKSdsBZo+2V5z7yUn\nLPLmyT0n7wPmIjNTlDmfOcEbS+dQzyT5yZPXufsf9G+Mbm4+vhAkk6voU4Zf\nxcjt\r\n=ubvi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyMjDujzapxLhhzhcG2l017X0pdkvTa4TanYRtqT+LGAIgItUBXjWprFRuYeg9APz/ZNZzs3nVmpNXQPfC2RetVC8="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.21_1589352099083_0.6339265207155191"},"_hasShrinkwrap":false},"1.4.7":{"name":"kafkajs","version":"1.4.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"11a8117ec9be420b72825756e908bf7aa6c0ef2a","_id":"kafkajs@1.4.7","_npmVersion":"6.4.1","_nodeVersion":"8.15.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-wUGrCyevBOfa8NtSYsLhk8a94ifQmyK3gmNNYo9hViA3CiyqMCl79azDwyBPEWv02GsBZ4HYaD+tP76zypvllA==","shasum":"05cf4f6c29fa2dd1d2d40a27eb00999aa25c955a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.7.tgz","fileCount":181,"unpackedSize":486186,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQIjTCRA9TVsSAnZWagAATAoP/R2KpcNyGSIHniGhwCoc\nenfhQ/KUnr2cCrSKUpHmjJm8xJTfsDqB9E/4IO8cxJre1fOywUvi3TUb8YVL\nc0VNmdBQ/irWWHxgLRwof8/RAJbOce4WD8IqtY+KgVbj1NThx2Fxwwp8YQCF\nGIlMbLHzO2G5b0jDPfXO4Zlht9UvRyRcwiBnGlHq9QEgIrn4wwdvyzI/oTS7\nlNl8Xe4GEUCVNW5Kzn2JFu0t/YOlgYLAk3tMhwjEZiS1TMCDRCIXzbInNZJt\n4khdAvkQ58qahy5zyQ+d1yvOBmigliFHL41ViIg+W91rfaOr7ksCIbhDqAV9\nYdNC+QCYj6utRkOiaBEdl0JIi3kiF7YyZCpIABt7gEL98XUtmQ7eOTnqABv/\nwgQ9rrmAn4ml74Jc1sDSJoBkFYnaEeaA/Z7C5dyMhmrnaICw4RJ3gNzouo9G\nC/D42gTsJP2DNYDISg8YpWsmNgaXm47mXEsxsexBvwNg6bkDK+tps6RWnT6+\nPGlZBklDCc7Ci4WHCUEJUetTd4lhvl7rfd4VuKE1i+azp9NQ5w5QTUKzzY19\nP3yhDCp9++rYHBceqwXVmSLA+Bl9VSqEWBolsAcA5RpvzYTgkVTUlErMiR4L\nI3o4+6mQA6zeLKIAhff6xT35dBv8Bol5FGLO1XcVXFi8ntB6V1JHTqQQEyn0\nlbm9\r\n=DXtX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFzzH/58E3YH8WQne2hYn6WVrZMhmDAP9JfIGFPxd1CtAiApKj1Ckl0A5DoJiLGgtZU5gKLlbQhn6p/RfjhRg8UFug=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.7_1547733202768_0.31596148464730867"},"_hasShrinkwrap":false},"1.12.0-beta.19":{"name":"kafkajs","version":"1.12.0-beta.19","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1904481eefe53ce169b38420db59cc68ec819cf7","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...1904481eefe53ce169b38420db59cc68ec819cf7"},"gitHead":"1904481eefe53ce169b38420db59cc68ec819cf7","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.19","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-yEnYMEFfLp7A7nnGf56xC67B8Z1Dpf9GOKqRGCqcCsLrT4LJdP7yP+Vun4qI9383R/BYId3fOeJBK8njnrhRIg==","shasum":"581c2e8af8250376a0234551555df98d7e5225c2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.19.tgz","fileCount":266,"unpackedSize":483000,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFgdOCRA9TVsSAnZWagAAxlsP/i+1Ab5UBN4SHtrf4PAT\nX3zS1Vaa5hMPq6rVPjAtU08Cxx5fUHcACebcAcimNi3zxNf45gEtQPz+yTjQ\njsqXkUISGdqGunXvt3TT0LAz7rTdB85G8C0OAEzcJq1M8SEXSHuuJc6GxGJL\n+pdvEM84rE7flZ7uxEIB53lkhXlqmO/twXSBGK7+eGRa+6qul5h8h/Ic0EAu\nh88JV9UTme6Sppcu0IvWF168N3LRy4ZI0NToxVhSa8BoChFIKIYNRjgltdiL\nbtEw8mSxgdmcpywitlm4O4Ahh9T+a7M8a3AQNeX42+arsGYiTZDkVjjs/Qes\n5OIPcqa59LJcD4UO2/UF7Nw4r/Q4rRevrZoAqUugsr7e6Hfinflss8ai08DI\n+H05Z1qOa1kcJE3y8GR25CMvZTcri8i5fWlZDB+qRb69RV0h6IJ1gY7lSEp/\nZ3FwBmu1QURpDCTddqjocfy87AYqW8zgRgWeBnRiyABgJNv8rtuqv7b3hQEz\nL5ITP1jplH+wNUH06uN/03Og/E1il8UifKROvY7zLMX3BXE9B2EBZbS49n9U\nSk0zgkYWKS2r4snfOZ1NsYx2ixTFIFFAIQ/H/YRX79DnFPrQD+9mZT9DCs0I\n0FWs8PuSJzNFC1oR2zzA9X+4xN1Eb0MXDeWuqmN96eywhRTbNETsnuam6tY5\n359J\r\n=zc/G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1O8boWrd0cvZVpH8+nCaignA/oRknnonQTJV/OEARJgIgVWQul8c9f/fVIJKryFUGnUKrx73hJ6MJ6ibEm1hKZAE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.19_1578501966027_0.9435640972242694"},"_hasShrinkwrap":false},"1.4.8":{"name":"kafkajs","version":"1.4.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"b0a77d712b9aac381838efecc023e525a0521ee2","_id":"kafkajs@1.4.8","_npmVersion":"6.4.1","_nodeVersion":"8.15.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-KJx4AiQmqvYOb0T7tsJLnzA3qu0AwGmF1app88/kOoNbGK0OeXeHTPGGJt+t6gx/nANk6+9HzedKgcbtysGqFA==","shasum":"a7e3b482513636548584eeb5e7f8a2047c673d50","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.8.tgz","fileCount":181,"unpackedSize":507493,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcan9aCRA9TVsSAnZWagAAeDIP/j33k0FuK/Y/CHrEnBxf\ntOScIhPOtpIjd3E+gKeShwFe/TG+80Ln4h7Z0uIqMKdMA5NDz4qfCWG6pZ61\nsXgCZ/x/tbIpXVszponHNpsS5ywBEzooZIbTyPJEJTdB8uRSR3tbg+mVCmIn\ncEm9mTU/TBZFjugrL8jFCwi11MFezCAWOM54HL1oWRpAyipXbGrPnmkL5RLe\nPjDKVZZY828h+s5ZlQGJuEdeOtdoaJvMW3qkKODb9/D4fkkV+JSiXPwYgyJn\nGy6Ce+LBVfu6hgZGPns5jPjf/yWrLT4RggH70KrbJadyOboS8nX5aosW0THq\nM9qye2r0R8PocL8ZSsFJOs7G8nbgq/PnUYSuU3P6NV9b5iHKw1tXoABQLRh5\n4D+/iHa42geXyCbeL8nnb2Xa9Sy1URf0gfW2GEA8/KqaktBS3yloBnQJtynr\nda9TmiyDwdO7Y0dtfuQpwy1HPtpTImeRJGvM1BtTsoRseHQqnnFsniWxyTeb\nG3MLj2mZZEBmvoSi7jhSRTAMlAhqfK/HcwIU0Q+nztPyS8GHCmzgmz/KUrZv\nmxDOV1yNmP5RUlu9av56QJ44Kh5nIbajduqDjUXdfdnbEmQhP02wYIqXP0U0\n6GAcz6lGlBygkkNotDjKF/yemoIzBnBVx+BYFHD9kkgqUGJBFVYus0u8SB48\nO5M5\r\n=Xc7t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFeMgPIs6La13kmY1cRtnoZxr4Dmbi0yLIWXJBKmQdWFAiAtA5ts3xHxf5fOqY1QnB01iJO+qaUpgU4VJGySafhoLg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.8_1550483289278_0.613250230906317"},"_hasShrinkwrap":false},"1.12.0-beta.18":{"name":"kafkajs","version":"1.12.0-beta.18","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"687eb9a2a839b0547fc878cc09c9f298a513f68c","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...687eb9a2a839b0547fc878cc09c9f298a513f68c"},"gitHead":"687eb9a2a839b0547fc878cc09c9f298a513f68c","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.18","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Mv+5NiYEqr0fxxh7fj5OKon2Wq/zmkiLYI3L3j96ly23fjZAnPITEeanCs8dC53Zjp+tPr6/begfT7bLaAKkRQ==","shasum":"504735e968a4c520f921f3a4adbfeb79a8f0cb8b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.18.tgz","fileCount":266,"unpackedSize":482891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFdexCRA9TVsSAnZWagAArTkP/0XwjyIceBwOiUARnttD\ndRZUVa9s5oZ+l9CtjRPhUsOg5ZwjpCPWrJ8HGkW28dI9ELjX+TsX+YQfZ9xY\nL+06hEV+vbMAeAYAX4YfBnBRjsGX5tiEs5y1n9kCfiJU6SnV980d5MMUXygo\n+q6VzzE8eqYuMHMyHIA7T3JFz8w1nvEiuR6biQZWMxLgpevENjhArbE6mm4C\n8yV1y5I2DLMRwgCkoqtfQu7JiDxAnOyHCGytI2F6wT3JdR9zc93nRtxiV8jX\n5F5ILm0JniPtZt/VQFHDIIH43ZGYuCdHb5k5nIlAS7a1oaM/9/skRfYP84wF\n/WL3Pszwk+FUVDm/jNwZ0LWUWey8TCaIthlnHKB82wSZWWvipVsELzEfP0eM\nlgwDrzIrutzP27o+ukNuv9xcjOHfp4A2FXvZQDI12bZglXTfUOYjAlbXGX4A\nxIZu0ApFgCNYWwJ9GJ+9MiGlhVqQQ0+FcYweuVmlHvZE6Qe0pIYjDi5bR6KW\nAK8m8dtM58D+/OSOkd9SkCfkmbU+cRb83zj2VtBj/VtT3g2w0emL759aHC5c\n+ef3x7rbzWXvcAdgr3Rd7AYxbPRYFmFDTsguV2updsDXuH77+J/6EoBz3jLR\nb3O8ELKw4Vlw3BjN/bJE5+amVLImbZpaOP915/JX/p4ILP85lEEtVRO1eaDW\nuVXX\r\n=GT4/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFHkRzOEX0p6SOYXwS5ajh2s/df3rmAW7moAJ5mLBmQFAiEA/4kotlxldj/UKzRUeKVhUdi6sRwaJiXDUHuk3LTvo+8="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.18_1578489776920_0.5174990776631831"},"_hasShrinkwrap":false},"1.13.0-beta.28":{"name":"kafkajs","version":"1.13.0-beta.28","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"943f2b0043044a8ca8c01891592f29011d0f9a55","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...943f2b0043044a8ca8c01891592f29011d0f9a55"},"gitHead":"943f2b0043044a8ca8c01891592f29011d0f9a55","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.28","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-lfHqZslY1hIa3n1IgjkBQqsvp+rK5yNp8nhy2NtPD0a0bIPA3eF5h17ylKtOzs+P7HXKGeBk5ZXIyflN8+tpRg==","shasum":"b59a12d734a54d220e09dff6178b0582b0692583","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.28.tgz","fileCount":289,"unpackedSize":513809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1gx1CRA9TVsSAnZWagAAEXcP/Ry7J80Hh4aWsVyt/a6Z\nBGyucn/eiL8IzWFPrIVh7TNIBEOmAY7kJk0DlHqJWwiylpA+g82l3fTVT64E\nM6N9tv5ggDMZf10LPjjVIUF8TfrW65m7EglDSj9nyUE+QiN04PaLvcQedYKj\nowta+Q7YY5+vQvdCyo1RSFc+xbIb7yswHkn3okS/F+rnx0yl1/FlRbY/tptx\nCk/+gfgwgzkDI6JMUnYTcVGoHg5qm9grKZilV7vQl5ZDf9mPsKJ+GGvEEzsE\nKkpqmMdhlDjiwdlkXRk1oKyWja+weh9fx2tJs2uWNbMZj1GhC/9zgkWHcjB3\nclTQBXZZDchyZeyb3thrBODer0yZor0rYClep7ha8HYsfaAtIjV76uehR0kW\nHf9zyhJwNnvPFZHtCPYT8ocZAN9N0xprDIYH6CTreeyCA6APIip3mPGUGL9T\nKwXLc0XrrlteeUbaEDIMXTnxs0yQO12tE70X3K1HtoKg2thYAJMuULa/1Y6o\nlLefC/G9uhk2S6KgriyOXyO9SJIJwZCzN7Ahuz7gvEloH//Dhw4W1TnhhaGu\nojni/DZq9X7ShuhtMd8tQRURjUWquaeZ5tbRhGu1D/V/l4aladVvklPw2dn2\nxZYqPgtW/J2/iUOjNR5ab4wa9wW8Vl2Va6EWZMGbO9V9Viy4uRDPqsmGOKBS\ncQw0\r\n=s/sW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHH+xVj2WlQ2/X2iZH+Vz5/2bxCTK/J/p+pypfRtmC8wIhAPFseHnMuAQWTDqGso4YiWd9lMrrF+lfrBXSovywe5d6"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.28_1591086197254_0.7918297061621355"},"_hasShrinkwrap":false},"1.13.0-beta.29":{"name":"kafkajs","version":"1.13.0-beta.29","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d26b941c1240b237b71f3035f46c6d1eb5c16a39","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...d26b941c1240b237b71f3035f46c6d1eb5c16a39"},"gitHead":"d26b941c1240b237b71f3035f46c6d1eb5c16a39","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.29","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ylvGmssojRtNHYdr6r0S9T/JsP7ZIkeefsxs9Bh6kd0Fy01wkxPkOmBer6U9Tbq3XcdwiO9qRhw5IWv2yA7PVw==","shasum":"4be5eaa82634e1aed514b754f3867c1af33c32bc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.29.tgz","fileCount":289,"unpackedSize":515795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3fVBCRA9TVsSAnZWagAAsbcP/1UoWDLp9kkp9pKWTKFp\nHxOYp2iRbtoyol8PsxX1JBLVR5Dmu9utOFye9UjYnKsWTF6D9fZSK2Lm1k5a\nhF+pmn8F9cErKH5NmEaH251p7I6Y5zU1qNSPN0D+xtjFeh9SZnRAkxZKPBhK\niZ0WfNy8csb8MUuWLePaNnWkBxvw8gH8ZECyf6tx0MwYatY10tWyRQRG6hZk\nXJgbmV74dNwY+mS8hIoSu6/maqFi4ZU+nS2UgbIYFt4Pt7zxPyjk1l/1wAYc\nQLPgKQ1o/WVP4eOecUS2AazxiYm4GRV1aNf0euyjGZ3NkJihGAVcklcFU2rG\niVmq2o/VnJvE2KQ+0dEruimMts1uIzjXSPfiOvU3zs8Zg/DKM30sGq9Ihjoq\nvi5B9Uyhw0smnQ9nIZMtW1p04pWUaxtllrTNQijwL399BQ49tAm5syGXyGTL\nYuzbC29HiGyazW7iW4X6H99+TQBaA10tn1GnTrghcHTEBWoDHNMJtzG3crOQ\nIYQsQq0gsQZwYEv41UgKxZwOVNrUZ04a5xASy7iCMUm6Ne0n1NUqXscg1W5A\na5H+csQz+6wphhLMIULUpMkvN59hkHmYWeq4PpTG8Y8+24sRrbtVYz9U+X8U\nb7b3suP0CamkolyO+0wsW7mdeykfQym4TR/k25/Y8wCi3XseNbC68nQ0xJIg\nYmXx\r\n=d00n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDMleuf3MgCh46tAACP0T2mL50kxBvOnqzkI1Q+HuqyAIhAN3RtA8hmo28jDYvvGXiMzR4Y315bg1Cb6sMfsZ87Dr2"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.29_1591604544470_0.7553846636945891"},"_hasShrinkwrap":false},"1.11.0-beta.1":{"name":"kafkajs","version":"1.11.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"263ae478bc9bb91b904c3144aa16003dc0720cdd","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...263ae478bc9bb91b904c3144aa16003dc0720cdd"},"gitHead":"263ae478bc9bb91b904c3144aa16003dc0720cdd","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.1","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-EDem+xvYhTDA9N5UBByI2ujqygzyRbMhEThL+XT5t5eT6FdnIoixHLyOonYSVoTo29k6774ZFA/wXT15ugtfbA==","shasum":"4c435f0313babb65cde60f378e1df742081783dd","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.1.tgz","fileCount":264,"unpackedSize":470906,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTA2GCRA9TVsSAnZWagAAi0YP/ikuhL2WyCYhcZJeuv6K\nf78ztwSTl2PDc2IU//Uay/cYCuo5b01QSrXhHMgGYscCJmor/+8qdDc6hEjP\nSyKvISypTeTPmnzTl20S6oPjSJ4RRisoVzuDjEs1BTQPCMgnu8tCJvr7Rn2n\n9e1Xl4efgVCk9BkK0Dgrqu0532TLzmFY0zHXuJHKKv1Wtw+B4ZHJ/RcaE6Op\nTfZnrwLt0BABzfL6aczJaLrNriOa9dFx9swxbPDTIWV7d7OsIGmUMiUnWBfS\nq6x7pdeA+NAzhzn7FfjCaviic4+DSYMitjfshw3IU/x4p3jSFOE32edDRuU3\nAt7f+Q2b93VPpMQzBpmLNSsw0CkS7CY2Mw2PDXlK7qvgCN9B9dRP+jPFLo3P\nHePtkxKcEFAPU6G87FUley+PUIGPAXrjUOI33zf+XEKayQeWDXYfpRjpciRt\naPW9Grkir/JC15cH/sVAAkNrHDM/EgG6z7L3IUN1f6kRSJvOa4PC/ukeZ52d\nSaiB9VMAO/dv/EIsMC01ZNGckP/IcJudn/lxT22VlLd8plv+mtxxk7mNh41m\nIQcF4PwqtD3GQnUjlmy32SNI6/LPqgsvgp+Abv4UYe1ukM1scn6wG6doJ+JD\nkCu+7P5ps/4WGSYO/0h4tnuP8aauA4THqmfR9jUH/3iXQqyF4rtQyGqbEx2R\nPdlu\r\n=SPUL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwbEyHg+vK4Of4Tq5NfpqDnsYH3ion2nVuc5DxRPRpVgIhAIEB1k380ud/N5qkH7hVUX9ORpuBbdtFJ2G+X7GLxI6T"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.1_1565265285931_0.8060272530418189"},"_hasShrinkwrap":false},"1.11.0-beta.0":{"name":"kafkajs","version":"1.11.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"da9dc091b0af0506cedbad1403403d021d246de8","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...da9dc091b0af0506cedbad1403403d021d246de8"},"gitHead":"da9dc091b0af0506cedbad1403403d021d246de8","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-KJ8FLZqKDMt8gSzn8mTpNOhb2tGHZm/TMNxdOmB0iqLEpxHWH8zK7uhO44d7+y4ii8+A+fYiaToECsCiC9/NAA==","shasum":"e5cd34068dfe26289e962ea525eb215570f864c0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.0.tgz","fileCount":264,"unpackedSize":470372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdS+dQCRA9TVsSAnZWagAAePcP/11Elw8Fd9R5ug3t+a6v\nehE55AxwV5JIZXD6kQNwDYMENWsiBXL8FSvUMm6cKudpJwgGnRXQIcoMsUmG\nb8RU+coIbr63juKsPcRqObY+Wx8ac6JcjsKAg87w1oea7rdGRbal/miQ5fKz\nbMeIHm+jOOtntXPwkjb3WXsk+5Gm30hfflRE8JctqB6DdbAuhkB1jTABPfsj\ncOwhk02b8Bt8WClzTktnPCXELogppX4NXSND1dFqx00e1m5NsMs5GK3QVQ/X\nYL3OuknZuTdt3j4tzoejr2+Z8GVi3NdJHWiKTiDC0xu+ADa80Lpahas0WpDj\nFy3esMg/0i3sD/7hfL/QCae7CmefYfnVMSVsWkK7ADHMGfVBhVO7VSHYHG2f\nxIkIqUEY6Vt5PebKFjZCJs2fSPw6rVdhpBIWq2cVQbWVbWePwiGDlsSyx+Jq\nBTaJUS0NwPq8z73YaRzqODTlQ81l/tlrUXGHycIeEZUesll17CRpbQkXvd8V\ne/U9oF8rGwCJ5MnLjl39KUbsOjg+WumKVpC085bLS6iX/Xo/TaJGeFrsy1En\nAubG5cDSFtGxHTGuICCNBuxe4fdGJZsPpL49/+puaPhF5oaYNR5PNkXFJ6QX\nW7ypq7/7kzq5Xm7O5pRSLFst0KJ/nzAP+OXItY8UQKoduqztkFTNemdctSGU\nQlNt\r\n=+Cvy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH/yOSRqqwU3U3yTzDl7+gE1V4v9pFRGFHors5GF14JwAiAD+3JHTlX2FYCGsg8oj0qrlPuBLq6HCV0wLIhFcv7a3A=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.0_1565255503618_0.8287731818713473"},"_hasShrinkwrap":false},"1.11.0-beta.3":{"name":"kafkajs","version":"1.11.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"bb0e9fa9fe54adfd7aec22daa4c5a61358eeb424","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...bb0e9fa9fe54adfd7aec22daa4c5a61358eeb424"},"gitHead":"bb0e9fa9fe54adfd7aec22daa4c5a61358eeb424","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.3","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Rp2f95cLLWdjR9SSgondqMcTqGGwlMw0Cv2rZgvuMciC/Jno8KeOgkG85UeLLwpEhj6KYs4t25BT5ThOFK7BVg==","shasum":"8076255c6d856e153caed23aa3a2ef7b6057fc3a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.3.tgz","fileCount":264,"unpackedSize":471240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdURycCRA9TVsSAnZWagAAiZEP/R8BqAuMtewNUPirGEwv\np4Khy2QK1fSKLuZwIBRUNj+fuxouD1gjidkSIt3eW24EMa5/wd46acH6Cukf\nSppnaDcaM3Zo6ctoJXdqPz6OMoTdVH+gRt7pFUpMaqZp9nsX0Al3t2mi9ow3\nGz8KrYjMZWcNGszVsiJ042b1+ITpiDwYFN2rQwJjmChor+UTwp3OE+7i1Li5\nKWweStv9AfwR7qTSfa6n2TJ1EL6qNtTQcncYFhbktO5i9e8acwotgnMJbVA5\nA+Y5FdXgnf59OL1hS30xr9DYeZBSFq+Fp8rv42EMCLm9be3wjIyF9s8+Ns1g\nTGPIpjlVc94ET9EY67zGjao+kwHAj3ly1TCkY9PRkYinyf0+zj1MYjPg8Sh8\n70e/VCLykIGN89WTKJAJRduYbAXP9mi5D8C/H65P/1ifvoXfKIiRUFnyrPRN\nIdMuuZvUOESE1ZXv7r+w62wJ33AGs70y4XngoZnP7x9kN4dz2aVrKP/k2LUt\n02LAgjCuMkZmuTvcMsccbvi0OEt/k3dztSA3nK6aLo9/hVu6alstaui5Vmpl\nP0RDWHzVeD6q7ll9WQJQ2ZFowaOfAD+rQ4vaP23Vb99qrXc8rxhgHMnmyfdM\nDHj3KHO3D+/+zmd6uepiOjwA7YyM0g/v2wX+VrR0EDKjAYMtcZd3bm+vxKXR\n2avs\r\n=WoZa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0NFus3pHQ5Ka2RZjehyilhwiSkzIPW5I+mXCzqfIckAIgDm0deyLYedXI9Y4Re5UB2cZOVBIvqeqqirHDOMbysSc="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.3_1565596827954_0.3410009966159373"},"_hasShrinkwrap":false},"1.11.0-beta.2":{"name":"kafkajs","version":"1.11.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"dc0a942e4ce38bf37dfb95c369c6fdee4b91c08e","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...dc0a942e4ce38bf37dfb95c369c6fdee4b91c08e"},"gitHead":"dc0a942e4ce38bf37dfb95c369c6fdee4b91c08e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.2","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ZzMULX2uLAXVrVXRzsA9Z8UPMGh2Xg0+JthIqucWRVSbjfGEN59PIqi7BUQqSTV0OAjTTseCvUFUbLOT5jHF1A==","shasum":"050f9784e990db1f0c6260a6f4cff5094a5cbb25","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.2.tgz","fileCount":264,"unpackedSize":471178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTasbCRA9TVsSAnZWagAAMYQP/3pY/g5PaJDp+e79Wxlb\nF1RJN40VQOX/msocwl3+W+4P+z9eOGGS86R4o2IhxzyGuDhFZZ3GYzK4sb7D\no986+hjISmEWVqcoJyF+0pNphj3UYbM7n94hrn7SnSm4l6SphYxczdOR/iTJ\ntOt6O3Xmdb0Zg9iJPNRNTR6UhRr16GaTw9lrIz4LzhFer3g8eV2trftqpf/x\nVL1UhP2lJmK1vGH7YQ9pxjOncjTZiMMR3/3BvrENdHkZB5B1s7F/Eaza9dC7\nJCDbEtoJqM1Py54WHPYD9Jd5K6iJ9r/+NvLspWly8mPuKooSVnb3zKB6Vm0w\n0Eb1zFCVv+hBkwyABhyq9S2F13VsV8kodo/CTUTpD9P1icKvSh7P8p3ycg5q\nzeMlmgeImq701J4xHydWw09dJdN/mUy4nJ6xnFnmJ7gTJCCV/r55oejbqAPR\npTW/8BnZ8Ayyi6q8pfFlegG77oA+Q6ZAGf6IZx3JguAjzsDyWC9IyhboaB7b\n5/E2pB/AeFFXGIgHhr/xj3z72CSjaFRPG+s1vqYJH2jLieS9I4iS3NKN+W8Q\nbSzkaD84npjgJDdww5uHn080sEgpDo0XBhqdxI5TTAaE97efnMITSWQsFsjq\nF1K12KKncaqPDmFzLRNaE2O+sgBJPeql0oDs552DNbW1msrVAWs1WeKjgCDi\nx2NT\r\n=ndW+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCMCGm3NOcPeGcmWUoIZDnWlQseFIElGh0S3pSopq3tAIhAKqc8hI5Gml/sxiHX1aOXU3gMop/FnampnDxAp9EH+qZ"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.2_1565371162476_0.3613286378592617"},"_hasShrinkwrap":false},"1.11.0-beta.5":{"name":"kafkajs","version":"1.11.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"8feb245268c462ce5a08de1951e0892c076d120f","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...8feb245268c462ce5a08de1951e0892c076d120f"},"gitHead":"8feb245268c462ce5a08de1951e0892c076d120f","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.5","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-3e/uRbToI+CL5FKHC8FMf+PozSDegOOaUjHbM81cN1BRJKAVYn66uNzE0mqrnAIqJ7tLcpwD2ogkLHJxF2AlnQ==","shasum":"b3d24ed63cce5b4d4e039df42fd636f1de343d95","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.5.tgz","fileCount":264,"unpackedSize":471117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdWUFoCRA9TVsSAnZWagAAzscQAIeXWiXq2Ir9Tw++yHnP\nVEMtC6wQQHx/ZHuKuCIpzQFoYZjE098Je1N+kYXhAt7JNoWMHoXEns4dU4my\nAds6O1FODHlp87e5vs8rfXUGUtECtmtog8PddcCkTzUMNAaSEcz8ma/TKAE/\nvdox1NVtlFw/3j/6ForrX4Q7edLVm9iMSokRc/RVgw6LXCcQIkZRXgH06R59\nlDDo6syo9qONMBkLnnV27cAbzqcqATXGI6tpTD1vHwFO8s72d/h/p8et/Oho\nyghG79KQ4l8PneOsqZfjvmND27RrAQ9C8RgtDUfOSkBxcoKUDVLlg1JtHAGB\n5igS4k3Bn6Km8hjJPA+oEYRtSRmOisRyYqOZf5guoY4YW85e4zTg3NEsFSwu\niHZKWr8vxwKizMgwUPG7k7UmuN3F1/xkVuivWL1LChu7BpbOx3a4tdLRO6b6\nvlEVobAsl5qJQ7De4eovOjBvbFNdZECruhRS2c0ifOXr7dLDo2dC9oIZEbE7\nbZP6DVjtq+Z4NyPKGffArB8y0vApyGExdBqIg/Tt3qWzSZD9kL+OIasGVMZX\nAV4gDStiwXCEOVhCvmDeae8brc0p+Vsmj4ZBLRm1rhUwJLvTF8zSosqMmZsi\nCMLrueIn84wKPPGYezqomJHV4QrwWCXUeMCJBztOcL9/skmRiOTzMIrIkypz\nX92i\r\n=TFPa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAb2FJsDQo2r1JmlgYopccYXhqJpAm11BhoTJ+BKslywIgeoB6ywhZ4CYZuS5H2dzlkXIG8S/p8fCsCNHktKcp/Gg="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.5_1566130535733_0.8591248658967385"},"_hasShrinkwrap":false},"1.11.0-beta.4":{"name":"kafkajs","version":"1.11.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b1bf53e87a075ab1ddfe24959bdcc296ed39d8fa","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...b1bf53e87a075ab1ddfe24959bdcc296ed39d8fa"},"gitHead":"b1bf53e87a075ab1ddfe24959bdcc296ed39d8fa","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.4","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-GGvWt9r1iBzouV2gVQ5ZyZ4OtIdyUWofq7AzH/xCZWYhC35Jl1LcsNKO+6CxgqLhr4bI0I88WNUKU126vVUhIw==","shasum":"ac4a16fcd806231bc18712f2d7f1bee35ca053dd","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.4.tgz","fileCount":264,"unpackedSize":471240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVECiCRA9TVsSAnZWagAAEVAP/iMwPgwyLdUAhU+4FR6o\npGGBqiN5fgETVdP6Mu2r/qN30F+S52oemswkajhV61JSuUNAcUZcxk7vbtOy\n3LYpKrNKIpkvOoBq3tIGy/7hli/zu+2V5LZ87YiJ7qZhRkNjqXIshJNVNZzb\n5fATDX1XG1dlm4yJ12LvqpDJDY3579afAA1Kp2EOYmWS5pEVJqbNlsGK2XGz\nqfstCrTzubjK3N0S6dMl7rP1voAm7BwYcIeCRwcsEDu/gdiZqcAWQq2hjT40\nFXFoAUGIzqhpbBIPSEWN9B62a38JCvKLP3ZjoCvmrdyU/ZUzbTS+q9e6oGkh\nhsSI2hTOZAuzcMUVxtf68fhyvftgBlF38wkaukt40T8WvVaCdGnmS/XNVFj4\nIO70MHPyAzMvbH7iWQZXACdxcULvVEIS23xVmXPIQCAheT/PY2LVrHOQV3mI\ngEcggNqKCxn1vAoxSAE4mz015TiafBELsX2QfexFRSlrP7Y2ZY6d5ufEJVX6\nF4H7I0jDrU/IIZz0VU3v0vaR7koDk5GtacAnLNXXB8pKQSR06/riBPLfNtdG\n+Hrm7PHhtyzeu8Kk3/YdyPhpEgrXWmCWnEuoANv/XYsOzg8nvCJ3u7+m9evq\n1pIWz/dr2knc/QnKaPvusQ6v7Fo1hinW/4g7OE8sHPEFZD25XWKIM3QgRuIn\nWXGg\r\n=gWc8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDU7Zc1xWlzodJKTZ2loI53GVp1cYVXfEMMjn4PEUTYfQIhANqypU/35DZRmAcqPZPkJxF7uMP98u9C8KZzEtx2FDGM"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.4_1565802657057_0.3189890400587345"},"_hasShrinkwrap":false},"1.11.0-beta.7":{"name":"kafkajs","version":"1.11.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ac6509c4d3d6cc4e158145c763f7f23d5a24e319","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...ac6509c4d3d6cc4e158145c763f7f23d5a24e319"},"gitHead":"ac6509c4d3d6cc4e158145c763f7f23d5a24e319","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.7","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-qTS7omDSzKTR5djnGb2Ms0accqSzeAI/gLi582XI9SdaODiza+ryVACvffmN7UZEndH+gaMZMhuv5xNEHedqoA==","shasum":"4cf9024811e79a1702df3c88d1ed75986413b429","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.7.tgz","fileCount":264,"unpackedSize":471249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdW+PmCRA9TVsSAnZWagAAiAcP/3sAzAmPA2c09+pfDoZI\nFbIhPHGK9yBfuMLmt3v8RDIv1MBkQNCsLzIbQ0A8O6Ef/T2N6qKSLXOcAlU9\nCXEadv4S8IuiMmXPVmUaM54CfTkiKuwk/cE0FxtAyh2tyM12+hzZexVRWxbg\n5EaeIviTJwmLABoi9Yt5DtKpKm3bTwZyVyDOpZVusI/kWy0CzsIV+yMeXUnP\nMBwaRiOhD1OnwN/YBccYCg3m+/HaWo/Sx+mn2fbo9RdAYYwLMLlhk54pmhJI\n0zU0IAXYpJEGLKnZZ5x+15NYSKhxdBxY8FnsPTcVQaOsAqAlDdkdGqluac4E\nHpS33LMKbuBg83EPB5TO/qvRr9QYAnSIkr6vX4LeauLC5FWdZHDUr3+h6OPB\nfKnekoo2aDujOE/bX/mWHnrHpIzF/yO2kclyHglOIgyxUrwGjR59FBuM8mvp\neKSTes8JSuWJn2VnoMMeR94clPYjP4JM2o5j+KijoDxnuW5KmcLi9ublCqvD\n2duuZlq0fEjW2lunHw1I3k7GkW7wQVPjd4CuM6XE0QV4j4ClDMfF7WZ8X5Hx\n28uKqE78D7wlvoZHvFM0UQZ1HsayY3Z3HB/jPygjJayW3BY3ttEmg+g7gSK8\nNO8mI+YiUMJQFp30rQYaq8+bPoPJ2Bd9v/wnj55IDvXHikY480xy/IwKooFX\nEPvL\r\n=DAxT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCMz7ff6xpkdMGIg5EoajA00VP2Bbx5tRPmXxL8zvOaAIhAIR7qkHwdhV/mz0wlhh6VFtJ8WSWIjNO4sePZ9bqnjav"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.7_1566303205372_0.18057443961580977"},"_hasShrinkwrap":false},"1.11.0-beta.6":{"name":"kafkajs","version":"1.11.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e21c04dd114e5819309f77c1429063813c08cbed","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...e21c04dd114e5819309f77c1429063813c08cbed"},"gitHead":"e21c04dd114e5819309f77c1429063813c08cbed","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.6","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Sjg7DvC4JWNx3tFvO5O4HXclD5Hs52+Ecpq7eQsRddz84+x3RKJVR/PDPjdy7klqU+40lEtwSlsYj/mRsc4bcg==","shasum":"3f589ad9029a0ac41bd8edb0923fc01137057337","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.6.tgz","fileCount":264,"unpackedSize":471245,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdWp8DCRA9TVsSAnZWagAAc8MP/jNcjXuysctexVSGrFB5\nZu+7lE7/EVRqagJ7eHS6Fng+M9nYoU9zy4xDDLqO6Qn0iNFVZP2RZeYfYiNS\ndPBha0PbUpO888CcGpGL7h9EQe34bUdpfzSe6x1Y/mcwmQqXccOucFyRQJQj\nJHGOAahX2H+sJtDQV04ReWpZXNXLheNoQW9832Lwz2U6sNQusbnmiJ/spsYb\nrhL44H1eGbNMv4ynAkLttOaG9tv0TmziPjCYlXPU3CnPTArqgVs96kqRKOvn\nCCH3Ko9m03WHYhEspyLATfihrF01EjQwVzVV2PkpF6H9qAAMeuUwe3pBUICZ\nxkT2sZYHs7Ljv8Z6L8TdQQ5oaTLm843nK5P8qqYkuiD6OZMM6Qh5iuI72Lq7\nNZ3ZGROf4PGK6qfON5W8MUgG3kP5bu+/9Ren7jsy0/yKIkFOOJBomK161mJ8\nUVUsqymdIwAG0zfB7+GEqfRrZo5rdKzGzb6lgiTpmp6W+POPh/Lq0yoTg+NN\nxY0rq8cIsaKkyQi4cLhCo22tS0i/8h9G99KYI2Toic/Nnn5UcddjjReXBTfS\n8bireTvKBJqvjMKq9PBtkRV28Z9RRszBq1bDxeTreSKptQz0cfEDnGGUfgjh\n9aAPkRH7MUCgqhEZ6JWw5oFjnuGrV0UE9l0mt0+EJr3UHxBjn/FWdQdu4P6a\ndHn9\r\n=L7iN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDHrxG9updp4Msi/Du0LhGeB4bTvm4AKsd5gcydkm57VAiAObXVU3XmJJWFGQmcQ1KNionvCTiV/Megn7DGlacOoIA=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.6_1566220034699_0.3850454551795657"},"_hasShrinkwrap":false},"1.11.0-beta.9":{"name":"kafkajs","version":"1.11.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"78a32708f87753a3765d6b42a8d2432a7026e822","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...78a32708f87753a3765d6b42a8d2432a7026e822"},"gitHead":"78a32708f87753a3765d6b42a8d2432a7026e822","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.9","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-mKtswgzgZ58cfaK9+CZSdYnB7C3yh7cZLzzjZQkgJ9YO0CsMIFkI0JOk2eTimQClWD8SKOPlsxuVsNB/iX82rQ==","shasum":"a81592e3c36f50df10fdccb371eeb0897e438ce6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.9.tgz","fileCount":264,"unpackedSize":471293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdW+ytCRA9TVsSAnZWagAAFqQQAIZljWya18Z+JRXmLH8D\n2rLSvLi4Ok5y8VYb9IY+426z19oIAB+zSbPGsFOj2HGv/I1bXHpSM4Vwx0Cj\n19DvTHPBkCwEErJow78Q1HSOKKsvBs2yYA+OX9yyK77nDL5V02CqXnR+XxmU\nAvtmEQiaoVmBuO19swIWUaNbJVVJ2JXixuJkixX6XBmEXJPZqFEt2R4N5dLn\nnYILk91VIusv+Kh1Sy/FXJT0c07tAuDaFWGQN5/Uak9JWJ3KaOC5/o15JmyS\ntLt/Yt+ytQJx1z7ezdwFT7XKzDmz4ULXV/X6zo/9vFB3NRG6l3be9mDFS6+o\nWCsVXC73u0eBdCdYx6yYsP23i4xk+0hqgjfmZzAt/WHMiRksFZnLO3EXtowm\nxLVKC2PnxX9+bBzHiQIaQv8eG28rOLb3D6KbkAlCP2rHy0iDq8elJeb+2eYy\nNqNlPWcSn61YNkQVn5h+UP339DyAIAmH94z9n4B8Dzy/ZY7Z5SsWNwMQZlYT\nWhv4X8bgwl71CtAEsDd4Q0hJP0QGulI3I7+OuAo/oOmNtS7+BV4Qf6UwRZKc\n0al1YMYsXzgeFsZ31RHqOmX7wOKBjO7bCKeeQPo4AUbGqkiw5hmm9UzuoI4D\nSwBNAlMtn3JGFi56Oah02yDfukEqtYmVosT0XD7Nh6+jsb5BjS2bsthooPX6\nJQ5G\r\n=PRoZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHM9xHXfOyOXCFArs6zOsXR9BjujghL+lq/ItvVEjqUJAiEA2Ht178gQSGUHFLTUtZaA+vo6uqIkZ/Aotn6gs2O5NkQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.9_1566305452163_0.2714624466436797"},"_hasShrinkwrap":false},"1.11.0-beta.8":{"name":"kafkajs","version":"1.11.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f98f60597ece946ca5febdd7b463b58d6ded00f0","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...f98f60597ece946ca5febdd7b463b58d6ded00f0"},"gitHead":"f98f60597ece946ca5febdd7b463b58d6ded00f0","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.8","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-7cpKpbdZArc+gbcq4YJuZyGTWNgRXAfa8A2nt6M/zzcin2fiL8UIOcdx6EG2NorJa2b35OsaEVNiZHDRPwdmhw==","shasum":"342085c06482d06f70c1f6d75d756821e855e556","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.8.tgz","fileCount":264,"unpackedSize":471250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdW+cQCRA9TVsSAnZWagAASnAP/igD/7HcQMEnqOKuBjvO\nYUwwkFomgR0OF5E5hQ/j2tuyuwLmewZi4vv3nskkK4/MxfzYB6xYnaIOQ5qk\nJbSEvlwC/GieTWpyOMYUXDGJIEsqD+0iti4StzpAPs2c9p5/+B2DabTV3F1e\nNGhlb7ad+HnlQlLiBHL2gU2IKPSNCo7zzejp/GpklrBRVZQOqAvhT8fdrzY8\n7Mg16N7VJBHQ0Vr2KWDp7LGp76i7j01zw3LPlTm1dpORkeHJYvliodBym5JO\nA3SVwR+w56exq8YwD1xKzxVy+NmIhZFWB5zWzCCUZaUq9M8oUVgj7g8NzBSn\n8lMf6NaoeZu2A85C+uCdtFTuDuugxQC4t+uF4XWGkZgjA/jFW396PNftlY2/\nXyhLWMOwbGkgu/LJYFQlr0sCsgYSc1v02jTs1cODc2lynpZyHEdFaHdPbMsY\nVf14dKCgJUl0TiuhsmUkRZPueqjTdDSgJH4ecEsUvB/DuwnDekcLQxI7OPhP\nAM87ui3qLOdQHqssn1dBDkhyTGOGAsmo2tWBvWAVgyzm3bXeN6GzhBOIl4H2\ncVWstjTCVBy1mFd/BZXxFgzN63VKZ/UW1fvEp2ThmEGy65RXhOgY99jR6bgx\nDVR5iVgoKJ4ZkxISomLn7m7MWA3FUfmvw1+fFIeZ2FYhvtj3e7UxrIgqpJcX\nMS4T\r\n=5t2V\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE6+esjwKshz4bSiQrKuYDUj+I4h6of36XcjIkvMy843AiEA5joc3xwpF4Yzf7QsfSfoNNfDfPr0vEuzcBw71HHZgKo="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.8_1566304015777_0.5290792297362712"},"_hasShrinkwrap":false},"1.16.0-beta.0":{"name":"kafkajs","version":"1.16.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c2a91d4b5fcd35ec966723a8d1b67f8d26f2fc03","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...c2a91d4b5fcd35ec966723a8d1b67f8d26f2fc03"},"gitHead":"c2a91d4b5fcd35ec966723a8d1b67f8d26f2fc03","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.0","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-WMzIKY3Nj5KYncbAe4YrBGqiDbT0OtqK5g4jDy0hl9Xt+vPMLhXIPb5/fgwnwg+scl5CvWORoM2cV+Gq6xUA7Q==","shasum":"f55934db26437f5fb6e152bbecb35fefd4ce06f9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.0.tgz","fileCount":378,"unpackedSize":672359,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyOveCRA9TVsSAnZWagAAmFEQAJ4vCPxgPIomn0jFa//p\nT17R/sR6jiskd1UheNoBpYQGgYhg4hH1Lx0EZ/NZf/z5y2WCmpsNrPsM+C24\nzDHhDnn/2pumeuapuGVuZYfbtaQixU65p8m4jupwOgMvZIyxdkgfCUYyXSKe\n6QUYTzy6VjqLKmCHxwSkA/RFwO3BquoXJRGqdOGRO78LOHXTPDdaPfH+0n0W\n9RBI70Je7NIV27tbqdUtwfa4ESP+hPxVCemW4yMk4LyOZdIll/3ZOZpIwUFN\njSCmCPRfDWvSApa1/OPQrP2Z4aC8IIxaWt/7S2qE1utdFMNycRTXYvOKwD7p\nibwFEeBa4OK9OeQ2HXQhG3SbTA8mqlGULTWmRY9tQIR4cPCQP2p96oEOH5S/\nFZNosZNbf0NUMGmo7a4Yzq8w74xG2NaZ3vw8pGrehftFl365IygvRSYN2WX6\nNL21gzG2woSFk7vISgTYF980wHO7wfa4SnR7waa7mdijZRdCsdVWiLkJhDSu\nrRjt9MvFsrX1/7RbtR3s4fHQepqg7VSrhvybFUGfGp9ob4dM+JEjzJPfrcJ9\nhiKTvPlislWKlfCKEEeufsoSBGqFyd7Gp1RoH/GUFMWHgl0EWMAY07R4febI\npfZJylToNkt7oHjEerRJyW/VaBWCZDxYYphFkwdAshK57iTiFoAjgLsarxw8\nKA8+\r\n=YKEg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGtRPcM6WVIvZwk12vtArPz524QVsRREq3qb0gVm/EAhAiAj57DhoLmm75MAvNDqxVSQM5yvS9U+/UIOdlDSgCIhaA=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.0_1607003101214_0.9106105471583399"},"_hasShrinkwrap":false},"1.16.0-beta.2":{"name":"kafkajs","version":"1.16.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ba34eef11abdbeb69598947358fe220efb38d514","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...ba34eef11abdbeb69598947358fe220efb38d514"},"gitHead":"ba34eef11abdbeb69598947358fe220efb38d514","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.2","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-p1bUAoNZi9PeqdHCdXGmmgqKd8LOvzu/lVSeN1kDbKRpzqregFZAnLv78Zoh1DYuQcO4mlZlichFEfs36YTvtA==","shasum":"245e4f99d60037ac7061d09884b36571dc0c0cd2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.2.tgz","fileCount":378,"unpackedSize":672421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf02dQCRA9TVsSAnZWagAAHPUP/iMY3N1HL2tUh7U7jPng\nPjeSelk8uCrIeaMNxkg+71K3qgffmQMJydzk/KKvcF9imki/GP05regX2GdO\n3ktRU9g4vH4BIbMCtKDE4ttd1E1abeWYrXllOed6wFF317bGHzTcsWQ6b/pf\nrPnTZj42ueuCC2IsW6cWyvJLbABClU02+Dz7CqknrfU1TFWK175f5nwptkvW\nOnUpbvmWnZERXVxnC8zjQsOdB7uj6QdNQOPnmhUc+WtaThdVj7H07nSFG3NT\nwgl/vLOOZ+9dsF+ZigOmcLY9TafWQXV8tKphoU931GtpxfG9nMpALL5ebHuE\nI4aQGJwMm2hDBaeCZuLoHIdX708e9a+jNAwspuIbeA9omYiOGCTweppH0D0K\nhnYN4oLyVG+29Jx4UAHRUPHwp5xMhcEttgEUzbWYpjFFsZtZ9vPIdpGlaWY5\nOVHvKAGdZYLAmU8eaYyoa8SL+eE2xxYAHiRXuFEf0Pct8A4Q0MhIidAHU86F\nZbeBqKVdoA0jJiHnCSNUki/bqUkSogxFUjdIREAFqZrcgFcXxCDst4TvgDa4\nijMGjJtoF/ZwwSyGUnPh2waHiEz+qVG0W27lGN5yZuFAwcdoL8GDPP7S4Fsq\nqbO3PIr0DUcVaL6en8ncJXylIT75jKZZiVQ8QS/zah5BYtcQmPB6CFYgPpTm\nZj0D\r\n=xOgK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1z9IGX5PNggBudsXVDJ1ZdvHx/8fWzWHj9Sy5BfBWdwIgZ+siIp8nfbPDeY1c6yFwJhpihUNx18G/5KkANNqmtXY="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.2_1607690064159_0.05500739476978067"},"_hasShrinkwrap":false},"1.16.0-beta.1":{"name":"kafkajs","version":"1.16.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e1cefda9c952b281112b78b319b5d5cb770b9af6","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...e1cefda9c952b281112b78b319b5d5cb770b9af6"},"gitHead":"e1cefda9c952b281112b78b319b5d5cb770b9af6","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.1","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-QeluAKDeAMLmSIPuCLR3/PKL39QV4DX8Rp8BSXfMn2wQEd1DN2vfbFufYGF+TcfnPcu3XGweGHilc52BLU1JvA==","shasum":"58a575732ff49452a800476ee046f944dd93d8b0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.1.tgz","fileCount":378,"unpackedSize":672429,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0zCHCRA9TVsSAnZWagAABAcP/0CzuerJw6Tp8doz3E5d\n5s7zj4pBuALcwWuMGX97rWi+xz9M4tCB7Z6+toariUxb5O1gVDcpLjVh/9CM\n2AIbd+bo0ooIMiwT3bdalj85GW/cyQOc782/mZSJIBFVF4QeHKXPmrfBGI6e\nBBm8iaizGpASno1yO/H5k4Zpr/c51xhZLXws59VSUdCCbeSketNatvNAQemh\nYCHSjAv4CgqydGYEI5ti8EBhgpKJEnDkW/YmbbPlfdl/josq4EXJP+erVgYZ\npTvQ1v83gUuISRNUvbr5JgZ8CzgLSbNfV0fJpVGNSAq4rQ+AB5YgjgxLQj5E\n5BBTB4KleubfayjxqoNRMCZSbFelwiX73Yrg3pFRs4NjSBfjOdwoUCIAPLBK\nLDqjDWm1SJVfrrhhuv6HtQkWwazbfpgOFzozNguaM98FByScF5IE7jUzNb9E\nzCmj9kG6OdT1abJvBpI04dYIXt1r2eiRPRw+Qw6FQnoFWp0NTN8U74Gw6za6\n28Aj42mudzgnAkRL3ztxVSBEoy1hquz8oQPTvIH7RHxaXYjvzrXvfFZQUEq0\n+FE5KUpZVYzR7MVcQUZ7TSPxoZGUG6PYNhQw0V3h3jKWixBewAtAxycOW+x6\n8rA+Kqzg2TlMm1A/ebaBsBDrUdNKAHfVqE75s0QxAGn3EdmsMCPefMqPZnH1\nNBMI\r\n=AYLg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDGe7qG7ncLPLTwLBgwIKq8L5xtNCHMq/ENsKB5c7o4wIhAJvpYoR3lX/xOGBAjWtZzlkugbdmZ3J9BbciaudpS7Ko"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.1_1607676038719_0.03697390298877434"},"_hasShrinkwrap":false},"1.16.0-beta.4":{"name":"kafkajs","version":"1.16.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b80ed2a75aea52b7c3d8b3c9d239427735ea0b02","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...b80ed2a75aea52b7c3d8b3c9d239427735ea0b02"},"gitHead":"b80ed2a75aea52b7c3d8b3c9d239427735ea0b02","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.4","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-+ya91njyYDV1iGXhEeQl5nZofuZK/BhijaVUHiWLTrwi5FxA95UI+i3B2118UlaIuKD7NyiqQOabwnl6EtnvDg==","shasum":"994a75b7e5927e5dc76e6e41423b1b6e41e0f05b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.4.tgz","fileCount":378,"unpackedSize":680835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9KpUCRA9TVsSAnZWagAATokP/irmW89FsBIKen8mU9Dl\ngMbUt9YqGfstZZH+gZVCpklCkDtNIxcKWwYWXHNKb2at0HCeqHv6oKb8Ai/F\ncjlMtC48RxZwsi0TsNSEaBO10F1UjL2S1Wex9eyNEgi0NjZMqK+xB7BYsVtB\nQ7qoFftS/fmJpNDd0xWyxfsNdaOQjGXS8y7EAvGLFkLk5XBH5LUPycSJPzop\nAye7RtN4FCUWl2y78IeG4m7i9ll0/sRlZVHk36ir3AWGLrgGo0xS+xdBC/yi\nuGcl36VCjJuP40g5AvZaOlBYEFvImBGX8SVkikPGI/fSKDRrWPiK02IuvoE1\npn8sNhKdV1u/r6cHv/Cxi6vjvVWit4G7ZgdLqCilrMtCHRpa2PXKJJrr6/n2\nq/7bjyZ7DFqENrEg2xLrquFWUqkWxRsBDW1oL9maSkrQZUkRLLQJt1tMW6Eh\nHq9it2v9qfPkNdNnp6e/W1Kks8SbzyTHHT1qfyuPcM2dYD5DdBrU1HyOg6w1\n3mKzsMm2LZHqwJ7aYm/gD1csOB5IjISUzqLB2OtXewW24/7kaEMUu1oif9Zh\nXwflLoQavrh0TJscSJuLrafkLMvM1/UVDmal3qdBtbMXpwD3mjp0+ECFoaD3\neiWqopq/KKEZX4VQXo3HZ41x21Go616AX1Xoy8q+Ziu22ZFDrbCAjTcqscrm\nZ7we\r\n=+Qod\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkD7TteGM+/isj+G3ye78q6/7yzgUDn6UitBwi7+QLzAIhAKDBdsKP6wRkStf/t1wlzDif2UQdnG97GgYLl95cwWwp"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.4_1609869907627_0.20920664640539854"},"_hasShrinkwrap":false},"1.16.0-beta.3":{"name":"kafkajs","version":"1.16.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"77f5792bfc587d5cc3f1fa583b1658cf8a246bfe","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...77f5792bfc587d5cc3f1fa583b1658cf8a246bfe"},"gitHead":"77f5792bfc587d5cc3f1fa583b1658cf8a246bfe","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.3","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-mo6E8nZxQucUbM7XTj/ZeBW6scfXENZna3wSBhcV0cFJe3ev1voREpyDkAxBhpPp/pvQX3DkDb6qqh/kBtikUw==","shasum":"341459214b69ee805b5ebb5d03a659cc656cddd9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.3.tgz","fileCount":378,"unpackedSize":672438,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf7JBgCRA9TVsSAnZWagAAOJYP/37yzN0dpRahw/9jKkj1\nhweNXBUYt5O0UDQFelbGY6haNBVgxtB39SI7+1EgIYlI0t6+PSokKI9i2XkE\ncYW9W1W2X34qRMoHJa/jCWP0cqwgY/foXd4KVMehr51/eAglhTFqHYPi89YS\nihjZE972eUJfOwgWAEviPh5F/k8ura+Gu+8vlLnI8SSRJ+h786g00wzLgGmu\nZu3Id+vtgEXYEECHl6YB/9XyB2b6O59ZVNOrEED2tIMl0fOLHJg7qcSSgl1D\nZmxSapEP1EXebFZtarpQ4p/Sqs63Nwn1xprMQXCYwJEqRWgJV4w9KylZCoyK\nBoaynYach2CZqfJepM+NlkCMSPlOiDmbVNXMlLNwcnZAVFkGhQVTqRjTaRwV\nHVPZ5ernUB/B/ii4W70Dwl0BZ8cuYZmE1EueBYf0h1/aihGsBhmPd/fzBpYz\nxNm8/XL+6h2ZdlF6Xr4AllaHT1B8AMa7LwElFNj002Ef+wWVkGnXgze8vJV8\nB93BP+3bJJ636Njr32QRIMKru/t8aZubAMNSgcM00AiKhcWWtEttLQkpBrNI\ny3qAJTYGnwtGAfzUKoJ/6/tgGUtgG/9NlD5uYyxGyOQxmQ8FEd+Z4tN2oTvJ\n4uc/gXUgtZ1WIg+5e9rNKCrZc+Me/4k7OFbMB9TN1PJ1rF9WmuDuaqkFHY4i\ngi5y\r\n=OvaB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSSEXMoJ7ql1Qx4YuthZD+lbFDvXoc4do5Nw/Ed+lWSgIgPwN53hLlngIHynn3qL1ecJqfC9Z0C8NQkmo70pncri0="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.3_1609338976087_0.48872651745436824"},"_hasShrinkwrap":false},"1.13.0-beta.15":{"name":"kafkajs","version":"1.13.0-beta.15","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2faef0719eeba50759eccc2b7d8800dbe63803f3","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2faef0719eeba50759eccc2b7d8800dbe63803f3"},"gitHead":"2faef0719eeba50759eccc2b7d8800dbe63803f3","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.15","_nodeVersion":"10.20.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Nh89MzrjU+9TFaTBplj8X3OgkX9+Xr248pUnHhvx3PUqVp/afUKZm6DMlzve6x37jyDNmDA2+8RAGWoxSTRq8A==","shasum":"d3e8fb9188d9d905323fa2e09db4890037de1f2c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.15.tgz","fileCount":289,"unpackedSize":513197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejghTCRA9TVsSAnZWagAAWAAQAJDFQ0V2r1VQwBkTyPYP\nkmexFNwiAF0vTDblE+yHebNOjIn2jv1zS3zmevfXkqE3eYV7SP+27qCgmGjo\nN4HlOvCmm+NaCCl6R6cnAoZ+zeQx1d8yvySmNQWkvubuuaGMJXHGAYo3368b\ns0RasA1dnYkIkbiqhM1tRzGEUwGkZt04wqFpvkRBB/uJu84gqtmlYkIxswoU\nugrO0E+c0rw+MFSRYjBzPNK6HTzHIDNo3zTHMDdQP3k85CZBnnuWu4jRoLe6\nQSFMUite6w/dhcUBWD+1F+afv01VK8sptLOtaYP3nSGPxgtTVwZltJM/oxdZ\nJ9tsZflE0P/JprW+5G/YqfwcLd9ibpnL3ixKD6d15gyc/UKzREwBqHpC91KF\nUUqLg0cBCIjXcDYjz3evdsHNFXo5gkka8PeMMt1xCiJul05nuAiKTWFPPcXS\n5PyD+Td/zQN4LFhRrs6RQxTDiiM4zSOW6aaP5W59HR2N6KKWQLJ2j36vZ3cq\n5KXuDyu7iFnPij//5TZTGl9lyDRZDFQ33FSDnXstwHn+6iKE4oHs3UDZDZou\nNbtVuJRWp1fpNXKKR2EWHu3IpnTu0otaQlcYdMMXYHtpEoIhbhao9vEQ4WGf\nk/7iprrxZ1dlodc6iSuFAUNmpd8w/57rTH9Czz1BFFQkqez+wSFH+tW/tEAc\nU8I4\r\n=5i3C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpmo2Ht8JGLDyIewT3BuVjlBPTzYi+moA6RUD1KxJLJAIhAOTK5dFxNIEf1y5oQANQ7+302/7YSLggBAnEO0WLyGSD"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.15_1586366546446_0.31265758657033493"},"_hasShrinkwrap":false},"1.16.0-beta.6":{"name":"kafkajs","version":"1.16.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2068293fae2ed611a4e06a0f573e9c875a034b63","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...2068293fae2ed611a4e06a0f573e9c875a034b63"},"gitHead":"2068293fae2ed611a4e06a0f573e9c875a034b63","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.6","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-R4DT3s7oCAoxdq3tN8w2WkUxLXcZgLQSjQVSmEZpEmT6hVdZ5AUZWqyLYr1IRbQowsJK4Z7eWJAk68J0JiRlUw==","shasum":"650f4d16abd60516aa0c375be613368391216df1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.6.tgz","fileCount":378,"unpackedSize":682122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+CQZCRA9TVsSAnZWagAAuuIP/3dg84LvGYM47fN3XXXe\nWeE4fGZ05hh2D02oaG8uX7ud6hONCyKnvJCbMqFvNDXLNpTjNGHcyMfQ+w3O\nvlxGijp9mJLV6e6SippmJkQQxYxCy0KnbH+YYdI6n1uYZxZqP3ew7MXxLLEs\nmRL1TUQjjO4S1JFE1F0InDjeJOsH1y0ow8/XFOFAnOW9VGd00yG350Ph6/Sr\nFVwmYwiMvrqtNETsAbzyILE14TEIZpj9tKZYm6N65Vqv8MHWSQDltHUgzof8\nXnQpFyENfqSyAxrPPXA2xCWK9tFaDhmP1apyatTXnoyvSxa0QDkGlGPROVWA\n1j/D6AnJ1SO2Src99Dsl8/bQwo+x3tldzd97R6jqPwKODKdL0D77HFfuQD6D\nQEtb9jB2O/lXgD8K++yTBRl7bo0mkmqFy2BjWgcLAmASwfvEqLpRZLa7NFU4\n0PORlft4zjtiy/Nekcjm/rWJgDalDTlslAv+MZZItlELLNx60ocwT0g5WLZe\nIGRQ6Vhw9sRksBRCW6C+Z+dxTFeRbH969jG/bhneiUBdsfgcHtX8wLsqIuSU\nQUp+aNUMIh64KAuAAOSPvSad7sbLajtXiMGAsoo8Brs3CPzj0hzd8hElyn10\n4bfpUoQgT/54TN/V5qWWHVkH7MYOIHDsoUw6lmWscmP+1s7HuVD+XfZDJ/pe\nYDI4\r\n=jz8A\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3sJLtHL1sRBSN1R/nRCAM6Kmha7veEZzvCxl/eThrwAiA/lTqgsRyCPvSj16E8ckqB6rpdzjrlKeRnZVizr4Y5Tg=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.6_1610097689352_0.950655245819473"},"_hasShrinkwrap":false},"1.12.0-beta.21":{"name":"kafkajs","version":"1.12.0-beta.21","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"dc10e774abd015d46b7f4ce7ebb72541e6ac59a4","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...dc10e774abd015d46b7f4ce7ebb72541e6ac59a4"},"gitHead":"dc10e774abd015d46b7f4ce7ebb72541e6ac59a4","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.21","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-ZeXmWRD1oor+ic2OoA3kGiU7BgNEKDMnvX+z2sqmZ8U3/TZbhdFcc+JBpkgfbJdt1HmBD39bKbUsrTEr3WfMBg==","shasum":"acb9fcd771d3fcbafba0ff7e1e3ca1fafe868c35","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.21.tgz","fileCount":266,"unpackedSize":483490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHezRCRA9TVsSAnZWagAA4qMP/jIXF4PsBw6Ecgx4J1UY\nQuDvJwGnStpu3NQKF2q/eOHhVJGsHtZwWFIapXQMuKaA05tgQtVamlu/SwoW\nG5YvNpRkbRHwm27nP4dESlJuuA6BtlG6CbHq/WWsBPzFea35I+tJQb15eyTy\nTt16MjMWKXQ2jhBUSOh1f+Tg6GtTX1Da/4zJw8hgXmI6v0eCqqmt4Uqapkri\nRoz0VdQtMQNv3UsXiktgP33/2s4f9o3CxSJnpoxCBjUADvjsHzraOBZgiWJv\nbreRF5IOsXbqm0eSM5Y/+JaVfjOexRBqBSams9MAeCvkxMbWrPbZii+DsgxQ\nSazxJGJoeP7v6psuRbiWdZfFzwHO094PbIismJ5htO32N0NXRrOtkKkD18rw\nxK0cs0RH1gHRlvXoz0fZ4K5lhn6bifRHsqtjAwLBS8TbeiBdb4jXqizaV85/\nFOaRSV5uur4b7RnFQy4LaHFlAw+zpq3Q0nGe/RhqXlXSJBSa0Zla0SOy/XWt\nygyMpzeihFrPkbVoOs/onSEpTrV4sje+kzRpYBwmDXTKihtkcISjOE7yBTsg\n/yNhD101oamPDKczZeeGV+xINtxdtLTrRUItJNHmNQkmXQhZP+FqEecFg0X0\nidimWrYHXgl/mjLEwuWLDue7u2QwDqm078ANeVWItJ1kY85H55/dg+zwSJfY\nBwhG\r\n=W892\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4LullCAlk8u672UoHphUHRPVB3UmMpOlUInPa5xbqAgIhAPsrAenH1ovLs8wI8WZSB6dEsTnXtfmFQa/BubWOIOY6"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.21_1579019473152_0.24146805928724802"},"_hasShrinkwrap":false},"1.13.0-beta.16":{"name":"kafkajs","version":"1.13.0-beta.16","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9b65843638e73dd6d3360a9b5faf45680a184826","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9b65843638e73dd6d3360a9b5faf45680a184826"},"gitHead":"9b65843638e73dd6d3360a9b5faf45680a184826","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.16","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-tfTLh6U+ECPR+RIMOzpOG4hJyLjqUQW+PBoiKlu/quOlFJJ3/Fth4zW70+qDx4nAp4bP7IrMswC/dIPPVt4MRA==","shasum":"4ce52c0ea86f76c2f9047248e631ec7c6a7c0ae6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.16.tgz","fileCount":289,"unpackedSize":513177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJepaetCRA9TVsSAnZWagAAp4sP/A8OoZ8e0XUZB1dxNgxZ\nkn6x5DaDeqh45+zS28mZFfmvKgkBA1Yrp8njlmCDSurp3nF2ikjlrZqXTfDI\nVCt13rOE7IUBfGABwJY1tG3Mx35M6CM/tS55TTzpPPIQXA1BwMNB+v6RoshF\nakt6Vxou1y5jF4Xy9Pwx4LhAoQusE/+QrbETSPMeEuIUd4H9GjIzForbE8VS\nIvgS41++nPxRYwapR1Zg9DGtAVNLLFpO2nlsfWYgzojDjYIIxpcK+WeUkrC+\nxD2OONxbjv4ijfofgz9oK5Vihibnbg7osu9HhVwF59GUaDtq42/mVR0U17lH\nqFmcViKNW62FW+YQULk2pwdOthe26N3IgoU3P3G0QOEI1rhu2QE3wJxn886V\n2c6snGP+Ts3O8BnUVB11OTkxX2WciMGZfJM8uUwHUqsDOJucY6ctYjGn7+Dt\nj3zQyXBL//jvUQuK2Ekbpjh/GYwXwnhwjKQBKIFKv4yqwtcK7ujzaiwhDHeM\nXUxVLa6zyNxdjoGwjzxP6bAZK/vSQxRanCTH+WcspCNNa56cOo8sM98ZIBNB\n2mL7IktsBujAKDpzzQ0lbg2xOzUX11SrhGMV/MuMYFL5YxKImMrlXRabJcph\nVo3OT3bUTanRsGI1odC7EGGiJ8+jZgIrJFlJp5D0GDVY/5N04U30HrVrFAc5\nta+p\r\n=ThEy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAhztMM8lFDnRWKoMaNc7qUMvHRZDVf+S/U39kv+NnBrAiEAmyl/1sdt4Um33BChak1a+YLQZdpx+MbYnm0iiPYThYE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.16_1587914669078_0.0966677611347142"},"_hasShrinkwrap":false},"1.16.0-beta.5":{"name":"kafkajs","version":"1.16.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0252e8b76d1501ce9380b81f2f5beaef0756b739","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...0252e8b76d1501ce9380b81f2f5beaef0756b739"},"gitHead":"0252e8b76d1501ce9380b81f2f5beaef0756b739","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.5","_nodeVersion":"10.23.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-CsxW4N+nNU0JglaPlsxIvTheqUlCqNdQ9QPOfFvt0+fgOkQS8MPH+2cb/iGlu36ik6Y8+UG7zIW1hT6ZOQfYdw==","shasum":"8d1aceae95eb961b6d3da55b2aa2582f0bc29f34","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.5.tgz","fileCount":378,"unpackedSize":682052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf910rCRA9TVsSAnZWagAAK1oP/jFe8jOYhlRTB+OltEsa\nsHXRp8/yM2SpBmsRr8zad7WCTA9Qq1S9mDJcKnFsD9ceOOHQpYOAOvabt86r\ne+6fT/MBBRov+fmD92Ab4CYqaH1/ONjQSg6VZymm5YAc3hDQPCJN6TrcIZos\nCTJCXV+AtPv/sLkqzrWKxUhjk6OWsmGEh0uM6N8GzM/G2ZRGfUu4Ry3Lw51P\njX1QbRKVyREX/BMuWnSao/Of6ZTcE6L/ZHJY90H+VDL1iCGWUIubPOluVLRo\nzx4V9UiyHDew90wbNOHFYveegSAK0Hs48lm3eEq43TIdd6nQ+XbSyQn23SSl\nuuT0a1QyEcfbVsmMWhibEJWmvCvTyTrNsHpLV7vQ+0QYBWflVofsk+jnTPOv\nr9jjrQMn3GskrETxOIZBy+qH0HVQZFt9k4CVCT9IDNNozjRCHVarBjQWoMYa\nisNd9p16ouqk6tlDw4dcOuXMQX2IfCaNrtOSGxACA5pKJ+3dIcYsSjDFaK+g\nxgM4rERZL8TcnpVeI3g8wDTZuuVYQhc1yi7jGedSyxapKZcwLTzt7sscyqjM\noSDDUW81usVPyzb4bo1EnfyUh8/7IRTqFmdKMPJzW3fBDwwPhzOvhQKORbSs\nCk1emlvM6uI+WOYNNXk5gLQwh4ufkFmQfqrekt5wtKEaTnA4d8q/+fYeOUWw\n6Pkl\r\n=rGoo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBdD8G2h1xuebXqzwnyGRzFXs74ZobcHASo2Bgpy8loaAiEAyuYjGuKVkyXEPgJEUDm90bbgWnUdTYsq6mQwOxtVzfE="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.5_1610046762999_0.3793466306632012"},"_hasShrinkwrap":false},"2.1.0":{"name":"kafkajs","version":"2.1.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"df31679db2c136dd109595ee06b755cc24e65eac","_id":"kafkajs@2.1.0","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-6IYiOdGWvFPbSbVB+AV3feT+A7vzw5sXm7Ze4QTfP7FRNdY8pGcpiNPvD2lfgYFD8Dm9KbMgBgTt2mf8KaIkzw==","shasum":"32ede4e8080cc75586c5e4406eeb582fa73f7b1e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0.tgz","fileCount":385,"unpackedSize":713582,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVrrH6GGunxhnCvEoRkZdgVkVdCAhU6BZzhHGSO7sONAIhAKCMgw4II4XEtc6sWD3fnzynqTC7h+YZpxHN3kVxxRQG"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiut+aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqGERAAktoVGQjB8+8+bGJ5AubXW7Mu1xDjq5IGNz0S6s1iXfP6wvyA\r\nWGHOlPLKx3hh2cIVVxE+N67Rq5lxJ+KeK5wX3z3YbchqNJYcImdPe0JoNd1t\r\ntkLn0ArgdNZeei5/nYYf0vDR17Fswr5YDNHHCK9mZ45Sr91Zg9T+rfsYgc1m\r\nf9bgmQS4sve90nF4qB7bVtRcbiXnMJI4xOPXTMCj9yAzUFVBWU8ll9fb+Nrb\r\n2loykjDkRpDv3z87RAMk4I4V0L/q6U9t9RLGWZsTc1caROerI5gIUPzjL+ue\r\nG+yTjR7hUdhpo63iA1nPmLwxRYc2KpU4P7l8Tk4d/QRvHxY1oHFEiaVSL3uL\r\nR9qLcpSpyYnDMH8v4JVbtYpxqyKME6ckj0xVnr7Xt8IjQeFbOnWgCtRwUSlm\r\ncUXx8dlRmC1CXIoEraHI8nJHi/Gm+ju/w7mnCn6lTPtJDquRIaM+QWCkQlxo\r\nqehKCkgRxta4YNpsmGElrd51qoKzCK+Q67tYAh9KSDrGtsIe5nM7IMP8nS/U\r\nnSkBxxRGdRRe0f5tmw+GOkoHsUQZSycNO5pf4jMmHo+46baV2VxwepppfHc/\r\nTipQLq//sQGtAgSP7yojpUF/SYtqucb7aMfqIXuPLoXFcngK99Piy3MMk0Ht\r\n08Z2PRJSzQMwsjzuF9TrUAn98tut5QP5NBU=\r\n=vXbm\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0_1656414105647_0.36193526419795097"},"_hasShrinkwrap":false},"1.13.0-beta.13":{"name":"kafkajs","version":"1.13.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"3601d7a7ba32137179df1e44e2a5fab4ffd40f6b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...3601d7a7ba32137179df1e44e2a5fab4ffd40f6b"},"gitHead":"3601d7a7ba32137179df1e44e2a5fab4ffd40f6b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.13","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-09jfh7hWyhIjdNRrSeyytXKpbqHb3vOli6sa8vLJkkbkGoNubu4UquHPdLhTltrVh3ZX2EAcTlrV/KTVQfaSqw==","shasum":"b674bbea1fb2cdbc7d065847313a5ffb03360f11","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.13.tgz","fileCount":289,"unpackedSize":512859,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeeJDwCRA9TVsSAnZWagAAfdUQAJ62KaEMEoWPV0/rCIfX\nzucMq9QInkaIyTuwkyocYhXI+sug+2TAX2OeHy186BSb0txqX+RnLOAoi1qi\nKhwb6cfoep/ZiSpsv80LpXSO/5SoL2L1PTmVTadGrDZ+n6xArw0LhylhMchR\ndhrJBPLk+lWtDzs4MN9TyeWWWz3YXRTXRybvSMlY9HgsTc3S3hIua5hW7GZB\nYPwWQJnFagPigPeBfBL7H3UYc8swHeXNgdCYctwWo0sFTv4TjywTQ76B33D/\nb86PJDOeUF9aKJOjm3t1dyIGGj8tQ4/QnAAmhTevVQnYaAHcmFaKmia+EgPZ\nN1TdC/livOtgbhE792sm0XJD1vjWiYI0A7FXqdyWlsB9MTt+Rh3U6zl58cKw\nX/+0pPCh34beOUa/YkW1e0oeVU7a6KXVe+uGVDr1u2/nk45tF3VfMT15rPqb\n2/BtHQ4gfjRuLrUjFNAabvKAnBZml23maXqPOe6/qf/UFklBFUx0eGTpY+aq\nHjiFRV72UmbQ3Ix1PWBJhVB9IKRN4HYG/eNiXyTNjaCrGukUukt8YHGqf46W\nPhzqe2OKd6UyBa2s0m+1xzbi4hh8+n2N+SfkAdaAsoLUrGz3Vb6A0Oz+3QHq\ng79VtBmuTyPTSKMlaBnIAKxGutbAALHnVC8GYYURTijw//iFxh8jRoVuK5BE\nmqkk\r\n=tMGn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEIx0UtWmQLRH0juiAWv0/i7abvq3fOCx8giNAMnzx6NAiEAixzr360NAQznGHUD8WLdDFBnX4jckrGf3+F54vjqTxY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.13_1584959728167_0.3503427765847149"},"_hasShrinkwrap":false},"1.16.0-beta.8":{"name":"kafkajs","version":"1.16.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e1a9d9eecd4cfd29e719f1c02cae6e544df0894a","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...e1a9d9eecd4cfd29e719f1c02cae6e544df0894a"},"gitHead":"e1a9d9eecd4cfd29e719f1c02cae6e544df0894a","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.8","_nodeVersion":"10.23.2","_npmVersion":"6.14.10","dist":{"integrity":"sha512-Pbm7/dNr852cCA8TfDf2dyR3RIAzawwooEC2xR2Fw2T+jji/LpKMR9gqT+okxrsRKvB7yPUZk/LLRGAPimT6FA==","shasum":"62da5322a45a4536f30f0fce059e9e0c49df48f1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.8.tgz","fileCount":379,"unpackedSize":684777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJAsaCRA9TVsSAnZWagAAayYQAJRRd+qx+0jO90WKL386\nXw9hbRJnITFs04p3Xe77Onp89FslXZib0dZAXMMgBK3sZ4oOlOfCWC3gx48g\nsS8GcaIwVacm3UwZOOh20cAvM5frY87FduGK2ueoVreEkmcyr13m4LNg2v7s\nzsxVW1WPWiCcOOHFPosgWhVbKTwBOuIhWsr0krN3+1s2moL3SxMhPSwlBMu9\nKt0jSfnsbkdpsvmdEhok8CpFwXjNz4Ul6wWLPkgferx+nJAI3Dp1O7LHg/0Q\nzUM1cO3wD4MPHrJtjl5XECRIgWtPO/I73c65LlpGwn3FhDnBHSfcyOxrAdfs\n4HR0u3aq3WohL9LuAqReRrHB8xxkvOPdrgRddqlqaBXrVQ1BDRi+I5Wod9A7\n7I+8yYcK5W68UZI+CGBjHZNniOdF4gXU27PPCXCiqTHjmTdSQkJ0p9rbqKz6\nKwL1gVu4bdf3ntmXgRXHKrBUv/FzFZHHengRfvZOgBb2FLZBYAW3mwtgN5hs\nkN8ptbFkAcQdBnkMMKTWafMdo4uqYbMvM30lZeE+jN2QkK6bbT9emPnZep5G\n6XLkRtNYOETLMOqErLqionWpvUcnsHXjH58WUjUWF6p9xnLCIdYcfyJ6N7oD\nTRO8QZ5DNNOSbDfCZ0+TsV0sJvlLF62hXuGLCVFecglYUSF8VOsrCxw4FsaX\nzH5W\r\n=p/2L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSbeG98ksiKpjRe1STMfVBTq6/8aN6HVmaDfPjBn+QYgIgSdyBtPafHt5HGgjlSxx8u09LqBFgMp+XlM+Ei3lyXuM="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.8_1612974873540_0.3752088582432309"},"_hasShrinkwrap":false},"1.13.0-beta.14":{"name":"kafkajs","version":"1.13.0-beta.14","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c7ed777f2f213ef0317872ec0dad0603a2115c01","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c7ed777f2f213ef0317872ec0dad0603a2115c01"},"gitHead":"c7ed777f2f213ef0317872ec0dad0603a2115c01","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.14","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-HalJnCM1fP+5yXwjJ0zTeKEjEMuVPDOyo0X6MRBLzuMbeSwTAca55UZ/sLljCzD6n3ED8n5U7K0V7mN57xJY7w==","shasum":"fff7bd4ef8a106687696823e8de992d5917da7ad","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.14.tgz","fileCount":289,"unpackedSize":512849,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeecPfCRA9TVsSAnZWagAAqPcQAI+Qws5yDJIynhmhDN65\n1Awt6nC2L4BQ0Oggwhb/bn+NDr351jon0PoccORZHWen63L1LiLuyru3HRWo\nev1/8Dg8328PiaeHF3YsF1Mlyizix0T2zd5s95A+jPRuYS/XdF4EhTX4QYV8\nyP34Smm17F36kY2cCsIOyeQSt+6i2RK70D3J2a5AMgPm53ijcoB1cziqtbcG\nXtlaEio2YkLo4UD8WhS4hYbfGLDFwf3HBbI6yNyGJEn1MSycPFiBijJGOJQh\nNxtnHSnhievwmhib1TsZTUsf4e8bQ9toQCwfdUlkKpv9YnJ3DuCeXmrotFpB\nDMX574YCBN2mUdpxTKM03SSV6oQKFBhEZw4pPpeql28BOetOXzWHpUHOQPON\nfpCzGnsjXFr5/JJ+f+BcIY83f4dj5LFSnoYjChSWJo3iW0RocbDf68QSJKCf\nbFdefbVLLf50Wu3Gk3Te2zC5ykUZS1i4SrTT9fhci8VJlI+cIjvznpDEUTkW\ngYNcXEm7NaIye88BQ+G4BwTl7gFSbchqmG7M3tcy7VxqsdbmmfopAK1zb6iZ\nu2/2/CDLXaJ8SsXiJxo9Egy2TzeAQSvBa3QvnYC27Ue9pUBsPxfkxZTuMRb2\nFEyyo2tAI9gNZtIyJQWvl2/oV37U+jOBpmTH0DNSFa8jr22gmtAwGlcO79KR\nHE0q\r\n=jnq/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAaNyrU8RsNhLxwpowRsxYdP6gHtKiPiTxFejEqE9X45AiA/aDIC6WRwmx8FHEaUcj30OOuIQFM3TNURtP6G6I0jSQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.14_1585038302827_0.2517064133530251"},"_hasShrinkwrap":false},"1.16.0-beta.7":{"name":"kafkajs","version":"1.16.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"76ec563efe03d98156132fcb43105d3e693e1e56","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...76ec563efe03d98156132fcb43105d3e693e1e56"},"gitHead":"76ec563efe03d98156132fcb43105d3e693e1e56","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.7","_nodeVersion":"10.23.1","_npmVersion":"6.14.10","dist":{"integrity":"sha512-pEFGuYbYMLAWEhCWatcisiwYg71VSGNpTLEHe76OAaMwnrkMfmHUAHT9JF7hcojspXjNz/QolftmRj1mroCj6g==","shasum":"fd1106b4d00a0ca6f5a2f414f1dec3250672f514","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.7.tgz","fileCount":378,"unpackedSize":682748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgF8uhCRA9TVsSAnZWagAATAwQAIJZsbzPoxo6Gqxlp8qd\nb433+FL2qq3t7HPYFWvmxV6nHHfTpsfnfjrrAO6hIhU6CjhtmBALdJHi+jaz\n8wEVrExmurHizO0xZUvKYPfs8qIEtqrYbjQO0P6J68EmDZK3njpjWuIMJ4zv\nGKNf1e5yO9EoTOy3oduM/8cNpKiXiIgfaFGahLb1SvEcLzwr721E8i4Fh50T\nxEixNMkS2cs3X+CG9SWWQ70j+wPa5obrDPvIOZ5LNN0hrxih61S373MN48Ya\n3umG9M1J6LgIU7FyDSN9EtwS1yIRkLpl6c0zzx86Kz1QdheVtTy9c8r3mt/i\n1Ia206hZCZ0HQk5jEgO0D2vWtO0tYA6IrIGWcXtVm4jXYwEULFvdxOIV4VBQ\n9YJB3/D0rneV+X4hhD9GOmGWi6B/FDfYsBSnOSjU4fkNp8P85RNN5Y87l0OO\nl7DFIRl6gZFzvNudBKU0D2poW1Bm7Fu38J6K5/2njbvFOS5aTZFWDm7hvyvm\npCk6l4pjeYNLUAC0FtXMY8k6A9dU3FiL4/OcJvhwsTNTNWgjADFymSP2qvHV\nNhEMKJUw9a5M3EShwKJ/RFrdybiNF+zWoKbXL7KVbrET2ed/sXUkkKUq75OV\n8OWhr7tK29WQRWO7r1IJ8IJee0gHaMrGyQHmD6bgOLNBzWIutakQg3FaXqNu\n1i8I\r\n=ZojM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID3YruXyVhf1nyGtzv+Fo1zyCibh5+6qtlUwHIqGb5yQAiEAx14N/+xpTD85ifU9CC9ed+49DaM1XxFAUCvxE3wl2H4="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.7_1612172193112_0.7938787463477615"},"_hasShrinkwrap":false},"1.13.0-beta.11":{"name":"kafkajs","version":"1.13.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2def29541d3b0b55df3cbbd71ac788cd4048e77b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2def29541d3b0b55df3cbbd71ac788cd4048e77b"},"gitHead":"2def29541d3b0b55df3cbbd71ac788cd4048e77b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.11","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-brskje+4dyCzf091BxBVpuAnXay4nNauy1hXYPbDFIi1UC3eUzvVB9XimK27Sjtc4bVcgF1ATfuvH4vEegXj0w==","shasum":"0ab12b87468ac4d37e7bcad3ec7eb4a7582e340c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.11.tgz","fileCount":282,"unpackedSize":505883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedL/fCRA9TVsSAnZWagAAnzUP/jcba4MUZGT6ObC7mqVG\nkUJBzaXwu4w/JOLd1JlDvYwOgzSx/KJDM1SjQDNFBdZb/q57F/UoSZIM1su+\nLC2iMRqkapOOOORp+UVsvjmfB5yKuetF0aftOxPDrnGMjcQUxQw67sWA5yly\n3NcTj4YPdjnSyeeVw29zqg3dXrWoYJYW+umi1QKlyqjFREMfkJsol2iGQpAu\nAfdnPUT7IOtkolS/fpin0fZNY0CgUJOk4cSsWusAaYgcq//JO1mePFcjfVOs\nHFhIv/cgcQ8xfIRAV4lt9K0uCCVM8JWK9VPT3gu5750p39H8ra1oagHV7Jm5\nGs2R0akCITsxCbJ5k+OTfCiK9dH+9ZozAIrltEhla5CkABpVGkDN4QqtVvtH\nsnBr1FGYC51NTx6G4+8s1wy1hVW3a9ToMxt5otn0sCbDrOETWGBE/vburITP\n8InqVBZBT0LMcgDCM5TpbScNzbYpLV/k1rfo5KO3esi5pS5wuK1+CkQOOPib\nDEo5NcR9qMlWynb9tBQGYgEngTgMVdgQIT5lbrhzwVp/gMr7/RAurEq9AtWu\nFw/ZoGSLjHZE0+GgAhXpkvvU3Te++14fnIG5UVDxZuAoN8VcnR5EVyh4SvhN\npr1NfblI8h8/DqXJhK6ibtNyfYGeUDmhwPyTY2fJHq9moXfF0N7zo5omhYQb\nZISo\r\n=1VlC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8xu1K8VzlMciYpkXQ3qwx5p1eLNzzZBHqTEvyGcf6MwIgbczbi6qaxyhDS2OP1XJ03J4c5PbeWpcZlfbmEQjx6hw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.11_1584709598072_0.06668362964967423"},"_hasShrinkwrap":false},"1.13.0-beta.12":{"name":"kafkajs","version":"1.13.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9951162b69a710ed98a8967ca748eb0aa8f3af01","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9951162b69a710ed98a8967ca748eb0aa8f3af01"},"gitHead":"9951162b69a710ed98a8967ca748eb0aa8f3af01","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.12","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-mS9uTKGcl3pbckJG14Jbo4VFR72Hb6dXOtbOv2wxX0vnXs+pKJYLEdbf87WvRYyF9v/djToKewyujkDngqR5cw==","shasum":"f23163898899faa35cfb6d254c909506685ce0f7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.12.tgz","fileCount":282,"unpackedSize":506425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedTZ+CRA9TVsSAnZWagAA5cwP/15dDrUk85inbr7OxX4e\nYqzezedaL5HD75OTHDvLJ+MXLkDdJ/COGm5EKhml4rR79toYE0vQUzNuaOzr\n4JzFisFT96ZBZRxpW70rHX1uFZkI3m0kYjCj97S7m1uoakPEOx0rp1+hQVxl\nB4M3rqbBPNxlew+vpWPhZXUl8Lv2+AB0bszZ/PZI7ErPs4ARWunQSOa1g4UR\nBmfc5cV3Ue3HoXiF+rOOhOKyoX8sYDsHgEY9u4sqYAsaCu7u+UWpKrV4uAos\nlBS+7+hxmf7qHPAatuvL+60uQ/Ylu73LQ/+HCbfx8YW0959oEfhUSBZs3VMY\nS4V+Gy3hmRwBTHXEt/MSeoHLeL3VQ+CSPiG3Lc7LWXcP8AzY7XSFL7douCGB\nJEFT2IO0eaJSzTw0qaWWmfxWRtMpuYhmonvscXKnGEYGuJrwqsjOumF8sCYq\nzZt2LAPpXq/Ey0ORRHMEwXkQ/h+K+SukqfBAtvflxoSqRhM06McBbef5TVKU\nXutCb2MiMuU0h1aOc45mGaRgjimyKnHX6bBj7dVfzXwAi7dumIkIKKodIAry\nVRVC51qeZLML2KzSYPh4H7w9qzcD/sI4FlntCPX07W67n761CwnbNbpG0Uxd\nN+9fea7PasPu4KXiu8Z7WBqaosXKBFZebOS3Ts+TkvmZTxglsn6nppGZlObu\nGevt\r\n=GoYj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyDIvLhMVv3TvMFo1xzZWqcT7o+EitHrkKatuRWhDImAIgRcc8aeOKtsU91Xlf7U0aU7JXj3tP1Eve0hhiUlR62XY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.12_1584739965536_0.053989209937930216"},"_hasShrinkwrap":false},"1.16.0-beta.9":{"name":"kafkajs","version":"1.16.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"cee47177fef66901bc1de9f6adbe24cbb18cf4df","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...cee47177fef66901bc1de9f6adbe24cbb18cf4df"},"gitHead":"cee47177fef66901bc1de9f6adbe24cbb18cf4df","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.9","_nodeVersion":"10.23.3","_npmVersion":"6.14.11","dist":{"integrity":"sha512-6RBHR9WiG7vHJqrqSe2rEXz+sFikaY5VKGlAYlBe+ZPEEy+h5AkZjiKb+88Dce4W0oq5XRzuZwvjkmtPYZqJBg==","shasum":"1829e60c66b21d5c51f8ac5323ff7462a9fc9341","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.9.tgz","fileCount":379,"unpackedSize":684776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgM5rvCRA9TVsSAnZWagAALBEP/ipXFm+6ZCt2qjFVmKCD\nyD6Ng9Q8CZF2EnK/O9mhJXEHQTjr5WMrbT9mJX6FSQmiPHR2ZZzn6mQEJEQg\nUoE7NLe4MOqv5I2NsSPUXbT6rnaxz1TXMj0uAZmwzkhPBw1xXH0c/wwKAfZN\n4kbljWNYYhmLzzpcZpw2AEt9XuqW53GewsH2WVTWG9kAWC8TvkJbSRVIEyv6\nnmLzwofyTKhiERrr/wA7KWc8DcAlLV8zie1fH1meyrfugBHQn16dWU/Bpp5U\nDluKEy3cCiblHq6Lcaglud8je3UKEyXVc+iMKP3aSLjQCYyG83jhK3qPU9ht\nFaTQWi5dknV80FzCXfvIv1y1UbEsgQzo7ELDnxTfFh2PrbC6QBbinG/Mmfmr\nP/wy3ysSnNzjMtDsJWV8cZkmtQ11zBzWZm3smnMNVc/oxPCWar0RjJSGUKhp\nwJeVB+yoCUTBxa3lH3uw5dGhOIMgF01i01D2ZtNyX2jd2hr/rpNdtzOWUM30\n4BpFPXIAdBskAh6wFR7qUCNcEOEe2u0vkQqlp8hEvYi0Igdl56ScoRDD72L9\nsghPva8G0HC1MuERHxjN1IfkIjm4/7V2TyxGgAVM4oe6P1lBGXJ4j2gG4orZ\nU0TE3sNxoK7xAVEmarItOFb9ocify+ANPtCSFA5X0fqHsMHif5gDyrqVtqhL\nDVBI\r\n=j375\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8tVAzfmoqy9Pqjvjni4ni0tBIljz9gyfgGE/YVMgn+AIgC/m5AthoW5ogFF3GnRYnsjTP+4h3dDyDkuiUcnzs7tM="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.9_1613994735294_0.5828839601568172"},"_hasShrinkwrap":false},"1.13.0-beta.10":{"name":"kafkajs","version":"1.13.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"897715fcc812820284c5ef3d76bd07bf4fac1478","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...897715fcc812820284c5ef3d76bd07bf4fac1478"},"gitHead":"897715fcc812820284c5ef3d76bd07bf4fac1478","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.10","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-rVcpRq3UUb8i1/ZsVU3fRRlpt+wtXAXwtCNSGdGqf4FzszTQeVWVF2X7eMS4G9hrj4pF8BNFv8Y7ifLrK5Ac2g==","shasum":"d764cf6cd94f7840874359738765de3005a8c0d7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.10.tgz","fileCount":282,"unpackedSize":505833,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecfGECRA9TVsSAnZWagAAoIgP/2a8VXapDYIQabSb1VXi\nToKeqhShkb6AGiP72iJXXxBo3jRmtP3xTq7+Jm4BkcQgv/d+z/VZQ2ghT6ff\n2iUz8SH9E9wiqGY+oVu6nSqqxxBY1Riu0WvCkD2me/swdtNZNnkLrHgDGaw4\nlOSbcFdR04+QLmDAVpPaf4DhhvsowhsxWcJ5+nNZcWboXINHP7sl2I45zRcd\nafA0tyfdVuKhQ+ybPxZaXs1dWnipzuOhAoSDuTJvgD0SfH0Ss+45nWfz6aXb\n0dBhd/yBfpUGGtS69PNG74R5dKkP7/z+mV9xnv/P1mNLzPdaWSLSGZFWDbrE\nDtL80QV6y4+2pKTq77+sQbOZWd2mVlOoyjbifEzT2RdUiCF58NXndNTGd2Lc\n9zabObrIW2YKJ87zmw7KNb2T3qo/H5D5fWWvD8uhIzs5qPiolN38qiH76AKp\neAWgqwPwdNW5+Jr6rbdrcJwH1epi8ANLjSkrOKNyHvecp1Dt6Ui0LDsa6Aj9\nO6k/mGSy6TvPqtjA+wmKJfHxkUggwMq4caMF0wl+VLcqyr5/BwxEivoZAWLL\nzKEYj6/+1wArZnGx07g9mmNImi/p5PjPEXgYJ4N9zJnF8QXlk2scvgirpiHU\nhy9sHYr1tM7jMQvoqQChGexlcSWhn0gcw3kTYbCV54am/5BftkdvlfragoUt\np25A\r\n=vGk4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGKO6H6Wv7aZ1AFLwq4WfA2QS/Mfv3fT3RNsFTXLf7pIAiEA6v3M41bUqmYvzBbewW4NvnCrTRSVP0aROOipn3Qauck="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.10_1584525699670_0.7171139301017648"},"_hasShrinkwrap":false},"1.13.0-beta.19":{"name":"kafkajs","version":"1.13.0-beta.19","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a67ca64c048635d8f1d7507cb0315479708b70c9","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...a67ca64c048635d8f1d7507cb0315479708b70c9"},"gitHead":"a67ca64c048635d8f1d7507cb0315479708b70c9","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.19","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-W+EOo1Vh9FOCbiSjpErQ8dE1Hzh+pQtpfHEjrh8MypOXdg9/Z20B5QBmKrxYwE61ncOJxspl2Yem35CfN/3R+Q==","shasum":"dab70f553d75b9903650c4479b321875856047bc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.19.tgz","fileCount":289,"unpackedSize":513136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetFa3CRA9TVsSAnZWagAAM0cP/jpilNWTfobqVjiKZeD1\no4XusPUUL0H/DWxDGr0sXc5mhJeSYzQwbtLTD7iGJ44OHlZ601V+8dBqrJUY\nIaCskckHIfEv/9IdJTTazxc9Kcj/VbHxU/z6pf2qqMaTlpu9aRraXVUjiXa2\nbGvp9nOtndGVktIY0dlko+KE+Tp7jiQGWRmwFIcOFR6UJJ6l3+nS2Zh7+sJ2\nyNBUXSy70ZOl7AMco0Ae4zldyd5G19wdyIgKm6cYrJQ5prKy11drsRkYjl6H\nEzf/dvfKGk5ersYTEg4gLNa/uqWEIKDQbzVkfoFH8MxCkTAyf5tomWaVjT8B\nKtPu9scmJGXVrtrLde72ZFjiMegxS/xGaPcBSPLnisvsFRtWfYTqrnvCXRrt\nXVfu854yh/uQxdY5R488ku4xEX/szihHF1u5CxeOATU32UUPPUafTWesvPPz\nimmQrcf6OtT1A26pvIWL6LRSgVzxrE6i1o3ZQo82Bcd8X4k2KDkSe8fR3rdg\n4JhKpuMa6BkhkKA6OjPhJPjNT94PArK2YUgcB7hH2/OTN6jV7oFg0BaEqUQa\n7BnKR1F2Z+16R3uKY5m1SFDJxoMs5xIjim0e0FXhOvxvF4urjLlsMiLHFVbs\n5Q/yVJ5M+g8Un8X/xgRLM+I7sGGiWPvKJDjwB2bPmgahAtSP9k8BDZyoumQg\nODev\r\n=BPJI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFMXTqK5LTRVPTbcI9eem5c79LvpM5V+2DrW7aZLkMelAiEArTwzVqfKOZ4nSyW8UTY1G5SNbbnljfdWchBrkHUzCoE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.19_1588876983322_0.19211958752350555"},"_hasShrinkwrap":false},"1.13.0-beta.17":{"name":"kafkajs","version":"1.13.0-beta.17","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"cfbb49d2133719683babe07c9e3d33068a3dae4a","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...cfbb49d2133719683babe07c9e3d33068a3dae4a"},"gitHead":"cfbb49d2133719683babe07c9e3d33068a3dae4a","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.17","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-3WRjqEkM0MFT9k8VZH1DshEtB2OJtNpewFAvVqsHkMggsvU+pG7pqMsCgHlr+xT8HlXq9hNNdOWP0EhyQnTfRA==","shasum":"80173c770221eec1f134ee3c32e1f4ce0c6b7675","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.17.tgz","fileCount":289,"unpackedSize":513154,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqSmiCRA9TVsSAnZWagAAPTUQAJ0ov6751FzFxeFEgYYu\n+3KaI2gcJSNTqWgDBZbSyk97zo+ArVFAZRwHOp6BmEh6c3dsNF97qvv7haXY\nAtRtJ4Z/Tc5pfav50/CmCXgBxT4In8M262lxe1uX9faQdL8UiMeFbwag/M+X\nD99Eh4+maRc2KhrU8sdKq1HO70WG7WeNnSMAHtUbGSNk4Z5xwOIAZIcsl9uY\nmY4C1r+3dt9NBCzDY6DDD2gzqHZGJ71kLmT3itqGdZn2fo6dP2/XWSD4Pz5M\nOn9e3duwabvNvyXhISHQbX4txfP103u8B0tYWZzh1bK1fsXi4lLGpGaFavM7\nE9CAH/zguuWpOUd/yXuS12SHc/cXWsCVettZUZpoD4HcuyYg9jQ34jWPna96\n/aMar9WKFxOApf+w8f1dsoJe/Vib6lcwxgS1rYmJIp78SYfFAGq34Rb/XoQM\nqb2AOoLkjGnaBZUitU2H1xhvKnwZ3xQepCIn+vmHsTIDjC2UrVuAMJaRIJ1H\nSnWMKYgTQpeRLKGHg4XjUWRhFvmfeMw/TSDmwKdem3xkaHz4NH1fxLwQvVbh\nawcJLZU/dT0wNozFN9HQvvDaDyCE0QBI1CZIszQS6hfn6hLSJw6seJELu47P\n1QhiHQ3xuiVEibmYZDfYiqWhvfYbbDtYrcbQvsT2O6zh5LcFg6SsT47xQAt3\ncwkz\r\n=G/a4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEMi+YjkD9j9MNP4UsehlqH85+NgG2EFxKPK8SOagl9bAiEA8AjS1MhrXijOuxY2HuI3+LZa9YLNJ27tbXesaO2W7ZE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.17_1588144545833_0.9038006296873713"},"_hasShrinkwrap":false},"1.13.0-beta.18":{"name":"kafkajs","version":"1.13.0-beta.18","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"985d1db8c092471f6c849d6809137c87bc37c93e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...985d1db8c092471f6c849d6809137c87bc37c93e"},"gitHead":"985d1db8c092471f6c849d6809137c87bc37c93e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.18","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-NcREGGDKtKGJWsAxBGKDyvEO0nnKuyRzXeksWxuqNeNrv3stTJYSvFexg3MdcXDFtNnXpIT1QuqPm5LJjhVQ1A==","shasum":"db7fd98eed747667c9e9075b5eeaa2216faebca9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.18.tgz","fileCount":289,"unpackedSize":513137,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJes+qsCRA9TVsSAnZWagAAmeAP/AxU5amaGXgMVsPp+MHG\nxZO0gZceeWgRRnIjqwIoaG2412xRO91mImQOU0T8TlIRSmFFiR1M62x+sHts\niD2bZqDcwweHoYTLYWDHN257Jn4iPb7uGCEhBNOraW8+qPCRxuAEh1+adj6R\n+IWxXuxWfMYz0ehjyK6eR/S86SV8ZD/g9dTYa3NnzuB7/pq8JgJS3R9+VPif\nkIlw2xviTPHAgjP6XBYco1aHtXM7sBdYT44mcYJRh6VS3MBrsa2ZO1mHG+7t\nnmUAsUNwGi4xSc6LLIrU4++i33RTi8kWBi4Xdx/CNpt550/LTbdWxRAboEPP\nQ60O94ks5C14Q3x3wtHGjcmd4ojswiiSpwc6J/YCliW3QhpRMaSRwn2GvwVb\nzFYl2UDctxQVzgehqcKNKX1DDHB9/yNYdvfnDV8Hn2jT74v2xDyJa2HyxMtI\nKg9Cz6E9hgeAZ9G34Nkl0HbNtye9lJxwcA65303c+jnwi+1tE21CG1vGTBqd\nO9BKnuokOdK9ZTjc8XUv263DWavuiLTPGy5s+S4Zx+aOwdd2WX8P6tWmHXmk\nfnc4tSIQOD4LoszZaCE8o9Az+EFoxCJIGVmPJjNUQwgx8lM9AsbWOA0aSpwf\nON6cpWsPVUVfzyiWcYusaPRIpyeIKdYlCki4tISM7Hwa1wqfqWPHJzybKIfK\n18rq\r\n=8n9i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDI/VHTBicmh7mjOLlpSc9xyT9cO1wFD8QVSZBZzchjOAIhAIlwx800FXoZFx3CKV5e0SJw/H1h4rZ28h3/DiRe7jUP"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.18_1588849323451_0.6519253936916021"},"_hasShrinkwrap":false},"1.3.0":{"name":"kafkajs","version":"1.3.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"17be31fd17227ce7f1fe5ef7eefdee44bc266d86","_id":"kafkajs@1.3.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-4ed2X2BmENDhxuFaanVR5fC7P9sXBjvagUMY5J+tFSMh/b0spC06BRBePWjUHLCj0u9s2ZdYv6rFkzmWMVkXeg==","shasum":"1ab046238a578bd13dc1623d057b57b5ae8d4cd4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.3.0.tgz","fileCount":160,"unpackedSize":435891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaBM+CRA9TVsSAnZWagAA+5IP/2rrefCbEIVSrA96pb+V\n59Chb1tofjP0oyPxvib/mDzfDf8SsZtQWeTIqW9mLY6b432j8iztJHekc/EH\nIiOSmXlXnoSvHYrArco5/O+ppNesU62kGiEzvAjt2Dss0HtDsfKtmegVGyLf\ng42U5cpM07dtJ1spVYpeehC2XMPsbswJr8JrLdRtFKwcH8n8YNDsIHq23XV3\nTVhpm+WxHZN1A38D/cgZx9uw2xDYPoWcgeX2aXE2EsxInni+QTObUrFylVS2\nY61AiyfYrRp6IWZNX5EXfoqyp9UylDdZmV42iUPr+ohJr5J6cHSmfEhSNRn7\nWua1Hehu4U4VoWIrFmlW1efsdK3bj5NXdTwMHGZg2cy1Szi1XYSMUxcK4DNm\n46BCADf5Gj5eQMoJ9b6A3DMH8ZnC9Vx5xKZKWqS37RLJww5q2RDwlthqntFK\nqfbnPLeVg4eTAJPE+ALaQ2TkF7WxCUylnwzYOEuwez5LnGwdbxSMsE0zfWGc\nKg1do0BUXIDt51rwUJbumtCOJ9lJF4ECTzCQDarh6tNtlswB5LAcvx4SjQUl\nscVUM8pfhjBYZ7FKC5GAk/pqiR224cDIgdwbro7cPrncKEz/7zRoQ+sM4XDJ\ndSG/DWvOyHbkWCqlYU8ASi6LuyXuMP/YrNyvnFLqlVwhlOShqduU5bcOp05o\n2SRG\r\n=Zs+F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEjzhKZ+0E1dIM3akbjmfZFFaRmShPcOgkabrD2PZHQgIhAMUvdkWVheU192Mrim5lZcbMlI5WrQEYC4JCU83hG+9B"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.3.0_1533547325700_0.2323708664755142"},"_hasShrinkwrap":false},"1.3.1":{"name":"kafkajs","version":"1.3.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"NODE_ENV=test ./node_modules/.bin/jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"NODE_ENV=test ./node_modules/.bin/jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"NODE_ENV=test ./node_modules/.bin/jest --forceExit --testPathPattern 'src/consumer/.*'","test:group:others":"NODE_ENV=test ./node_modules/.bin/jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"NODE_ENV=test JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"NODE_ENV=test JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"NODE_ENV=test JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"NODE_ENV=test JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"NODE_ENV=test JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"cfd7ebb9a8b6e385ec1b14a0dbdaaf52b064395c","_id":"kafkajs@1.3.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.4","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ghtoE8+Hdua0t5muqRrQQ0g25gJZaR81YlpffIK3zovEZ08KNvIVqcOt7Lp3OIR68jc+y79LhvgG10oqfgaKlQ==","shasum":"a8feaef04d81e39f1dd643ff6df17bff477aab98","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.3.1.tgz","fileCount":162,"unpackedSize":441191,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbem/DCRA9TVsSAnZWagAAS2EP/1yo0vJmMl/MmGAie4Ek\neCPQKRTODWX/snkxKluSioLwlNurdoNIy3idQTv3qxuBricjgbdzIqNiu+oK\nWd5uAXqzU3OB4tWCC/GSxe0OnP2d5M3+LfFtvv4aVnxUbeLdC3dVWC//Xxmk\neMZylAecW3zxBpqpuFxXh16Emz+lF4WvMC53x7gfZRkfF1uZilhwOVlEIeZ1\nljs46vf2yKpW2OnM3BDiATDZLzXm+VjpTUW3IVf35JI6dAlpgqShKGaDUulo\nlwEHgJCcQxybyRxNZTtl/hMmXPiXCPY68CR3Oy6GSQzwunGwFrHwY7PiUMsG\nZepfwHRUiLqfUzjGgRE9u72xRliqAVaY2cFX5O7Z/3vX1HDerWB0p55bKKBz\nTPMbpZAncH39zFHG5hU+QJ6xz2n3gvxHxv9GMU7qWsB2X+7r6/N+w3Y75jJh\n1fPPYmjZqXwoiIWTeZFiYNJxf01Y6Eg/3N5/d3OU+hANO7M54Df2WrKbMbS2\noycQ2n8zL23ll53qQHWSkCTgpfom2vJzfs1svxks2pp1tH/6vjGxXzatbmMy\nc/M624wovuiHu4874DzXA1rXopEk8whkkvf2P3Q0lA2N18GAXBRRb+uSvuAf\nsnhP/GsNXCIEbZDidzhV7e+A/WAjoq0WGN4Bay5WSSeCZT7PMPQPyDTdX+t6\nwENh\r\n=HNZI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBaepe91PqhJWkzdTOpy46N3J+mEBvbYQhqxtcDq3KU0AiAYj1meWtekGXslvnLwhwScKO4XmxZ/LMdu/XQKdJcaLg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.3.1_1534750658797_0.20981570302913233"},"_hasShrinkwrap":false},"1.13.0":{"name":"kafkajs","version":"1.13.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"c7e18ac27954497c71bd78a443523360b3b950ab","_id":"kafkajs@1.13.0","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-T5lD44PsEPghNCTWlqab+PRepyxDvCLj8t6mC3r4EazKdbXT7m9Ep/UpmeqGMTcjLCcUNP7saT1WWKKlfQ2lqA==","shasum":"ee85c6c1ccec9950a9b7ddcead83f70e6b4c1343","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0.tgz","fileCount":302,"unpackedSize":559395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWhdfCRA9TVsSAnZWagAA51wQAKOY31nE0EiAMU/w2yMp\nQ4HSb6z6W/wA72Zy5V1g4Wx8LTzDILqEfltaRPkRK0Tup6qkiYYgjknfxd3/\nBOWapfyLS8RBQLP1d6bMoQwYvm3lFR2HcL3vgZG9DbY6e/OUnbFpXrwK5oHO\ndb8Mhb27XwiG1XkLvLN8ptViiJnBYusCyO5RXOjtfB0N1A5XgeeX2FBAMEcD\nKjKtEf9VmIJyeXMRqwjMF09HDO6n7hLpgsQxDkdymhoZKgN3XI0flW7G2hZp\nVXeErP9nYLx1M/aFzvB5l0uT/e2ARo7e1EykaF1Lf2RMvIVfYdPtRcop3ExJ\nO24jM4chTh40WosqL0KeOQQ6+9fgvFvxoj1Ejxr9ByYWsQRJdVSl1/9YnRLl\n46rXnFEsbo0cYSBT3qPub+y+FiSLEYz+SsFx7lXiqQY8Cr883SnnTuJbz5S9\ndfpOTRGFdMvxJEmcqdCfkfClqijaCActb1E2En9aBrL2DkNqdi3f1u2RbPiw\n0wlxQT7fYqWQejmFYO5e0BoehozDEuaoh+oJryc/VRbOav4tb1baeRvaKCvb\nHere7Vba5imnGVh+CWyRSxxV78+6TllfHhf34XmuS/gSdeexIWEPYCDb9M9o\n191A7bkUy7ymZ/Hrhxu3txF22eKULdjzP3NYJW783S0DXYw8TuL+ka6fGVqa\nkvhx\r\n=e5aW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0L/mW+S5KT1kNRrkGaGVBxaxbgpFs+oPW+WnJHa2+XwIhANrcgaoY5yJC65VjCdOHix2HUjV4dn96Y5gTm2r0XSb8"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0_1599739742840_0.5345423101896831"},"_hasShrinkwrap":false},"1.12.0-beta.20":{"name":"kafkajs","version":"1.12.0-beta.20","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0b70749931a1be3bfce81ca48ad2cf744e7e5e23","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...0b70749931a1be3bfce81ca48ad2cf744e7e5e23"},"gitHead":"0b70749931a1be3bfce81ca48ad2cf744e7e5e23","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.20","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-P/CoIGBASxb9zCOCuPGg4eekWdEciHGQ49BRAND9WctioTs+cvK31LWsGIH2MZHTvxq9yEOKvZjDoAJXtYTIWA==","shasum":"ce9d88e66ed6e72fac7c7195903582e9bf7cb48a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.20.tgz","fileCount":266,"unpackedSize":483395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeF0aeCRA9TVsSAnZWagAAiV4P/AmLDlb7v5Y/onS/J8oX\nBqvpxCuwojoQrJVQ7wVU8hIDBDBXWMe5hwYCM23NLpK/nYqSep2000WANTQa\nk4bJjUy1tikD7IQ+ZnJje5nRUsNBnFOlYhdUe3cp44n+S8T264gvjwTCrhs5\n0AebY3YCxz8TfVpk3DtJdN11Ct1SWWSCvNl2MlryEnTd8aFXS/oOR9asI9+B\njlZZ90MllUqt/wXR52U3oYdBTCNN9dW65cHWHDw7x1eCfN2bnxqaxFxKJqt/\nYQ1ZJtSruonc9gM4u4SU/IK3n96HHzLxDxnf6WoVfBxy7sEM51854qrHQUj5\nigDmRYeFPxzWYyr/g7wMYeF4dO25SoO769ODPm7aiKHqAHAHUoELBx8aZtQ9\n4P/3MRUFth/d6g5SrI9dzN6ke2WesOM7SeoofOKKjT0A9nT+Ns5gGDlgghWs\na0OcvAHuR8u44sLxCWXcz8kZcOtc52nsGbUM+BK1FcKe/8WhIvLtEqe+PPUc\neZ6G3ENV6AyG88JCtj9dOHcA4uXDO2yO9bfR3wpfowtFT/sO9jZRoeBIC8c7\nyHv/p7J7Qq4905zNT2Cz7Xt+k8XMwTA8cdPguGq+W+H5st/6IJhGK9FK/FqN\nqRkaO9MnWeYtQku9IupIUUOoLiPP7bTnr5rNaic5cvdGBbSQ+9C/ucECTL55\n7C5Y\r\n=qGnZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGzwN0SHyszQ3wiLTqca/8lwYCAssCT/GtjgR1e3QF4ZAiA07QVRwOHiyE2TPmhGeQ9wMOO0KzpSnCgKGcjt1ErI+Q=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.20_1578583709883_0.29226859497431534"},"_hasShrinkwrap":false},"1.13.0-beta.48":{"name":"kafkajs","version":"1.13.0-beta.48","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"010066a0640701350cf759ac773f866f5460bf0e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...010066a0640701350cf759ac773f866f5460bf0e"},"gitHead":"010066a0640701350cf759ac773f866f5460bf0e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.48","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Ix7M2UYzDMRHBe54P+qWj4JrST4pWT9i7+8ax0+yHv8xkFEYds9LnXU1F3zNJCvHHvZ+Un1prDnuit5saAb49g==","shasum":"646300a10fd3519dcf6c88ae22e13928c8423a7f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.48.tgz","fileCount":287,"unpackedSize":520562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+YmrCRA9TVsSAnZWagAAKo8QAJd7b/8NhRgs4x3+I9aw\nrTcLgZhbEkfgGszfY1IgemYJV/3U9ae1lMB+iyUPc9sB2Gbk4ra2+HX9rwB8\n6keWUHgvkif8bfEcesIAIydufg3bD+drk8hfBuLR6QWR3WjPU7R1NK95NuNb\nkf3diTF34QqO3EKRXNW5J0fgehLB4x4GBRJUQcI9iAzTDMo7PWcx0B4/XHP7\nq0LidsgQZKu/utKnGk/1PusEpX/hmfWeWXxoouBIz8/sG7PjtSxQ4dvYS6A6\nq542tpxRJmq85M884MVahTcNAhMYoRnBhcrze960a7DLXWPFk5nKc+HGpOCw\nnOox/uLq7vrc9u6o9ks/QyBaQ7lS68xUxC0DUuX0ZANyg2wlFMgAaWfQn4NC\nNnVR6uMhu5Kr2zLIneAxEhOjCqO7A2Vc78JlTzZxgDGCc5mFk0kRKIc9m6yQ\nALQTvP8b52Qt6m6UN++MHYN4/roO6CIeOlxwlsDDRsDzO+4Utr/43KMEKi+y\nsv6MN29OKC0GDCgGz/o1YPU2aLLDcX0fJcT2fh4jEuZvByop/UllABE/n7ws\nRxJRyFJEMjwrOpZEB6k0ehD00JWlnEVrAkLqCUyzj2o/Audp1gEc+Dro5wKR\n6ImutJxVRSFTqd6VgOOCNeKz+vscjoso9j0S1LydQr7+Esj9lcxZk1ksVQt8\nQjYo\r\n=1hsf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJLDAZ+BAE/WM8IJQNiVI+DAfzwK6aAQSeHqAt/00RAQIgXTc3epv9cpghoflPOX1+rnVoe5XUWF1Ummvmeare3zU="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.48_1593412010559_0.9453972557205208"},"_hasShrinkwrap":false},"1.13.0-beta.49":{"name":"kafkajs","version":"1.13.0-beta.49","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"3b69554ee6716934ad6b37225cb0900d5382edda","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...3b69554ee6716934ad6b37225cb0900d5382edda"},"gitHead":"3b69554ee6716934ad6b37225cb0900d5382edda","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.49","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-g+uqDinWuyIUMmgR3gqIV79xbYAAvjzxSFofaVkq5Iu+81HBJPChTdqkXhOsl5phQtQP2P5s2RMod+kGZzgiBQ==","shasum":"e87ce59adc84c790ceccb809b9ea9820fa5017a9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.49.tgz","fileCount":287,"unpackedSize":520604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfAu3tCRA9TVsSAnZWagAA2FkQAIDmrNfcPLpy0Ikg1ILR\nJGq6syboS1GX+5NUs0VawHALvNiC9rgC5xA6ftO2djMrpgncTCg5NVsHUH/z\nZ1xdSzGSutDhipcFlGVCkcNFa7ZkonqeoEAjS0pcuTQ5IEOyfy/Wajsro+Vh\ntr6HP7qf98mvX5llBcHAOyJ4es6jV11hYgGDjKnBwfa8v58uNeJiuxKa2jus\n6b5ZOnhymdrWrXBKwlXxezMJZ8gnTbJE4Xo+XT3/V4a5sb4gtuTfdxMulRDM\nwKHMI50D85sDebpuUj2Eo/64owpXMG1an4B8ctgY2pMDLFisVgPXTLhZcIx4\ntLIjz05Umw9ccYNW6czaccoUhwEqX3E0ZF7dT3H9yxeVud4jGvBkL+/6oXDT\ni55dDekVZ7WhrBCYiR2gIoK0Eo6Zql5Z3T4lOjXPjTM2CMF3EQW7u8Fp4dk/\nA1GnaahozQC4ISoU9xnodqxxNLbSRbKJCRMY7reRdBo4OXrZzy60p3nTyMre\nAUSwW6lMM8jHX8IFz3UDwNIF8B0Z5+fm7bMxRdem4gNoymH5bdENMuCRNz3z\nz6ROQATGo1wh7uOZ5aI6H10lH2NSBzCGLLT8HJtNCh9lhg6Y35ciQI8aVU/l\nql8zCTXBEVM5mAjZBYZ41bCtznKKdY9St4vw36z/17FmMwkbobZwcVQX7qBf\nx4UI\r\n=2xZE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYQr5uQvZdB5yajNwHZ9O64EIB1uqZpwBmvPT8jJxbpAIhAKe6CAcoKGdUQqzVsJ/cSvnHePgRZbSRST9Pme3YGgBE"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.49_1594027501314_0.12328933768044359"},"_hasShrinkwrap":false},"1.13.0-beta.46":{"name":"kafkajs","version":"1.13.0-beta.46","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2c9de7ce872b8eae45d7587f4414e1a6b88b9386","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2c9de7ce872b8eae45d7587f4414e1a6b88b9386"},"gitHead":"2c9de7ce872b8eae45d7587f4414e1a6b88b9386","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.46","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-b6iS63HUUvg0E00+idpPsNn2xNp9SG0TIs1u6KtFzfX9w6DB8/GSzeKVSZfyOuNG9s7iAy7pTcv8XIi+Vr4EAQ==","shasum":"a4018692cf800f9c879dfd7e21a15daff0a158e2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.46.tgz","fileCount":291,"unpackedSize":523104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9vIECRA9TVsSAnZWagAAL9UP/R9qnkYx64P6G3QvTEbI\nghRKme/ehIvdBOUoJw7piDhdXt23zrSmQte0H2QUNKcK0hJmnumHacexbs4l\n/6O4m+MMnC1hyOUaJ5KMiYQbx98ueycY/6HBa1uWPVaUpJu+agVQSFz3Zgrb\nBr8PYw5U/Xnxf0SjHvsa5pFmaqb6Xg03S1qvCXlF4jXkryf7hmRP08vihFU0\nFnjh0hSmy0OtpClxKhHNBqwxsJSjQGm06YMCy/1QGwOSJRHGPdBQThgHabAX\nuEO/QjMZvZ0Che0e291Q+gH8EmNzH+/R6mCCICFV0r0xYX8IQQY7bve3CLpM\na5adZT+36t5fFIulPkUfPZ7bDXl18pEPWquEIbX1VPcol1v+tecfRBsq1QcO\ndzE97wVai87TwONsYDVQCWIzj3nog8VJleO4gamRkEQVaPLaf9aukXX/3ri3\npfq1htkgtOrIslH6ytl81fsGLzAGM3QG4YX4LB3CY6XzEF3IDZg1t2qJBlZq\n9hePUJCcGpFF1dvvGgQcHbQHO8xF4UzzGi6X0t8RfrVHDVRmMpDzIQVX2NAa\ng1VXek+jThff0QGqmFSTsODzP9yO1p9OTAu2N7n6FPEy76QMDzgssJb4ziBD\n2upZYlwtUFFxb17I/4F3LF64cR9OrPByFvXNQk7QQo+HmWlX36aePa6XCsPB\nJhuX\r\n=2brC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgMV0DPS0soUrcQts91bzXhAlFnguvk2GyQRgjxpWYYwIhAP8c9Uc3cby/7NWem3mJ5q2Sn1RCoY/9byC5CPd5I8cf"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.46_1593242115909_0.32381617789441064"},"_hasShrinkwrap":false},"0.5.0":{"name":"kafkajs","version":"0.5.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"289355fca17d282cbbee5fe329ec3ac214779a22","_id":"kafkajs@0.5.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-x8vqThppWjmKyjma1aMF6vA24IW6oLQjxVDQUAfzaVygeOsUpDgnEtPTPyuFqUvL9t+rIEGyZwouAio86zFjWA==","shasum":"4aabfb999996a2d533b968f0250157801143ef39","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.5.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFyxaCM7KMMb6IFQrvunVvPmhlKhEzg8iyumO5tOWzWTAiEAh7lOleXTPOKUY+SY2PbALU3GyB6/MeSotyOePlW499k="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.5.0.tgz_1512398850265_0.0798687522765249"},"directories":{}},"1.11.0":{"name":"kafkajs","version":"1.11.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"6d8ef07774fafac7108c3680a165cd4e73714ca0","_id":"kafkajs@1.11.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-dLRCcFIBygZucR+e8U2ZqH2wgMrAu114K0szUyUseJoeOii3cG5bHZPIdqKecXxI6begPVCfGS3R0nJY4zHW2A==","shasum":"d9599b02ada63ec7c63948b6ddfe0bc3a02c6dcc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0.tgz","fileCount":266,"unpackedSize":475974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdklfuCRA9TVsSAnZWagAAmA8P/3RvBpmocd+6BAtGjN0r\nUaeYV3FoGPvvBb53KfFmqWnulHIv0/gVALGY2Uu8yiObcJ+OPI5japfGOFKL\npxcNb4QcoqYtVGNOukvBfbC8l22BNqZIMrjc1b7dqrv00KV93I5w0ez+W9qM\nadZDqye2/I2xamFhEZyCp5PhrcLwR9eTRE5GmPrG1zBOhg1RJZ9IB6XknE88\n7lApuyKOsAY4eXySgWlUf0jogfHPatT3PJKR14syUVlkFoFxOXCoNZM2vJDg\nAtUmpB6W9BREwYPz5KKPaswupPKA5scR3moylDBQ071tJ7WNLzxe5NXeppiZ\n+A7jgwbat2sNxae+qa8JJuDQTnUkiJhZrjS6ZdkkKVQz3WqlgiLypq7y+poQ\nVHNOgmV1cnxPZPzK7lFGwUs7PD5+2ynZ3XVBnMe3qfp+o5IJ7HpgbH11PDpx\n0qr5d0ijyGUV7HVy8CDMn9S9SQYROjXKmNMDLBoP70eBwJm19VrOpi2l9GEA\nKZ7MFQSwZrtiWRB1aO/eIsOexahRSWs+d2INQGW7kvGuvc8pqKShVs0ksl9P\no23+reaffr0IDml2TfM6gVsVRso3dgbzeTZtDtA/lwfkvE0i2aqlTSdoYET5\nv/xMaAm4NVPbj4hmubz86zm6hp2if+HtAz1bZTuMA7JzOpxrXtDXcO0kR3Pb\n52gj\r\n=2bwZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG/p+lQL7BgXQUctlYBF4pempuA9w5Y935dB0SJg0gujAiBERIxCPasmUrivbBvEE1guXiBRkiD+6hxu+ZAwWjJLIQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0_1569871853669_0.5462600007223919"},"_hasShrinkwrap":false},"1.13.0-beta.47":{"name":"kafkajs","version":"1.13.0-beta.47","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c6dfc1666d77369bb1951b13ba234acef337719b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c6dfc1666d77369bb1951b13ba234acef337719b"},"gitHead":"c6dfc1666d77369bb1951b13ba234acef337719b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.47","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Gp0znlGNB2VpW6lINbzpk8c/ro5O2Yy63xzwJmENAAoqYaQyvmfTVoW5nuHQmqoF61a5YLPNRUqZshY/66lOwg==","shasum":"1e076d50af1dbcbf0910082f57d61a0b5d1d2e36","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.47.tgz","fileCount":291,"unpackedSize":523220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9vNACRA9TVsSAnZWagAAcWwQAKHp91wZSsXM9Qwemi+w\nXsYMU1k6Gl6j1UorjIilulUIxMzl5tS87vamnEkDZB/xYWiwjF4hDWnfCRGY\nO/mRFORNN2edu1VNDY5JDQicTOF744iXbXA6GeQ8UQtoAPfLLH7ztnZZHq4F\n0lc+pD4Ph77YBg9mUMLzcZpmDTwOnQfVf+40j7L2da1Tr5n2d8Gf+26bW8CU\nZQ+f38TIbf155jMjvD2UqcwkoZwPN4tkdKri+Jb2rZBgxoYjb8eL6pZAckg2\nd4an3rYFdz10rpbpTf7UoYjpyup7+QanNPYSndYZknYkOLZDjO+rOYWjuGVr\nUvNu+btm/6pc6zNqNQ/s2RKE+VETd9pnnIt5fJZilMTf+DS4c38fADfU/xWy\n9Mk57AXmkZAvVSXUOBp+rRtGKY/3BvEtSx+A+8eFmMCKU3WIM85YV1HSFCzY\nbXygdDPcbYvqa4MFLP1qxXAvcjfhgv4Dgyx2I2fLlObCY/hdeAkj24b2kpBj\nhiSi7vuE80Q4fR3MyK2kf6snhO/IHEaJbU+Y7YzbK1uqufi/qk6XzUGrmtw/\nEjPyFtUKDEqwBDDzq+ocnuPh2lbnmf8YyyV3kqNDPb1ZIfZLrzQ91OMWr/Fk\ngHVB5fc5MFI5vLaZ3Sb4wMkqIUkO7ShDJaU6PNVuL+n78hb9T/EB1he2tscX\nsOjT\r\n=HPQ9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5qaldlBD5GvhuaGWz3wPbamONfuRN0HZCfGy1fXL2ggIgZdPNRlN8QfxA6v0WAC2JJi9soiv2Dyepk89wmOXlrt4="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.47_1593242432393_0.85136816239864"},"_hasShrinkwrap":false},"1.13.0-beta.44":{"name":"kafkajs","version":"1.13.0-beta.44","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"020ea3013007ccd0b83353c549c844dc828cca79","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...020ea3013007ccd0b83353c549c844dc828cca79"},"gitHead":"020ea3013007ccd0b83353c549c844dc828cca79","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.44","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-/MI1K+pZa6pq9f2GLgWgN/iFQYTx6LbMIs47QnDAxdLXp+I+QvVfMgfTSWsxq0r4R/T6M+74GlO9yCp0Dig9iA==","shasum":"478a276b74904e2cbe829324b9dd779781fe146c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.44.tgz","fileCount":291,"unpackedSize":523045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9u9QCRA9TVsSAnZWagAA/5oQAIGkRTObXU127h03C6b3\nD2Nz6TJLzlYva3WuYdTsvgZ9x5vrFyxaer3YnLsk2nbYB63OAJx4p91WWv1W\naPbKcAzEeE6Hu6xnDFOV0/+Sv6M/L7AQGI9fy0edg4kFZAyL0T31NTOgcPht\n46prvos52dtXMc24/8muoB/q4+CsTovJXgVlijbhIK/j2yCbKKx6AXc+QCPU\n5tw6W3MxBlp0upRp7YUGCsd87moHjjbk3MybR6f/1sKc3Ga9aXiI2lYUp1j3\n6ySTRj9sSZdkzqcX6vehihDbEp8HVRE+WrXn25nz/P6ggjKhDyt19Ak7EE8G\nS35Jgd1FwQYt0RJf4nAJFNJMbAdQqT2rFQXawTUl01239TNYB/+fDxakYpg1\noJBtLHMXHNp0wnFHrLYPu9SueK5vR8OxANG7ifAY+ei6L/mcLBZXA3oc0zf2\nZgnzIOkyP86BzQuRCTWDHzDWmHcbmtKJdkTCCXYWrZnHQXXF1+vwFUb8EeSR\nNGUQee05athY2soVMIKR7jQP6SBQYkCutFP1MFItDQLEFTlvAWN/XB0vK+Ew\ncE13916NNmMufmTzEMGLApNS2mFwxUH+0iUo9dauH+6YSnI+L86Y/Pddn8Lg\noifw7jnUS4b0i54vHafwnjEjlcuGPQW7+GRo00PrEkg1fp4xG4n/UZ0AYn9/\nPXLu\r\n=5FPJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNffO0TWplXtP/opwN6JlfbQEeoBGWJFQx9Rn809C5BgIhAI5S+WJ3eKzhjHNiDr1sK5q0awoFQTjZu7mw1cXRLXPG"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.44_1593241424430_0.07150442469097484"},"_hasShrinkwrap":false},"1.13.0-beta.45":{"name":"kafkajs","version":"1.13.0-beta.45","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"4035dfda0660e3578cdbdb60881ba26f232d6c7c","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...4035dfda0660e3578cdbdb60881ba26f232d6c7c"},"gitHead":"4035dfda0660e3578cdbdb60881ba26f232d6c7c","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.45","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-jUJF3HEycRKKuLC3a6r+/z6HVCtnklp/sk0TVIwP/eCK/SWU7oS4r59MxUSjmKY6Go1TWV7YJ4ci0D7ljsW19Q==","shasum":"ec060e34cf96aa5db6cc3c120946a950a59fb377","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.45.tgz","fileCount":291,"unpackedSize":523074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9vDwCRA9TVsSAnZWagAAU2AP/jxrVONSCYP6LAnhOQS4\n9wVTjM9BQZdYHNfYOJZ8ATsxIqONnYqM7/b1onKYc2raDop7OW1SuSSKo7nn\nFfDZp+aKahOYVruXrl6Pi85bDJ9fEIShupv3RnK/fsbvvduI4tDOkAJmcTwe\nxbh/B6/uy0vp87tYtEM2aioAqfQtBWo3hakpTTi/pXwusrNb/XMqoYS3FKlq\ndn1xkhaymfqJNMGS/D03Hr8L2k0dGdRKh6ggEOANtqI77h3YNm1hPoQhW5oL\nQzWw2025qetX1QgaWWXAnvEpOVcf0ccfPWH+Xk5PDjkifiBjjlNMZ+StsvDu\nUCUw50nps662iRtUkMHD9WsXn9Vgrol14ShOdwKJbO4GRH499I0qihB6SZu8\nIV0VR5wzwicBxcQbuiMjFCgt+qCX6V2TjGeTvvWxbRsKy/nXqD6TnLhj39AV\nTDLuH0Y6bDmQ9tBzzLcGuHYN28m1xVVbeOFniVEJb8r9owFmx+sNF+TcPITg\nl+a4F7yMOJkXiME5yTfM6gZNwePgVaiPGLCXE178cYBQGn8JGqe/vRWFKfAa\nrE2AltV5VtOYo7wg07cBKJADzQqXL9yPlFMVNdQcKjDAOJRJ0XYhwpsFpn6Q\n8f63O/5C51gBdEebMePWqgvSDMqFqmcFDyZfSYtRiP9bdPT+oEhHLBvmHiG/\nAo4w\r\n=6Eyt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCNx4G55MN+C6cc0qlIt3RtEb+paWpEuQXQnnfVKTSWewIgMERBLg940KJ0jhqfTcu1mH27SC+lFKsbB6F68K4YSDM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.45_1593241839973_0.7978534388056926"},"_hasShrinkwrap":false},"1.13.0-beta.42":{"name":"kafkajs","version":"1.13.0-beta.42","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c8eb41c47a898899ee511e854df1d478079b8595","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c8eb41c47a898899ee511e854df1d478079b8595"},"gitHead":"c8eb41c47a898899ee511e854df1d478079b8595","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.42","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ScXBJ5d5iH0TFaLjcaS4Ql9nPXZkl5I8B6shO/edwnxW9WpwFoY6OyzzO/AXyg+PBfZ0Hbq7iJAj9cRKUjAakA==","shasum":"87bb287583d0c2437ba571a4a234363fd11b891f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.42.tgz","fileCount":291,"unpackedSize":523016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9utMCRA9TVsSAnZWagAAAXEQAI7lX+dbNd//jT1tBgaJ\nQQX7AjxK2k43rVQG8nLEJHLCPIPfPaHLneCURn8IfppSBCjE0wNoMqBLySMG\nN62OOHsaokG0ikEtKLpk9h5icxWNVM9RzxBYg3IdWC8lVA3O1aaG/pwskeU7\n4gHvJyjlU+6HSSWbl5qy/o2ykPRpVfK96WRyYBhCkCogUiIUOZAUS0Ls6Y9p\nMjIH6ObN60tOR+bCNZE7BS/aRY8ENQSCLAu4i+sXWK2gnDZg6sJD+zUu3Eum\nxWWpkif0ccOLrywCcKgkOgRAMc/TK6z2d6arOU+7KgGW8slvCP2NYUbCBkQg\n02aRp2OKRVG5vcFeMzcGPepe/BlkGMK0Ne2gJaObcNnXVe6KJxhlxXOon/tl\nGZVoabATxRqkKm/IUHz7jBARJirza596XS75URZmtq3rvXnfmR/+IiJS6cEh\nzlKs3tBigFA5EB8MmNl/5IWA61g1cRyMOuD4ImRrzXdxq9Bd5rZKpKMLnPqC\nWjlvdjcyPX7PMesYkOQ4WKp7Es/lJ1MZyyeiveaDIbhaE/E/dg9J01Ct8SWY\nC/0ZRBou9ULp38m7qddq3NpeHr0ddmisDZ+ASD6OSraKhcWU43aFZbpsY17O\noDl3DuU3WKs3yeXFzg3AD66uEd9jro/kqtTAvBB+bXi8f6DjEX6LdVxa9yQl\na68g\r\n=UxI+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhVayq88QczZqkWFnC6Dz7TxnxfGOJaMeBlHnMxQEm+wIgGNOm3VIm3T8y32H/7oUOVMhuGEphq+QVTluHHs5J1lQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.42_1593240395827_0.1149433770219177"},"_hasShrinkwrap":false},"1.13.0-beta.43":{"name":"kafkajs","version":"1.13.0-beta.43","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2882ef0ececb701c1eeda5b90d8458c43583cdea","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2882ef0ececb701c1eeda5b90d8458c43583cdea"},"gitHead":"2882ef0ececb701c1eeda5b90d8458c43583cdea","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.43","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-vgBhWk/Pu09eY7lpHVso+WoFGR0+qnP/VTQrctCMeFxNobtrlBDSqZGcqbgpdyug2yQiPwZAbRVKwuIJza+Kzw==","shasum":"5f8e884131fa6f66b81d6b3af0a6fdd78cc43a6f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.43.tgz","fileCount":291,"unpackedSize":523016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9u33CRA9TVsSAnZWagAAZp4P/iuSrq5ttPzvFpXi+5+/\nu3G3KYzG5s8wcBTbVejCssVvVosDSsOYX+B5TgPJny79udYMR3Yk4zT+gR4c\nII0gtHqX1+jCbsU1M6loV+3R1IylnBUVqKTPeDmVkpf16HlHbl6BBcQz4/VL\n+ycsIMz/tV/ixRkNwgIISbAnj+FHwImcShZ99abtGzoO5ukgemQRm4os2knw\nYcLjNMMWvfQcHOy/cLfir7H3i8TC7x6EDoZhsGL7j0punPl73M0l7wrWYN3T\n1Up0ui7IZJgGqzPtSAeiG8oTT3Y0mjLRcYriODpxVjruFUhle12OWCdCmQxl\n3k2QWiM70MVawSlgIEA5cdomqtTinNg5uttXE6Aylm5TeJAXRgd7XfuvAZ8w\nSz5XL1C+yPOcGw/VAVHAD91XXlvnAwyccOxnRLyIFwIC9fYJzBJXxZvwcoH6\n7quAxEuarwbyhhy7D/HvvvtQhSrAL7edXktIgSVJKyfupMRJ/yLqVw4SIlCx\n+HNs/zLF3QgscPRV05QBWfpR73993vH8wjkjjhfS+emK0+vAuUkMsFBpPgaY\nfH0ijAsZu2k58syAucu0RVJjmVh6hC50hpI8UtLlvWX5H7ycHWdBkv/2PyrF\ncG5R/mcjrHZ3CxADqJ0EdQjmvbjHn6493k2PPItHy2qurOoEafokqUxhQzGa\nZ3Nv\r\n=6QiC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjn9alI+VjqPlxzuNFIfABELJQQ6gmvpKDLhKJxTkypAIgJ8ZTJgLxLQl3GgB+wLVekxg7rPerEASDxkP4w+aHz84="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.43_1593241079106_0.8094232453008656"},"_hasShrinkwrap":false},"1.13.0-beta.40":{"name":"kafkajs","version":"1.13.0-beta.40","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d4ee12ff537fe4e84058ac0940f73ae9220eafa8","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...d4ee12ff537fe4e84058ac0940f73ae9220eafa8"},"gitHead":"d4ee12ff537fe4e84058ac0940f73ae9220eafa8","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.40","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-k4UC6imIomix9icSb4naIITbO0KdqenXQgm0uU8SsRvk/9i8vnbjHxZHo6p9ZJb93LjX/f+Y2KK5Gaqno9ImIw==","shasum":"e71d444bfd92b0e5c979c2ab5562ccb0d04def8b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.40.tgz","fileCount":289,"unpackedSize":516557,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9LPuCRA9TVsSAnZWagAAEyMP/0DXrszVeBnNphPThIXR\nuX+Hbe8Ei4aINo18XpR8W+SqdMBcuzD7qhMIhcxGDarBf1B2Q3bQUcKtgnJW\njuo6Zv8wixaTRrej07dMg6qdhOcVaKbS+9imuKMsATepC7PU06xdXO2pWF9e\nRittmMvhhIUzqAbdQSFhpt2TPPaRJbbXpH23CEIvDGy3jrjiK16/tRhRcqWm\ndX0tJ2Mwsq4T7uuThN5ngUrmFRCXiDDzFw/52kxoSjjWE6wOSPijH7VD+v1r\npnqcwia8MKDlkdikZDFcTxIl5YuHRhelHRy/ZUv3zCTENcThWA4h4wzZJ2nF\nYlw6tyH9YFSHKcqVkMy/ROlgax5lnrmZ8EQ/JdJIuBS9tj9EpqDILntI/YrH\nN7sdU2VnYKQ4rC+zzgslwZl9v5NJ5f1tVRrvYMLoajDDVHXMnqpyZON3S8PH\n0TN10ggA4k4VB4sUbRJvSa+o/0SRVLa9yTxeMKzTNeVp1vMumanwDMcOZsv5\nodvqJxfMBeiJoQzQR8A1g71NO1+0be8Unc66EdqVV8dIQiji8fntwCnSi9wx\nDIiHf1txMUwRUExd10Kt9w+1fvGDyj4SLxcuw9Zo6JYvcbp0r8gl9V+jJITG\nwQVvtkNtFJ2psDs/PsGENFTQzv8C+4Oabh63XRNKQChOPoeetu66BCTdDxkD\n+DLF\r\n=9u+5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCq0TA+KocRZv4iXX9/+y3mt4XHZ8AkhmhmuLeGem/V8gIhAINtnKY6i9/4CF+2s1V/M8QEHxLuZUFCV8C1Ib6NjreK"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.40_1593095149948_0.15470025910054885"},"_hasShrinkwrap":false},"1.13.0-beta.41":{"name":"kafkajs","version":"1.13.0-beta.41","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fce9c09a00e0d7969f7a79adff73257a557d2af3","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...fce9c09a00e0d7969f7a79adff73257a557d2af3"},"gitHead":"fce9c09a00e0d7969f7a79adff73257a557d2af3","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.41","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-uGKX2Po4H9EbkpnW1EEmkApTIo/XzBIxF71pZLyMWdulQea8qYVhIYoKBgooDGwpibETka7BEfwK30RuUogTbA==","shasum":"1a5b7325e0f2a2e890ce6e370c70edc46f8fc011","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.41.tgz","fileCount":289,"unpackedSize":516391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9al7CRA9TVsSAnZWagAA1KQQAI70u61uspKMpDxqYfFD\nXKawhhf3QPSa6eFNI3D0UAYbRjZ1dVa0Eyrxu0zweA4B0EttiqRsIIZwo8p6\nG9UZz1wpdFbWyZ3Fv+IEePMzVJlRCW4+38JyZv8luRaEUjTISxldqpl23V6I\n7laPRUNHWCeHyLN/H3I2HrGATEmM1drjmCi16ySFkqKMcUiQLw4Q3YEi2cAU\nQtgmG/8MWhkz5Z7uH1wyDXDRVfB7SQenVmuGFLZ7ZBDU5c6DJeCdSnQ/8MSn\nlEX1Jl+A/V0f2eA1v+Ac3UIs6rrqTSspeoK/CeeM/SbD9y3FGz7DXtuMFwA8\nD+lnsS4bF3Ls1x+FbYZpLKDi9Fgok7TfgrYZGuLMr/MrFajTsNZgR3ePr4p9\nDiexaK6O9m5e28EDNSkTBXFVDrgNGIOgaRW8/TjFSskJG0WiRV9yAapNgXu4\nybJMP6OWhEBBU0KJcpSt08ZaeLRVJhz1O2jkYKUEbOEhq7C7DUR6UsCFq+wS\n1GeQfjuIDIBJ4xY3egs+/mWNzjuC74G3X/cPZ9ZoM5h09Lk0cL+swrCA2k4N\nRqobqsJNavAl7U4+mYKHOZ9dd7IAxDmB0MI/EyRjvhJj0SKS1oV0zygJWXV9\np/sG0ODIWzj/KJ/3KaYTC4UUIi/ROcdoTRXiviHTFXaN5XmhEBMYM7AUaz63\nVzCa\r\n=QtwT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEJlV5Gbw6pYVnNzUGUq3byymnHPCzBMFhAbRurvmaQQIhAO80RcZkEBAl9TLcQ5xq079nl7cLjyyX7ufxiyezT4Eq"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.41_1593158010675_0.18436660581857267"},"_hasShrinkwrap":false},"1.13.0-beta.6":{"name":"kafkajs","version":"1.13.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7c454fd713ff85c8cc87e90709f6893ce36a284b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...7c454fd713ff85c8cc87e90709f6893ce36a284b"},"gitHead":"7c454fd713ff85c8cc87e90709f6893ce36a284b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.6","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-pt//zFS1BYVXGeHj5f8L5sCzJ0i/EC5v9jTaJWURZ/Nv3S9yNjYLwOlPoqQLRNbjr7ILCOpuuwwNKTB+YTATiw==","shasum":"38a288b98cf18f394fcbe30ec5516a8339394cee","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.6.tgz","fileCount":277,"unpackedSize":499119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJebKkqCRA9TVsSAnZWagAApoEQAI1RgDguIZdXxoCYpvLE\nEulRzJKhj943JN2jIUpzJeW0H5pJ/aOoa0xPv0qjXvmzxFaDs68bfnpEWSov\nTRTJYczm2fulUAjb0aHTkw+8iBN9nxSv2rzH8KSjgyEdg+4tbMot6PHfEdTY\n4OwFmPtVo6Kr2Hmj7RORQpQitWv2u1ns1BX05Qp5pYR+tH3C8Qjer8ptCQ/Z\nxHDSCM/I6ay1mTviskMiBYScoktRQMdL0AqLeOYjjxcb/NIou4T3qO40XObX\nfyMyMIL6Ozx46E2HtQkPSkZsk8eA8qtyVTNLZFkOBLwuSOfg9+X+m6beCe92\nPJaJRbg5KVXhRXVGouuo+P4tzcI1cFNWYOgMIuqfTJwtcQd0+OUx4fHAm+Ps\nNnvxwe+DtRJm/2L3yfLhPDsZm1VZUSRDDstM7eduHhaXjqmSv1etSNG7M/F8\nfhSoHyosK3cSW42GtbZPY/C39HwR+HOKXlDGAoeKGeckPsdB+pU0JAquE0+r\nXmtW0Tpnv0mJ09YgY7TRxI7pJTz5lJKNK6bwM6V++Pumfb5+cF0Pn6u0s74E\nwvIA7cYNja25fcc3uoO0kH8c3CMbsH5Uiz4CdTCCOTohxnwlTkcOhb8nx2xm\nV44ZFTAAX9XAWl07oEJeyOcrp3USjHOpX6vaT90TKVoRdIpp+LXVu6ZvPxvT\nrvfE\r\n=1AZc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUPukeP7re8nozAe1jYmoDBFNyj2JFLWVP8rf2un4s2wIhAN2KEbGCpLa8rVKE+jiDteqsyvGtFbKILr3N8qXID/AU"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.6_1584179498164_0.18302156320830987"},"_hasShrinkwrap":false},"1.13.0-beta.37":{"name":"kafkajs","version":"1.13.0-beta.37","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9ed0787bbe16df4402923f0ea898a2fca6200736","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9ed0787bbe16df4402923f0ea898a2fca6200736"},"gitHead":"9ed0787bbe16df4402923f0ea898a2fca6200736","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.37","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-pq/kR+y5FPkj87ixB1O1c39p/3h21qmML1KjSWXxXbJxEUZ1fMHPXvigPju4KjiYOp+rJyPDXF0rmgl9Vb5aXQ==","shasum":"47ad8858e55d77038e0a9264c33640112112ef81","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.37.tgz","fileCount":289,"unpackedSize":516359,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe823XCRA9TVsSAnZWagAA594P/j8uB7LGOWEYPfwuTC6K\ngMfZm8lE5ZH8DPejNMiBwyM92b9EY+40T/Y23hfJlONKpd/iti1NT3WGri3/\n08j4tjmPj9pD/OgJ74JFiQHBiLGSob0m3DG7Rseh6Ve0ZDF47lQfNIoLSyNw\nruibEVq3NflLmazlUJ7xZuJcWbpYoc+iobBMLXmC0TJual69GWaD8DOMCM5K\nRTKWErE2kVs5oz589URrylYHJO2Y5nmCj6ixC0cRG+EXXtEo/KmclIgUuMOc\njdyBdo893llzNDMfH7Hrg5LWexkgO9GOyhwL2JsUHIO7cOwUeTot8zfud8lQ\nlkxPDzTjzbteruD7+whL8MlCgrRcJcTxXkHL6v5knntQ9zvwvXv0g8etj1Q0\nU7ejSM7sUuX7/Q4zMWe97eAufOiTQ+8qsSt3Y2+ZdSiW0V0JLx2VNvHh+YjD\nw2Ss/uX76iknKAbUhB4lAz/kyMPydfCSHM32uC+c/ffXXXcdH2WseDOjLVin\nEYAj6JhdnPMiQiTGb6vaEm8kHa5XrNlD1fkDFDtwthY9jevKkOTTolP3uH7+\nsJ6RBQ9uUxaYOYGBQQv7eyVU2IxlVrM9HwnAnU2muZ4oUyvqpobpl7ONQnYB\nZIaPtGDkznvgFpu+GsS1hEcQdVOcr6Dvr95mApEPh9Xq0pUuaMSg6cSrmqNb\nTejJ\r\n=b+V1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCK4NmwF5tj/hlxLBs/3D+RMAELTpvCPKT3dAeAFjfdqwIhAOycRqKE0yytNFrr7GR9XfZQMN6SBZ51eDSAlgCppilJ"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.37_1593011670920_0.11390984101409751"},"_hasShrinkwrap":false},"1.13.0-beta.7":{"name":"kafkajs","version":"1.13.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ef231493dfa0d3d969b6e2085ac68e703154feee","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...ef231493dfa0d3d969b6e2085ac68e703154feee"},"gitHead":"ef231493dfa0d3d969b6e2085ac68e703154feee","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.7","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-eyUYnQQC4x06IsXdHgqtFe++PxWBS+/6+/ThD9pD3Z0HLCV91futVHKAikcVMJQVnzNIwgl/6uVt3ro0qG9OQA==","shasum":"0569a2b97b886e0a302e8c66220b12193e4116f3","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.7.tgz","fileCount":282,"unpackedSize":505187,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJebmJZCRA9TVsSAnZWagAA1yEQAIPE73+ITJOBKfYfT+th\nONGWPCvuPx8gBpkALoI4qQJ/0OFdPlkdTDE1DAF4A5dddFBmMcbcQXJFDhck\nV7E1klApWcqqvjWwyvDcwenb20uB3QTGwH192S+m/aByYhKteD1kspHKHga0\nrd+K1FXinf9wqXlm4LvkIa4SA7nyjXCOGSnccG2gke8q0R1mdgxvRiycrgic\n58PGGNS55rCq/1u8o4CfVgaT0wPwp4Zs/pjvufOF46idzngTeuWfgOAjixUN\n7CjaOx2u88mq4JGU/OWL4EMc1/JIwQigGYI3rP3IfG0osj8Mg9041Z8J7UHt\ns4bTSBw1hCNPav45J3z5uEOLHK3q9R6IgpLYAUwbDbW9qQLfeFam1W4HRFtw\nEyItSrun34zdquRUpW7504C36rijFou6u3QUlml9AVQ/IcMEfC9toxeuPZl3\n/YTEqkKHocvpnQ9wuNB7Z6g7eZThHllabzCAXPvCaGS/eKEDhdgsWFn09QQJ\nCak3YW/NA4f5K3QFtylC4aMVlCzSbPohHuxwG1fBv9SXLlEo/YGPLKBAfyy/\nRQWpVLjZmApGP+HOumS1fgVq/ff0q9GXDth82NLXuTVWlT5aFdNHC5AnZaQR\nHlKsT2ijIOG2uHD8BqvqzSn7cT0xvjhulBMNPLVE6GVw7goHKS7J/udCvMdu\nK5FU\r\n=pVks\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHlry7RCQqoHAenfc99dVdzJIicCmSRKmu8AS6MBuACJAiEAjQgILgLZbM10FLWLN8yNakIOPZMjbViRNRUyQhuvyLs="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.7_1584292441081_0.8052329278124097"},"_hasShrinkwrap":false},"1.13.0-beta.38":{"name":"kafkajs","version":"1.13.0-beta.38","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e2960b3e207c0052753f16cc6499f1e0ac4c4655","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...e2960b3e207c0052753f16cc6499f1e0ac4c4655"},"gitHead":"e2960b3e207c0052753f16cc6499f1e0ac4c4655","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.38","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-uYdgg7ZmPU0j56ypplVprVkHdSOF90A4cAcFJQxic79TagSY+GCTdCDSzIGn4CQGhWTqi04Xcgdk3YiqmZRKVA==","shasum":"d8f9f593213f78fced761e39dcb87759fcf821c2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.38.tgz","fileCount":289,"unpackedSize":516343,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe83D+CRA9TVsSAnZWagAAgjoP/2G/qMDdqKI4Lu7p6ylI\nq0q6VJ/A84sgs1pyQuSPeaZp0cldYkwbP5nhjHcLKqB3vcgp9uy+r+YxJUNa\n5eHsFSGpL2ekWoYR8KOz1Hl466vMEOHrEwUqj9wm+rZZGV1GGivjEpq72nqz\ned0dUbXnxbqel94Qf7p1Y0xG1mu6F2GJ5RTd16rviqCJVE9nKjroH4If5vNt\npWkJl7TrzDs9hfTnrVhV8pwh4lFMedSdXloHg5UejONv7V3n8fKZ7XPMQIRJ\ndJIYDevWGPD3tieZ6raCn4sdZFzH2vwQ+ERjR70EZVUfbQiGS+Q66I5YALP5\nVzhkFJUXhwzFS0W2Fc5MfNuvPPA3zgOs1ehgdLOzBEOomra0AWUhfwZ/qJl2\n6Z1muZqoESzHl0UNXcDlq4nc0oQ3wcTt1ULDrPgjcKU8vDHP59vdBfDJqPrV\nr8wPJbPQYiijWO9EOa5UdcjfFyDRQeLxuKhD4ZSAX4zjKy+XQfHJzSB6glMX\nLJZpTvH+EvNwYlOdGxLvf9pNFXnxCK7WoOAgD+7GOf1tZU9urqw7s28xOMis\nQbUMPhtXHM7EU+5h0H/Ht8f8VneCmVCbjWon806Cl6Iee3ayo3QJpa8pSFWN\nnIwtD2kHhy41rGXUpoBvztxy3FAt1RKkiBzaR3hG9XMJI4L/GcLLM5z1lNT9\nCCNj\r\n=YFJW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFKO74Hi1OR8b45jhRyT/tP0uzjlnYqbEcaPLzE1KnWgIgbgDEAQ2zNSx5wce5QOKZP5cq46qackT0ZB59H6zyCuU="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.38_1593012478288_0.9767999160168128"},"_hasShrinkwrap":false},"1.13.0-beta.8":{"name":"kafkajs","version":"1.13.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"385be119d5290d000e42a488246a599a0796571e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...385be119d5290d000e42a488246a599a0796571e"},"gitHead":"385be119d5290d000e42a488246a599a0796571e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.8","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-0P3GuAsTgTIX/iDEy2bqkqlk7k8Tckka6+Pa5pFO547s7sKFEvT8iElyc7xQbT696Jqic07YQrp7l5jGbhWPYw==","shasum":"6320fb06d44006e847e479d106625db7a74d1ef0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.8.tgz","fileCount":282,"unpackedSize":505245,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJebmPvCRA9TVsSAnZWagAAa7AP/jw1I+B+gD5zEHaxVDLl\nq1y8TQVhuhJk7A8mHrgVKulc5BZL5pJRkzbDIyrUrlUBvaK9ofJ/knuwZ+kH\nPBCoBxfy5HjWKYm5hO7SzOooOhmJwPBeo0IfXooYMkRpKhXukftYn0AsZGK9\nF5wJZUfX2STqMp2MBXlbCEi6trCg94YgxJn8JbX955JtEOG09Wpx+J8MTXum\nKhhVdkT1xeswg6NRUNwcsN6+E464MKGQsPd2NrikTTnJ06GNV2hTe+V3WZCP\nEHBBacO/MYWhCqfyBdNkOP3JS9zMPrF/npgseft9zyrmiFFCA7GWh6iOUfIL\nfD27/JzBWYVOR2BBSo10z5u773hcVzsxaI1VaDcl+myOQ8vqj4XQC9xG1nad\nvSN0s5EI1aeDY74S1MuYVHTvkyz+boYp5sTAfWXteJu97kXrBQKouxKnUr/o\nEemOGnmTGoHLwZkWsUmXLjLkME3+y1Hcb/D1V5c+JMneS/stShAwia9kYzOY\nDuGjdo6r39tbGUPQWBiur52/YrdS5CBjRWoLHW+3DqoIKcjc3TXg0Rxjnf+o\nLOYq+US5I97f0rMdk7jTNvAq+9x8nMVMYFb/XyONBWEQUkX/qCZHQHQHhXYT\nq/ZQi4HrRDtxEsMFeE49SHGeVBfFF2K5lZSvcRiF9S9XkQt2KSSQVkM9m04J\nUmGy\r\n=MIZM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEJEpxoq9KqKzf8jS64wZ6R6VErZ3Om1vJGeIyZvhg0gAiEA8gUcjh9FvP+SsyH7EM3UqEUQ3EgkD60LBDKUVBuxJXw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.8_1584292847046_0.21953784668803977"},"_hasShrinkwrap":false},"1.13.0-beta.35":{"name":"kafkajs","version":"1.13.0-beta.35","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d55d9a97a7e275cdd021d2e41c4007566affd6e2","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...d55d9a97a7e275cdd021d2e41c4007566affd6e2"},"gitHead":"d55d9a97a7e275cdd021d2e41c4007566affd6e2","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.35","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-U4mKzI5KHm+c2aOowsI7ATBHQMECyAcR8fn2yeD5KZN1iBqoT+JjtYsKHmQXx2eXd3kSVRnTcW8j/IUu+wPloQ==","shasum":"2fe3f40b24bb51bb77b7c72e571f6913a13a706b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.35.tgz","fileCount":289,"unpackedSize":516322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe51qJCRA9TVsSAnZWagAA8jMQAI+ZcfJg2k4iJL3vLmMA\nkt8oE4kbqx9EeiA2fPiez6lyo6wv5bZ0OX3i9VGyEv+ckQNDQ004nySAoxD0\n9b/y1y+Koto59sxDwXpwVPkS/UFR+8QHjRQXP6XpOtxu9Xi5hpHb2E4GZOjN\nBNCytgzlIOm46/z1NPKimXGXsUusiIR0a1evTRrt5VnOs9nCcDzEuHKiTBcf\nAQoiwz3j5otRroN/8OXyk9ttwyIVBx2K93AHYToDJmo0F+/k/u/nVs4ZNn9r\nDkmv687t3rTNWBSVXDnYjexfgLx3hyEalgNFVTl+jozg4loA75TdymdX5ZhM\nKeF1tkZsHeyg1RmnUDcsR4TOQzO/1e14iOWAv9h76TrCy57dGf/jT4j9i3BG\n4HERujYpTG8+Q/fmItyv+BflZd6JHm0tTFfUE3HhhhLDAuqc6z3JyQpyqg+8\nQNSVHD9pB2wBe6BSZCCQwVxz79sA2kK2eS18WwS7UmBazTA9aCOQwHafwFSw\nqUDOPLrUuVnP6Qd2B2ZtQ6nLtLFdx+mKSU4z0OmDFghLPjCaKNBvO4U4DlBX\nQo07aIvJYnY2YFejDzhm/avFzRJHA55U98To22FWp6E0qUPiktjUncsT8HGn\nrdOM5praA/q1W+Bohlgk9Z2cHGfNLJ+iX9C7auB3cKC+R7xOVj1jKv2gPUSv\n5VRh\r\n=W65K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCp/LNq1QVuEyGk6TVyWs6HL/WzXM8VPmUwKFgeyhPKzAIhAIu5fqOEdEuWWXlj/Q/TB/uMdg+YZaWxjZ8jJ0l1U4fU"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.35_1592220297051_0.5357728812711617"},"_hasShrinkwrap":false},"1.13.0-beta.9":{"name":"kafkajs","version":"1.13.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"03409e2af6d8622b5e65c21c63a750cb938a8587","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...03409e2af6d8622b5e65c21c63a750cb938a8587"},"gitHead":"03409e2af6d8622b5e65c21c63a750cb938a8587","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.9","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-p5FYnv6Nn62rcafP0I7+G2bUHstMBlC0m7LNSo8D3Yu7JLs95aEKA/XW3UpzdL+IS0qaQtg48oPAkn+cBKKt/g==","shasum":"37d19130ab0a3e162f4cdf23ec3d9436437642e6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.9.tgz","fileCount":282,"unpackedSize":505289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeb3qvCRA9TVsSAnZWagAAzYUP/1FSZf9hZgOJ5edlPU9H\nmZSfRM+7InhmuaodSfhTjjsYaRRjqcUyfZiU+6HdaoOWVCiCNhXw0SJ7uVfr\ncdgTirqANgdFRkcLVw36ebZ4j4SCcRlvY6Vp47vZ1DOY5LBybrIfBuaHzXCt\ntzkh25T1iqnUvUEnf8hinA8UqzV/GXGW9r9WHU8QtvwL/iwANzPZEiO+DJHj\n4claS0cg34xn60plH73tHaQo7byncI4fs+8als51CRbvh8b1LFCIqBlkH6fq\nHaBGbejImzzL5Z5rSCQk0OwVhCT6BJicaN3XcQJXUTuMZ9zqBTswaIb7w3IG\nitGKe3PO4WD5dru0/XUwsHj9oFuSOBMvK9vF2m7JCPVjcbe2eM96l1DfUhkw\nwVPOvpFH357TBEBt2kwngHBllyBrN9bDCA8n1xoZAPjwoIkRjxbF4wYApKzu\nV7Z3gwOnG0E7ZCLpFJwu4vdT45/N9iPX+2rChgqwnWPlVE9OM2bV6P91jZfT\ngZpmi8erpEKtB3XeLt1xWT83ntNnAxP5bF6NMUO3+u5NcFeaty4WumGXuzmW\na/Wlizv05k53ZBCk2aJuwEpqiGjlf9oOxWjRSrJR1RCLfqHsXI57dUv4ENIZ\nLTkcYYF5OT6ltiUDxpnRSdFnOd8Ek8RmCMmJj1COOA7+uLZvpjGweyGUwMWN\n4Nrm\r\n=gs2M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAZ6VVf166rOAdL4J2yZNpEDKJ6u33d68bN3l1ey8aRbAiEA17brqaloGiXncvqejo1+GqYHogg0/9sES8Duje+t/xU="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.9_1584364206931_0.3821162215626994"},"_hasShrinkwrap":false},"1.13.0-beta.36":{"name":"kafkajs","version":"1.13.0-beta.36","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2df50c1363496690274127b4b4dd403b2bc0d1e3","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2df50c1363496690274127b4b4dd403b2bc0d1e3"},"gitHead":"2df50c1363496690274127b4b4dd403b2bc0d1e3","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.36","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-KElwMIarAI7yYWRL2FxKvPKJ0hSeHxSkD3Y04Cp3jvfj2A/rqgrZXk/NSmG1yMH+MC8V/8ed3UksDfjVuk9JKQ==","shasum":"84265789f39da6d56a6a26267019210f052c27a4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.36.tgz","fileCount":289,"unpackedSize":516303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8h+fCRA9TVsSAnZWagAAGYUP/1riAr4yDaSYU/TgpW9m\nWdMQDr9rNz+ScqzliBrxSLGjgDJzU9fOj9xUnsImAbfb1/NBExDwdIMkbUOR\n3CRqwx+iQtqD7YRdsAZMakfRzaDkgLPwVg5tOwEUBjvrEPwFhAOWWuNek3ZO\nZXyZiceqhQgVKryVsmsPVkQSeT5P5gUjfJjgNVSROd8wJJHHk8u8YrKupKlu\ns5TAQLcdiOZ/Ok/pxFTOczcFsmw0z6PU2EkhDHqLWngMJYxtmR3+oWzoYYex\nXR6AXJ9iJ7wQWginw3Tv7pVWUNPW7GOsebBjM27PV2dnG/IYjJSl1ILgvR+G\nQYIC2SFhoMIRzwcAEYVr4pM9Luhq4k6Kl3lZTjW2oZvTIgpWeFzc1RFd9FNE\nG78t06sROwnTxYdfd2WNSESBaKmv+b/+F4lnyMH+VF11pYTEkz9P4q4Grc72\nd+Ved3kbhWXvfry4xZxjqHtki3gr1giwhzWgyx8c6pvcn+RfFy9BtWJP1jW8\n4yp+gBTufj7ECP8d6I52upqAiGCsbWjGWEgB1GJyjX7Ec9ez03yd63KTPMSs\nMjl2OEqzU+vQVi8rNgOzGk9kSe6/mq8PH8E0Qn8kRLdcNsGE2X2JgKyQx7ow\nOYA4jhft78J+evqX/MgNZhpb/Xx5j64nxhFGjDFQ66KFvtgE9s+lzxCCXCBI\nC6AW\r\n=efrc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDziV4UIItynPIh6fZSlFEN2RqHZmDZHd4e/oSfrID8ygIhAId54ieURcTEuLQC5tg2MVm4l4fvteWMjdNeakgHKGMD"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.36_1592926111325_0.04646663314805877"},"_hasShrinkwrap":false},"1.13.0-beta.2":{"name":"kafkajs","version":"1.13.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"43e3028c9f8e071f23343cba2478fc4454b79d1e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...43e3028c9f8e071f23343cba2478fc4454b79d1e"},"gitHead":"43e3028c9f8e071f23343cba2478fc4454b79d1e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.2","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-gTViipiCtD/KJNOq3TCMyiSV5zIqUiEbm2/k213pVig+n0RCaa5lxetAs9cstQjaXTY81RatocRnIUj/GTREJA==","shasum":"e5fcc864401f467a4e4b58eaf486bf2e9304d206","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.2.tgz","fileCount":268,"unpackedSize":492109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUlhbCRA9TVsSAnZWagAAZgEP/ihtRpG9vX30LaqWWxal\naP4+pabje1edteaRaHP8giZ5QKF3bzOdoJj0/8MBGzRRMlTemncltKJjYdHa\n/mm60/BBMSeHQGFr9V7hplGBHOrUJAFYWrghDMJ/VMycj1ZepT2kGTsZ+qAc\nDsOwb7UerMWyiiPXLcu1YVgQksOxEoXPOYnmLPqW9nJEjgY5fKywIMqgUV+c\ntwyeUB8z6KSxbBKmNwgsT0YpRmVHWNOOgf64OZEpqG1mg7/eKYNJQ+o24Ubk\nNzIAbsE1DicjLc1EZdxiltO7tlrgXBm5pNTavrJCuy2C6YDuByvI39a7z7ZU\n6cRJXboynkg8Mc0COk/6M2ryXPzxow7/LGRekjvuWK1a7DIGqe25pnUAXkry\nnvSLYuC+2NgROruvPC2Ct3ucTu9in6URU6Eik5muKFNz+/fu/Lndts6mLEnn\nYkcYLOZOJGasJLHD6i7eYWuYwxUwRyqB08kev3kw+uTIsc0pieDUfMRCZKOd\ns8bVA4u57nNm4zZ6vuUV9+CpsSs++nyQD5fN45h6UWtrA3QPPMc2D7aDLE3l\n9va4UPxKI5mB78OI4uTKSLjngIq02xqtu+eNE8ivWAPUf/sGz9X34ZnQTLjj\nWx+8fEh5lWge4oOUvRiZiT9gB6h162kq49CtyAv2+iUcn8HYgqdPFN0D2s1F\nIVWd\r\n=rgzl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICYW0ZTLEhUi/CtWAqavFLK3YWGp2JQiiQyYzEUeSG74AiAyPh5VQIny3MUs2VjmKfua1kpjuZN9C4KXKaho9Ce4Uw=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.2_1582454875234_0.9731600371738467"},"_hasShrinkwrap":false},"1.13.0-beta.33":{"name":"kafkajs","version":"1.13.0-beta.33","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a153f84b60b887d443a375bcbcb7b56720e5dcc7","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...a153f84b60b887d443a375bcbcb7b56720e5dcc7"},"gitHead":"a153f84b60b887d443a375bcbcb7b56720e5dcc7","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.33","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-43Gd8l2Ieqr3Q4HzPtt9LshzAbrZBEwUBNy/XwLwXj/7DqJi1iDUfBZ4rrjdHrfCih02fLuk88UMhQb1ScQenw==","shasum":"fcb558752f80ef3f261ecb8f82bde04764d01883","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.33.tgz","fileCount":289,"unpackedSize":516262,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4yJsCRA9TVsSAnZWagAACSYQAIdTX9Ca5Rrbg0wFniG2\nQ1MFAAmhSIaxHr7x2Af0MQSyxGWPQnNVjLp94hmQ03EdlnbVVVT7zNGJYiLO\n9N43s1fb9DvfuUYewk61QDY+1UYwY/y8z4DkWDNNTz1JegqtXRsi+UbkyX3u\nP0Wy3IdEHLoQf27iYHz+tUekpQbQPXyCSnDsjQlGP0ucfHf7uJ71+0zP51hM\n6e5Ug4pvwXWOopzHSg3gi8rMDpu7TylqIMPzp5EF/GmnFuba9Ucei2RZ41Sf\nXu/+RrpakNKDIiw28FXGyN56ZTrMRxKI/iTnL6eKfobFQxSPoL6Z+i3Eit8H\ndZEJns8KKicvnfG7BXDV1zPMQ9YkJob7balcskpo9oP7Hd87ih2o2jKhyLQs\nh+YFkjxuBIzvjlR9t80DKWnVe4b010+6d8cwMVG+xJn95rctsRkqS92GHzcI\nyWRVU4l4n/yev6Nwi/91gEuM9jHpYQOcmlDAIuz4DboiDv8VTP5LjMHX0viq\nI65i2Mbolvc2DPWjw3kyzX/Lny5HXWIolklW18o74hS/JMQ+7SR+NJZFvh5w\navFP1Zq/La4kU805kda1EwWp1vWnBvzxpS7JyaLvF1EIKEkchTLmtWZnA9DS\nRs/1wf59Om4HPslUM08+1bwixqKHciGC5VSO5diXrg6/SaB4QHZKpBwvg/IB\nhFkw\r\n=NA0K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkvzLp6mth3hhpzeuiiAV5cXNUt5HveG6v0t6tQX6m+AIgTec5c9AkivTBEPQY6SlJ3jQOaxpdTGn1jxqXQaWp1pY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.33_1591943787287_0.8371497869665716"},"_hasShrinkwrap":false},"1.13.0-beta.3":{"name":"kafkajs","version":"1.13.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c5a0a3811b0e846f227ef58aae64a000af83f10d","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c5a0a3811b0e846f227ef58aae64a000af83f10d"},"gitHead":"c5a0a3811b0e846f227ef58aae64a000af83f10d","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.3","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-pDVnjOe6lwuRTvHV2dbtDQiAImgdDqgbq0766ZDtFov1FSzBAujs6uVhqULxEgxc9PSFVpfggFva6FhWPvxFhg==","shasum":"05702942391953e86845ec4ace0fd9949bbfe03e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.3.tgz","fileCount":277,"unpackedSize":497683,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ1H9CRA9TVsSAnZWagAAiaEP/iSLAf0u/ODqbmBLiQJa\nyGTYfIwimxJ4WWmlyPRA8a8+kdeq5QAx7ouEMMo9L72wOvwZItj0Nw6I2kNL\nuMipfOhZJvjIMVPrrG8NKiTZdIIrxqTskp0bafeXAOiL0WOGYynWzlgbOi3/\ncQ4GALB2xG+Bmx4sxXc+AvLIId0fjSjj5bnHWqCUR1tXubQ6Lttqbhb/0kEC\n9nBfebeFLb1uLgJagwvgIihjkgkk51WtaB7DBGq8wxraNr4Do0QtqXaZDQqS\n0DMaKWfpmWYsH6n6GVjSTWMTz5JhssDfQDk833di5LTa2alossj1ygiMf3wC\nj6TZNsnBw/m/SHPRhOmAJRCeQjheTY5j11bFLJd15E5J8wlGScoiBFIq7H8f\nHYZ2gDy7sDXArlFQADeidxaMA7HaXWDSV9LztNH3iM8o8na13lTmTbEF3e1J\nzjvZKd7crgiAMV/seyKN2HliWchOPyxPUcogPI7g6/rcuSIZS2XnmoqxZhXV\nv0XO8/ANlfmbsc28Fgu19+Pn2lDMj6uDiNj3o6pWBsF9yuL9zRJ+CLy1xWLQ\nR0j3lQmn2KuWFoBm31cp3Ui2FcZKWj+odcdldYd94vJI/LU1PvueT+Bw/SzW\na6LNtQGI7e74Sczobs+NmxEpi7D8YHDW9Lu+K6s41iVH7Bbwi766oNuw2tSy\nOqHl\r\n=4TXL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAjx+y/Puf8cGMQRHpetI8w9OasfRCGqqTDCMtMwOe8qAiB8K1xYd1M5X5uYqvbYC9JS1PNW8uPOVlE0ArEaz2eVeg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.3_1583829500929_0.2816815246913962"},"_hasShrinkwrap":false},"1.13.0-beta.34":{"name":"kafkajs","version":"1.13.0-beta.34","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"832002a815976a3c93eafd042d066071cfd5f0f1","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...832002a815976a3c93eafd042d066071cfd5f0f1"},"gitHead":"832002a815976a3c93eafd042d066071cfd5f0f1","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.34","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-3HZFA9Rc46yGfOFLxjdOJwIjmMgHiaFfv//6tQLSVIOph35y0Pzhfm34ZwiV4ZUQruQtOlfqrDtnkxXngQBntg==","shasum":"3e6c4333c5e89202bd83db5e5e555a1a5f144c22","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.34.tgz","fileCount":289,"unpackedSize":516322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe42emCRA9TVsSAnZWagAA03UP/jU600gH5tlX2deceLxE\nLRw/kD3JB//2mI/JAnz0fciNrzLiRx7nZJ5O58LA1TEKJKtSgH4cWcVehY1I\nXNqMniyrWARt5++sBsEqtSx98e5c9HRMhNfC0aQbWE/WliuBsLJSjpFBvDYy\nwvvBxb3BkwU9MyHiwtieKocHx20H+3avs/QnyRcq0QKtFZMeIWW2qU8JXWxG\n1c3fbhvav8CfXM9dt4wxBc/XhBcajTWOfbv41c3u5/QL/KPMxT5cxzCqUDtt\nWGO6Kls+8vSb0DXmdB8lBw+0a4pB8AzhsNIJ0SIpY8w95BjE9S5uZZwCN9lW\nL+5F5tnIFIUcdOeNNqeJNYhD2NoTffPc4c5hJjtCcrnz9s0BypwDTM2Kq0J5\noXPX1EchXJlRL2YyL54lG9la2nQ38RnRJNcFPXdTqgQ1NIR9699Gz1xC9QFm\n9KlZNfvIhOVCaNyEMTfAwCr+SjJ6sB+P4rkvrsVLAGpBxibM/7rR9TZBJ3Rd\nmgFPG3oCZbzjJpEvkzHuIOb/8T+94gIwWYKOL0tFsBgIqk7VPXfW7lor81x7\nL8oIhmKErONTT9goZetEAeMFMX/K4ueQBJk4c2McwOc6arsLXDZuL9QnfDTD\nehuFSzev21a3ojTtvIYyWw7tTZG38UQCOHWVZs+TyOzE6XVkMEG9exdEc1qG\nQNOg\r\n=azm/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCW3ahvU33zaPQaAF6L9fMhTfRLzJ8ghDsDM0Ldoz+NAIgEKaTrMDXlizdvH7WuumTPD7umYrTk1vwynX03AmYEog="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.34_1591961509885_0.9088295287880837"},"_hasShrinkwrap":false},"1.13.0-beta.4":{"name":"kafkajs","version":"1.13.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d9aa72f67efb1a013a493d8f341d6630c3719e30","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...d9aa72f67efb1a013a493d8f341d6630c3719e30"},"gitHead":"d9aa72f67efb1a013a493d8f341d6630c3719e30","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.4","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-GVkGdp95ArnwowVIy1JmdCDs4jPbpRbdU4QVSxBnUeglyINFVZbZyIjxBa3sxD1k4MH4xeyk1UpmAo9uk+XD/g==","shasum":"7093bcb31926529df4e2358197df36119337e8ca","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.4.tgz","fileCount":277,"unpackedSize":497729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ1oCCRA9TVsSAnZWagAARgMP/2D8Do6EJrzVMHdhATCa\n4XTAq8KOQjvyS8CwO+pUHStK9nexTV9HRsZaRLu45tl0kST9wTwtzALZDjtm\n/vctj/pX920MdTekkhhXja9UwRabfBHCub845h4jcDJOq1HPbU+tFTZvXcPn\nYsZmum4FWa+SCBoAy8jgM7YwWBZy+8R0xDmEx2jz5KCJd41pAsS+nlLmnNbG\nyhKg2TIJ6MbcLHbtcHpBE2pvg93h4AhgOFxmRxv0++SfW55A8aBkLbEUU+XW\nrSKSvpWPAi87KLeusEUNVAVEevrMT4hujn+8jbIcv03d0zfg23CShU+yJgCQ\npjVtdrWKqpE0VklpMrtrVBNODVjf3gind+lbszrhz7AHPnh3myDDAn6sSuG/\nSzXFa0a7770oLU0vnudsF05bEfvaeWvSdR3IRyzui067xILQSI3rGGKo9N3v\n38dKJpPVyKUXNTFYStDzbIeESjrcQj/8pagwsvMoZTLWlByp65vU0Sv/o0MJ\nZH+uE6CfGopfB1kDneEXE2zHiyZNKO30BbEciy90BTon384e1zLoo5IfnpLO\nzkBza8sZWBI1Kr9rVM/kyvOvB5QEA3qzKauYHXiwHAYTHaiuRxtIRPnkYMZ4\n/J8IM4dPjnVZn/bGkNa6WEDLQoDxz/gL0msk31e0jfxyFn6L0AOcgOcfOvH9\n7Q6h\r\n=CS+J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9x3p82jM9k/46Yrfh7RHEikx689pu/Fo8/1BVAUSGhAiB5ZFiBYfe5JfIpybxXhwOtPnnHFTxKeaM8smCrmoOhbw=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.4_1583831553743_0.18750942051133634"},"_hasShrinkwrap":false},"1.13.0-beta.31":{"name":"kafkajs","version":"1.13.0-beta.31","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"3c27a1822254e8669904fc19c161faa2ced67c72","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...3c27a1822254e8669904fc19c161faa2ced67c72"},"gitHead":"3c27a1822254e8669904fc19c161faa2ced67c72","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.31","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Nai6La1TIJzhXzbBdn2n1K4Smfw2jYBGwPhQCTFgkwVNfhpiba53leZ1IuClimLfpxj2B5o+sGD0NIMBsrzyMA==","shasum":"ec3c5fe8085d45de9fa94086eeac42b12ce47629","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.31.tgz","fileCount":289,"unpackedSize":516140,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4Hp9CRA9TVsSAnZWagAAFXcQAIC1zece/1yJ5x2W86fk\nhXabtnVrH4k0f12vA+Akzt4zIDusrmEfUixlQAcOz5mcmj0h4L/9R4qVJOt/\nNey8jCa+LzT3mggdT2d5wxUdqWi5nLeE0owWtdzx6GAIdXq8dyySkqS7c11m\nali8hTvH+LHiHH/dykeh3AdQqhOrhNSt6LRhObPTCpZ8dFcVnHvkMU+mO8BQ\nNGEy68BNubiK6B8iXG4C9HOv1jKRejVDFMmFUjSMZj9LWkCC2MdJPtgcc5bu\nL9xtvoRs0H1ospANJPsZ9PZWopdSz3OUipEF4URqkv0ympAEV7sAKP26glJR\nAZ2+0b46lx4s4Aest/dt/L9DiAwAeuvxzBxD6phCe5eY3g5kStTCPa4NOSeG\nxT8TbRxYajGy08qittNKlLxfvsHaCZNQqSns7qQ4hMfQgvUDdbFigkT84Xh4\nJZ5YnrO0Jp3PeR5t19gmZiC5lKGAnWdbYmp/2vhqD2SVT9ttHGGrOJ/2H+Oj\nmmQGJUKOX8qoBo01eVpJYi9Dw061WccH+NdUyct1nkyAZfGCTtxAY9JkR/5h\nKqd+3CfqJfxHVUZrJVzX11tTrrlTqe7cf+7pexO0t9+GxOAckA1myqOM0JND\n1sXsRWmeATKNAP3a8/hkY5TDYr2JevKsWRsqE+XQdyCovTzRlLy+DBV0tsG2\nS/zA\r\n=6BsD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHlf/Ku4nXNOi5D5aOhaaC1Tif7ba2jDNthyQoO2rq4aAiBA6l1TICrF+1+FwIOlgPk1efVM4Tdp0CPYIlmDPELFrg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.31_1591769725166_0.3198782842087957"},"_hasShrinkwrap":false},"1.13.0-beta.5":{"name":"kafkajs","version":"1.13.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b5ffa139bd193706f363b49de25c288e2b93d71e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...b5ffa139bd193706f363b49de25c288e2b93d71e"},"gitHead":"b5ffa139bd193706f363b49de25c288e2b93d71e","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.5","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-LTymnq+7xzhTGq2U/DiHkyOgvKQKUU4aKW+rQnP++qPAQQ8kV85Bxz0txQ2LD9HTiqdCnXqbtVzE76iuTL4UYA==","shasum":"f6ab0cfb9da3c840164ab6b65b2f05363d5988f4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.5.tgz","fileCount":277,"unpackedSize":498750,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ4ihCRA9TVsSAnZWagAA/MsQAJr0YTxNKXOO+isrBwSH\n0ceS58/fWb7uIUb2LCDmgV+UKOW4E5gIB4eWAnp3Dsfy4yWFb9dbMOyA28/p\nalINqp9GrTn7JbRg+gJgKm6b92KI3M/8d2GdA6EV6pv908nv+jcT6qxKjMPc\nUHf2p8EFGDH8CjnlrWc6JfB5659NiRkSj8JGeeSB8L0MzdIRJ7FRLwGzQSCt\n7KIRsyZQRALQczFHtl/H2zWfjCA5Vr/ibyn+igAa+pelv2Qp2dHlj74LqwoD\ngpxXzCPiVq3xIs6AkCvCHdk/8HmFsrEH9RSJDGrurDYC5dNqz/CHvkvMuXWR\nGEmudr30aMoHUUU1TiKHKwIikxeVdalE+ef0MwHAoTLa/f/aZxqXGQREH3uC\nRuseUHTE9oI119hgbCq8lC9G5HcT9qz/H4WpyCL8xo7wVoNte+JRl11qKT1j\nW6ZW+absTyOLVBV/7b0RhmKffUXYSrr37qVcqLnNx+Vlhf4dvjR21A5Rrr2y\n1c5gQ6WSJnW9piVS4z+ydxrG7g+QR8C0/bwkgihhgIuXtze/F1UiLz/w3CLH\nAVEwQbbjyiZhWsOGN0U8jvxwzsL4yRKNAe74jVd+BKAJxZp1NkXIzYwtaCXu\nJPCktCctNaAQjqPYdyyJuKdKyaDzellUXwFegKkvuBLnexQs1uP5jsqjq++S\nrE/l\r\n=4M3P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxrw7Rli9u/+D7ZRPspg3oie1c1jAd1WgQEZL9IvFCJAIgcm8a2lKtRMKNhYxdYmSPBAu2ASoLpDsSXVa6RxtRc2o="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.5_1583843488852_0.38500085150507424"},"_hasShrinkwrap":false},"1.13.0-beta.32":{"name":"kafkajs","version":"1.13.0-beta.32","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"01007496fa54c0cc8a00c48d91da569e2fae2e51","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...01007496fa54c0cc8a00c48d91da569e2fae2e51"},"gitHead":"01007496fa54c0cc8a00c48d91da569e2fae2e51","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.32","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-9UMWArgdUAylU3HaBmug6IbU+M7BcQGiJkYhijKDDWeRmSs0g7HMNkNS1bTcfPSlLMbqotexvL5tpHsleB2iYQ==","shasum":"f0e06ef84c132fc911981ce12640025cd8278d3c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.32.tgz","fileCount":289,"unpackedSize":516246,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4MdzCRA9TVsSAnZWagAAP58P+wbkn/i7M9CBOCZ638SK\nBxxd0S6fx3hpcGoSr5xTJBjot0fdI3LTdeJF65CsJUwBRwjfks0f5LVIDFzx\nhvIxPLwV5qOiYhCZOBNjVJObLYR0B/6SCL644CqmLhxUC2q2vCkDigQdvtLE\nSxbMXdfgc6ffB1NpbQNv+vIobE3xDWrbo5bSHDBcCKG7J5t6UMYXjhj66F4f\neBmWIuf2RHPnaptl2VZpiUHhEeN6mRdKyCHfFUzCHVd2c9zEq589CVC5JHiE\nRueLmOO1zwO1Wu9H5thaLqKUGvebhGi7mX8HGg10xnaOcsNfdjA7FZtN/Nok\n4I/+z7mlqaSoDxsr/XGjPj0irJqTUmxEwDV5nO0gG0PrQI87lq22TSghzboH\nicKNEjycx501SByTrofc1uUYHaHLuh8HPvf0IBhuNGXoWT5stvsX2It9IPqU\nACebeoipnhKCoGjUDeMqzrb65TTTL4M2cIpLXEicyvEpZQf0yqo5NCDMBACV\n+Dtll4JqK+WaUr9rDtIMExxNne5De0Ev+OzxmCTHK/EmS7zPcBF+Bni5qe9n\nO877BfnF42JKRSBkU+nVDFIOZubcjfjf3oxglVRM+5ZZ21na+fYzYv7Xsk2k\n0CVD+ctdZ4R34ooE2PWOEVGj2Yi8FnLOk4gIGJFthh3IVjUwaIoVTVD2Ofq0\nuy7i\r\n=SCYw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFjVBGRxyn7NSLWJAbSBcIrvBfBmB1xrORcjyPR9tkoVAiEA3e/ikhpyBf09QOOp/UA7D3vC3r48a4CpJnuPAj31Ggo="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.32_1591789426514_0.7970509487105073"},"_hasShrinkwrap":false},"2.2.4":{"name":"kafkajs","version":"2.2.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^9.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"c08472878724ce5fc62a9a9aa865255d7e7682a6","_id":"kafkajs@2.2.4","_nodeVersion":"14.21.3","_npmVersion":"6.14.18","dist":{"integrity":"sha512-j/YeapB1vfPT2iOIUn/vxdyKEuhuY2PxMBvf5JWux6iSaukAccrMtXEY/Lb7OvavDhOWME589bpLrEdnVHjfjA==","shasum":"59e6e16459d87fdf8b64be73970ed5aa42370a5b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.4.tgz","fileCount":391,"unpackedSize":732117,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwIebP24t7tS9IGgLx0qN1zKUlXYOMAvATLaeo89e7nwIgc6onFaad7iM8oayi3yN1ddtLsywIbNnI4ux6EBo1tHA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/K2JACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrAwg/8DxAiC3lWR+tJF3cUmn4j91arGi+XMCcgepGzRFi6eqtGDI7S\r\nEif/fzPDTMvsH73q6UMcqIW9vuazxJAGH2rCsc6bf7DErwjWCJZ1OhOXCuDi\r\nzTlUDY9UEghqzvHPkVmqZwSTywO0V1kEExySB9eri27RCH7TmiW6w4l3QkiU\r\nITvqo3ykBVPvAZBwE39TdzT0Y9Risf9D+gddSaM1fSKzfCPH/mTtr0ZdsDw1\r\nCVEzFkPwF9r8qrkAhkH/ME77nMYa8C2fT2RnE0uCoj+SYvoeJTznZRuz1VJw\r\nJnMOT2c8NuB9JUgpn/gPxsJ3IhDEDt8nmIiKwVm3I3ZHrcnWYk+aNonA569A\r\nYO9iHr/4aCDvRYA6WVzIc04n4utQTwyl0ePI6J/KihOh8unbaRUNiRFPdw0O\r\npewlw77wvW2hEJevr8rqX1ebvIijY1+egSpcK6KjY2JK23I1FXwFXoZdqNOy\r\nqVQT6AUzkIDUt5JzBvVfm6mdNw1HVPNV1PfWTepdZ8wi0MJE7GWoACl45mMy\r\nZdbCLG5JrP0hcC7bbjRIVoIip7tlyZb+quDKoePXg8VPuruCjvha34OqMp4g\r\n27Gfd/4GtkeaRzRjB+/tEyGyqGxfR7TgOF7jGb+7Ljy5hjsqKlGU0WEUSiXN\r\n74S6f7321/6RCht5dUraJI6TxWx6JNHckfU=\r\n=66hL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.4_1677503881196_0.0553960234374109"},"_hasShrinkwrap":false},"2.2.2":{"name":"kafkajs","version":"2.2.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"46e56c975ed3f4e861f64ffe0defcaca90eddb2a","_id":"kafkajs@2.2.2","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-9wpGLAwRVbVtSew3xwi2f2BMuYLXWhYcoYB/O7gd1JYOYuYTAEC60CeFgRQugI016MxqvOKnOOA+l1jx+4b84g==","shasum":"0b605e9583ac2ac36f843ceb55c93a4f0fee3112","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.2.tgz","fileCount":391,"unpackedSize":730902,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmgJoN/fws9Ag+X5RmdDVkYpPL0SRiwPW/q747MNdu1gIgdSxgFAxcShfRG1+D5GMaDx7CtKiCtzeKZpj+e/nMPLw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTltkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoaDA/8DQ2KG0lwEo3uWZbDF3lmh9wPbxQWRStlGUyzgNnBebsi58VT\r\n8GTH3IuV9RqN0BbD9O3EEkd6Ap4XMk08jspkd/y0oT3C0jB+Obj4es2EziE/\r\nK7ywp1K3n58o9B7TPtxIx90p46dVRKoWXlCnM6Roqrn4UB2slwM5/0Zz3i+H\r\nn2G0remAmF0hZaH4hsDYiRZU7A6kmoAEe3W/7XXl68kJbN1ZOVTmwos7pMlq\r\nsYUxzsHohPH4KjGk3pkHNwvBDcyj88sUl7R8Uqx99LVIwnykp4n+1yCqcygd\r\n4jPMbSveJ5bHBFahTWOUyY5FfAvsSDXSShdxS9hiKfGP67tCUUvtW1xaoy3r\r\nzQ0lvb3YQkZez0RVej+/2IlSK0898UD6yM6/l80OsbGsxThyg4qRpH5ASTwI\r\n+/jZxeRFc1PPTqvDnnxuRyz0jRap0g/Ms9X0fvD9VneihMnad2t3ftX4S1iR\r\n5XgdbURjxzRKK2pl1pgOq/C/19eOcEzLba6Dp+xkiYZVbIwAP8/5tlLAIOwP\r\nDM/1d/QjROI2hyCyHZU+T3kmTrVDdy4wNTohcZqySxrzXJVrVBOHmSIWAj+H\r\nY5kdeM7HYiOGESczYA4oIAVQHSGsMXXfCmr4ol71huQxjP8a+j9POWq1Q3qn\r\nESRaExwdAv/Mk+ORR6NCsEJC2vFAav2EEm8=\r\n=unYJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.2_1666079588348_0.5661172357761568"},"_hasShrinkwrap":false},"2.2.3":{"name":"kafkajs","version":"2.2.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"dcee6971c4a739ebb02d9279f68155e3945c50f7","_id":"kafkajs@2.2.3","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-JmzIiLHE/TdQ7b4I2B/DNMtfhTh66fmEaEg7gGkyQXBC6f1A7I2jSjeUsVIJfC8d9YcEIURyBjtOEKBO5OHVhg==","shasum":"a1ab1b7c4a27699871a89b3978b5cfe5b05c6f3e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.3.tgz","fileCount":391,"unpackedSize":730984,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDuztd0xFKfMpDqnFVlYR63nW4WieI5dr2xi8BH/Gxa6QIhAJV7hE1gomd/2COccBoiUY4qLMUb7R94x/nkh8mKuglQ"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje0aQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNZRAAjjxcZXgdYSEHsRewjvVd6T7IHz3scmZhKwpxv1BviF8J9VY7\r\nAvver/hBMWSlw5KisqWv1G0s+6u8yVTFrGAOjDUKvTlAdiC0bjorNBWytxvm\r\nmt0cS1pX/Xc21XED4N2reufD/pF1m9EF6aj/aMdkeqfRitnluZpViuiH5JsU\r\nK3c3Gw8ELQGvHBcUQSBMmZ9pH8BCTXKiwuutV0ZAJWhNzCwFCIJWFO90YgZS\r\nq+zP+PMAqaWwA5vKCH+DjneOODOIpBui6/RqzJJisvI10+tEkEvKlAfA+2eU\r\nvpgvh4A7Bc2k5xGlHAu8Abh+9Ybo7mLArzUF7vb1yKdD/YFNRsLbJNPcXiuY\r\n/hwkcjBH2kK62jm66VfVwqJisouhsgbvvRVqCc528lkH2Hqy9cFeXdz8cfr3\r\nIXMQavawser4NpK5lja27XhRtpIs363DEJNoM560hCapPQfFknze6joqPL5Q\r\nZyKaCPbiP4sRX+Vz5WUtRCFkbm9X3aAqTbF3WXhYyjuLqggOc3QVLrdpPpbd\r\nJyB3VwYN8qu30GkFgcOcWXzKoG39S77vlBHDdceCRy2vNhePn0/Scl1zNRMF\r\nQRknoUR2+Mcf4J9/k7JsFG1lGgLyNFZbp2pi0k7UinVLgPbVC7AXn7YR35EQ\r\n2dcvRamzI1mW3C6QgqikGi91Tnr0rZR/mxE=\r\n=iz2h\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.3_1669023376023_0.9141383144534321"},"_hasShrinkwrap":false},"1.13.0-beta.39":{"name":"kafkajs","version":"1.13.0-beta.39","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d86af3a229915f5acfaee96609dc8f54744787ea","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...d86af3a229915f5acfaee96609dc8f54744787ea"},"gitHead":"d86af3a229915f5acfaee96609dc8f54744787ea","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.39","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-bzkbzZiSa9gp+lsA5l36awaXqQtCAiIs5JL3hP9KC6yKhHxKDjJt3V7zEZBivgm8KKdlApZtHcHGkWdKqJe/2Q==","shasum":"08764e69f2d118ae2d2a75a1b10f8690d86b7868","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.39.tgz","fileCount":289,"unpackedSize":516541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9FaMCRA9TVsSAnZWagAAaQUQAKI2KT8DUBJtbo2oGlvh\nwGu3QiGx/K9If0GVo8R6znXf16sbGvzII+ZODbZUvPr8aastBU7RALVq061C\nqj/RszggmshecYTnFW/PSaqti1+GRFLkSyXbcMVILoUoPtmvi+FxD21oFzNw\nRmiuQPc4gm93+czfYHw/9mi6mLKhhdlhEKXNYij5bQqL91AVL0bS5o9WWlqK\n/ybEPSg7uyBsW8hbrHXo3YQpgGQGtoTzzmeMjho0V7puWjAzLeYwFkJqG9rh\nAu0tT8DXVNVHdXKISir+hmfC0r/J3FJSEcxrooMln7404vZ9/S4OqnczvQV0\nTQyTR2shZcVNjjkVNTueqoYGvdsIL7l7DWcZhIGJepIA92DGDjzDQLApib7U\nrZ8OwRp9niRsNm3qCjnOWcXBEZJjBsGiPBtQnaXU6f3RzroGMp46X09WXf1d\nA8b7EGI75Y2NTAa+SgIJv2cb6VVHCd8O3A2szZDkcLnPAk3BM/cidctLHrHo\nYOWkMfbrsi67wx38eZvv4+MRfjKvtvLjwQI4n652VbK3L5ZakK3pduYpogiB\n3tB+RBeIZ7Rh9zXN5Uy9wSVt6BGRnwjHKW+1io4lr+mjyZSaCQlUOK8XX8Qd\nP8rBoVrvz+1Xw3RDXXMUHKonRRDd7TsWvTnrDiSLruPL9r037fGyiZ3vqcPo\n7/xL\r\n=lBmA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDETs9ItttRxZf8G495TQ3Q65UZ5DdB5L011Lw7k7K9PAIgPq9U0ulFf6uw6ShlsaqSQ8ELtplKI2ttU1Hmo6xm6ko="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.39_1593071243520_0.80264668583129"},"_hasShrinkwrap":false},"2.2.0":{"name":"kafkajs","version":"2.2.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"c8748c4e56d16f77c28424c3be5525ac22b934ec","_id":"kafkajs@2.2.0","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-+sdgyLuC0Idw1g9LSBXjtoCr4K+vVaHP+tulzAK+V+HHvO3uW5woNkzLnbBx0MN4WRuEl/5g84M3FSkH0ZDzrA==","shasum":"43b2d13c82395acee4500f09d6c7d503db8c77ea","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0.tgz","fileCount":391,"unpackedSize":730294,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDW/9U4oWAIiH+UkARuI7ICj24yM1wcFpXvsjfq973fEwIgM0gJH/6NrSiOlWyhHDbqWb82Ki+yuewGFX94a9X4Lx8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi+12SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq50hAAjFY4Xe7NetaoHnh3LvqQ+k/+4BYgVyNa8Kl7KdLoljgE2HZs\r\n0gu2eSEOIS3QOdzqfSMPmOjMaiRPQfWpV/eyVdu7NkhovDjYspqgzegRMR5T\r\nyL06lqwp+7P+AdsWwdyheoQrIFplO7CyeBl2j/ri8OeyWqhkTQMCV7Qwrp+X\r\njjeOpsyxYHHUGsFMUfK8k9cSa7eqEjwHfJQAdKAje4/lgNEcI1CU114mP2em\r\n7aPZbQ2Ysa0buoAGnuDIN1hAANpt3wE+lo/6XtqnTU0gwEFF1GHP5Q+YVFC4\r\nw9O/Uj4ksm4u23UZzBiC+XIFiirmlK56ReZjqoNfyism3pe4HPieOxk4WT1e\r\nBz61TZjNNhUhda49V1waXA5lv5OieuJ3wNn9I7boWsNbTq5I8c/YTezc9Hqj\r\n0CSbPZa6DCHFnHutOyyt9//4O5UrhVllPnHGsvPml8GlfJVBMEkby7HRgUCB\r\nk6qmu8c2VVHeLGy/Wc+NspFdRxSI1TfO3QDiRRuisgxxuVDh/vZmxAHxEPwW\r\n6jdGvDLc5NhUc587QFCccs09GTEgwd0p7v+KPBi6SHV+dbUEIHgRVN+NJnpJ\r\nv4NcdiE5Y6zjxxr7nwyrefnAXjIKrs4pyXzTwr20pwNiQHqDeBmduFxo13zq\r\nKMDdBSZrBQvcQM773vmc4ZFqEInw8y5i188=\r\n=nW9m\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0_1660640658073_0.8648814342437587"},"_hasShrinkwrap":false},"2.2.1":{"name":"kafkajs","version":"2.2.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"4abd8e4a0b367a43029543e22f52d409460db9de","_id":"kafkajs@2.2.1","_nodeVersion":"14.20.1","_npmVersion":"6.14.17","dist":{"integrity":"sha512-f3a4TDeBx0TMIqAnSob64lE4oMOSFDjoycOHzyxISpOzPw5GT2AyX6ibfyUPpt5nTxwGkJSFRxPpidNTd/Uz9Q==","shasum":"277d96459e25cfd77bb1c6bf792396403912abe8","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.1.tgz","fileCount":391,"unpackedSize":730814,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAEsL3Ktypko8wQhQWd3R4WxpZFU1sJQMITEuTtK/rQtAiAb3ePQjddUlpKJtp8ktXwIZzm0QSgQcbCA9mAO4lkJlg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSCW/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpEZw//WLhGhFXhNmANHKCZRNHTi88clNPCNd3rdkLRWueELsbRW8Za\r\nFdkLLXJLzMHbFLKMeJbAdkD6drKEwjvUXVM5BVMaSIK/TCXSWeQarsoq3gbo\r\nVEUQv4EfBMcePMlVOmeth/tUSDxLibh4q+DaxsXsQklsjCiXBTtsflOXlSuT\r\nZF+5CLc04P6erBLhqj9QDnk5CiKrkLGevPLl15lyyImnXSCgOuvIJdtxLpbT\r\nmOE4IV5c96e+Pj44CQC9qLbmdM7ppqlQFwzJtcqtywAFgFPh2LY9oMayTNGZ\r\niaQyStUoJ9PbrFaGhcE+h3agF4NBQ58ckJHA0eVso/kbCIM6SoIVrhNGRs0x\r\nNeENLK8Jdd24zlyjzP38IiJUfQ/ThF9kQh+y9bZIlbCERcegC1P+Nag4BkJ/\r\nbPx59VAW/q5qJGWiKe9ZIKA+Go4SGSt1m1yhoE6bMx2DYETboa/j/TfFESKa\r\nw5QRDpAqqWnKzr5lfTcokEO5rCDXBbVyxGtHfYbPSMU1pJkgdpd50A3Yxp7B\r\nbj45zx/6mlrn/MIlruPlMcb/9Y/k5FsldJH3tYOaDAG/cduM0zkhsAGVNzEO\r\np6bz4uCnZMcrvfByVqk23S1mpl+Hr43VBovvETvzw1EBWJPUSo3PQdlcLPHM\r\nOfsd5aM4sIcmWBnNiZIx8gIiuUF32jyVUZM=\r\n=DjpL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.1_1665672639571_0.7182109682620732"},"_hasShrinkwrap":false},"1.16.0-beta.32":{"name":"kafkajs","version":"1.16.0-beta.32","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2003217a89e1aaa140619c974a0a75f18dea3417","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...2003217a89e1aaa140619c974a0a75f18dea3417"},"gitHead":"2003217a89e1aaa140619c974a0a75f18dea3417","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.32","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-fXnpfvQI7b0xJNRMMiDX05ezfG1/MtDJPdWhQ1e6SptDB/xe8JaGJwd/Fzd2viwgwYzhmHSg681PNOkX4Dz2DQ==","shasum":"c39fe37367e200eeb95c9ae1412d79db4cf55eca","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.32.tgz","fileCount":380,"unpackedSize":696372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2/vACRA9TVsSAnZWagAAJ08P/1vFjncHsIoxtjuIBgFy\nmPFduIO3A/YtIV7oQhEt0J7Cj/wV9p+emehPnUlxD2yiRjE9ODksKpYyzvLE\nYcSXHGHDuPFtsNiVx4yUBrV42SSj/ey5ECq1XEtWZtwdmm6+OpOiNZT8xiZh\nvnprq0S2KARl2VIqe2ETlErjJ+L0rqBwt8nSL5RH2zzsCX5o8ymZJUGbMu7x\nXs1YlMn0T9DOabvzn1b/0P96c/KVMOIXzKdg8caAv8ICKtXLuKtNayNUGJpX\n3/eWWjny305gIrBdA78sGO503kIk5sONixBfC1F7sRmxW5vvwkk48/Y1Royf\nHhLLErsPg/OFkZ1LYk/N+LowpnoGwYhewM9FYx7TU1FW/0/SuIVgte/fPccr\nhESmjzzABif5Ab3RwrPhb7BXydiBm8w8y4UA3km+jJ4G8qNGAA+DkFvw0o65\nATBpUp11WqWSKX7zFbUmbkrNzqoqEJ5yIHB3Tbcit/GIsRTef+hkyqQqpLxB\nbsOHfcfCJIYhNfIpQ62RgTZPKnYItdid6HzIcVllGyMa546bnaN/7P7VD5rj\njUjTHHOeGV+m5HUQv0sxxKIm9P/uXDoba9jcGe3TmqLRY+LZgUVhHIbL6dbV\nXyr47038CCtHiMK1pd378QsDg1Ugfy8/xrhoFAvRYxCSAo0RImKSqYxVviD0\nSBAV\r\n=7ypi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1ascHrDeg48JHRO0/wvsB/JKF4wUD2AWQXeCgRGaXgwIgWhCKv6M0vvs80kXCoa9H4scQ2dINkI1LzjIKuyP92ek="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.32_1641806784065_0.33725564256855023"},"_hasShrinkwrap":false},"1.4.0":{"name":"kafkajs","version":"1.4.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"ef8458b532a0a7a2d68f5f01eec6fab79046c815","_id":"kafkajs@1.4.0","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-Roo9KgeZhgBvvaVO3HB552C1rMRdn18oh85ySKo0uwEtOnydRcsqo4GUXT+bJKmcSes5YXCjbL7ZCqCzm91sFA==","shasum":"41f445b4b7a4b8d7d143da12519efd00f3f185e4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.0.tgz","fileCount":180,"unpackedSize":478601,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbvOfcCRA9TVsSAnZWagAACCEP/iYbFzBj8ppZHqbrUhOZ\nGDaMBMG9dQJS7rL8C4o53VI+WV02WPPmBD9ulmwXyYC40tNMFl8NBddJARLQ\n/wZlK99vHj+ovoL0k6BaCPt2h+nCCKAPoDZ4notOVtum97sLGt9ijYLD0fEH\nmLJWdUlbXgAocTvuD0D9nyIm+3yUWAOrUXWxdqMKoNSffEDIBQ8947jIFF5H\naay+5o4uCqZDbg36vhHKq1C7WNYNJDnqyWlg45XM8g9ba3+gfgqj2u1bxeti\nFnxPbdLq11H/RRl6epcYCodmF6OCtx/pr5bqy7zRug082zmVDArQar8n+2no\nkUa4yNb3a5W1PVc+IJjsDD/kXEmQk5SZnxNQLod3ztX1P2qIoJ2AG6r4Zuv2\nTLAqfOeJgp8DMVy03IZ1Th55WHDQ9bytkb86qJxFDlmXZpSvvOm4k0keB4sd\nm/6AnOuDxlGbwgcURqMAm/AXVLhr4ZHF6/K5BN7xFwVU0mvi/dnyVCBrzJrd\nGridAw9L7LH4VKL1tnwlpm/04SgmsbnpbhfHjdDcNZb22EdEIbmQtCtI1X56\n3FQE9wfF8rl/dud852tfvcu2OI5xgGXvKu/Aa3IlpWbarrI7zB4DorXAzK1A\np8wvQGKGKq1nJOM6aGSQvg3GubQqAeVdpcefT4kQj+KZUbXkya/APEG1nA+9\nRrUa\r\n=FP7/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyuP478CVggcAb+2asBfwE15hL0ULvUYdJo9LlJVMPHQIhAOF6TuZIhaBZi76BlAPN/8fLtU3oy/0iVgTgvPUAGo2j"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.0_1539106779025_0.5373557610237749"},"_hasShrinkwrap":false},"1.16.0-beta.33":{"name":"kafkajs","version":"1.16.0-beta.33","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fbf4a178fd062c346be94a8104b9f9f28356df5f","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...fbf4a178fd062c346be94a8104b9f9f28356df5f"},"gitHead":"fbf4a178fd062c346be94a8104b9f9f28356df5f","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.33","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-395/ac16WyHLy+eCXtj09TMVf4nf3p9nvIpxF6Vvx3XSBecAm/utDWChX8ooJCCcJuetRve1U1CU1GdZwu+rzA==","shasum":"fad28f31b51922194204538df2c374a9f3d63edc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.33.tgz","fileCount":380,"unpackedSize":697078,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8k5LCRA9TVsSAnZWagAAg4YP/RBAd0OkOGHaG1BvtZ25\nkymnf8HDiGwtuPCi8LBEx5smnK6zEkXhDhlwKjJRlKKRfeFNLfMBvv1oTkUi\nqqf2QqCun6RhaZyaffxPRaYYINcRzNdkQWBaxBDlXakkvQIw/UpYdtY4rIqD\nuyCMIvtkve7nEunN99hHPIIfwLz+8hRy2PRahJ8fQ7xgCQrAVzaA+FHSB7rP\nWOi6Cfhr+voiT4wo4Rv68FUKyBd4T5Zlj3xB/SvBoDkoevNh4edd8HZ21IJF\nTIv6LlFgEPMpLKNNmeL+3+OWENLvlakrHSbc+taq9TC6J7tfY+imavqXWXaD\n39NIx5BDYDTs2s3eX4yr1xZsm2/PomBf0JCxwOXMXJ9MtfnKbBt1vRAYQq76\nTsRXeR+FbywySh0VPdfp7r+XznpjyMaalW7K2PEb42dBHhBKv6hMhAGZOthw\nN0i01jB7/HAXN6jSnWjPfuP2Qvn/+Y5jHZZ2xjSEE9Sfbl+41WrSSNGTK7G9\nYIuvlao7KwZX4ypjMEdnImAxjcPUNSqcA/V5dNjzFzACHxKKWwSxgcnc+VEC\no0aAsvGJxSf9+4srS0iIPXG3TH7L9q81Yg7bkkvcajV7oHwqqyf60Ak/wv1S\nfrPvFLkmtzaqCkRkFphE/CfZvQMCquci9P92/EaEP7Otfk1z8ISjlfEzu3/y\n3Y2u\r\n=uzos\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDUJVniebsZ2Uc0K4Cwe8XYpZrNarESnjZU6W6ut45zFAiBVFxe2juzz6wsXKZZB8Lg1Em6OzAYSWj5Qi5IoN9/aKw=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.33_1643269707507_0.8584231389056998"},"_hasShrinkwrap":false},"1.4.1":{"name":"kafkajs","version":"1.4.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"67673c931d4793828da86266197beede4086ea17","_id":"kafkajs@1.4.1","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-mqSQqlEexxvCZgLeedAj7z5cwsAnNORewzzsE8pLeX++JmYoTlKVFqNfkS+vMosZXarOIP0V3CZZbMKih+8U1g==","shasum":"172297d508548524afa36cde472f9a20cc298b3c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.1.tgz","fileCount":181,"unpackedSize":484409,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbxyFuCRA9TVsSAnZWagAAkeYP/0c7H5wsLqlu1IOXfUuv\n+ZTD6p3O2o4AbeY8CyU7EFicFJig/X03h15v9AwSL1ylVK3XIwwO3s2pkil6\nrCDBSZlQHjA+unT2NO2JA/8n3dK4RcfqP6H5KUWpvnazOxaoa9p6JP2a4UgH\nMC3HuhHwJXQc2XQmiNQGBNbujSvpwtHNmGDnZ1tvf+dmxZBxu8JpbIggBhuX\nIF1WGNUFejnL1IZWkla6dGGcwIFxERoQOy+rJ5O+KimKg0jZb09/o/KS0i7D\n0uGX9C7ayp6ipfRciNHIbO1/SClPGlDwNPRWicNnI8uz4YX16xH2WtxGO3ac\nHpusQdYAr+OaaNlxumPtxL+a9kBvEt2RgcCddqk7JF1u1w8ZiYedmqrql7Hz\nmkQ9jV4ZSBXJkj0hgZHC93/tKGTWkORkqllMPR++xnNovoSypaZr/2hqBHg1\n6l2UPNQs8AP4k55FIUwMCrZjFQsqDpKdDxxBsnnTD+xHFit6+UkIqi0oge5Z\ncpmSRG4qTAIO9QBKEyLzPBxkRmU9PI71zwqwxJ4xhZMRuLk+l/BuTAZx4D08\nIbJns6NOGuE0s2xcm5OxdbLttapJtQjcEJGM2MTnTIpZu8QL5Wh0sW/zjDQQ\nb6CEiz/K4LO76A2fcEuCOoyEE3yjlC2OxYA2dRanTyap/1pdcXIbvLbcuhp6\n6IX+\r\n=7D93\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRsX+HhF75dCaNcDB2YIt5v5cuynZ6EvkdUUizhBHmKgIgLIXQVvj6fDJZd4RBGWRAruQW/w6RI6kl6S+YfPpWgqY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.1_1539776877210_0.3824381731038089"},"_hasShrinkwrap":false},"1.16.0-beta.34":{"name":"kafkajs","version":"1.16.0-beta.34","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"eac103dd4a49b4d9946ae0bdf3f58a94ea2501dc","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...eac103dd4a49b4d9946ae0bdf3f58a94ea2501dc"},"gitHead":"eac103dd4a49b4d9946ae0bdf3f58a94ea2501dc","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.34","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-/NvSIY7g0i/7iHNYAdXhh0fWUM7ShAwh+HUvXtUZO/VqlbWc0Eu6YTWYn0U/+JQuWO6Tppq8Gy2VjHJ3Ieh40Q==","shasum":"5226c384fa7c6b81f1e948fd0ff3944a39676eb3","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.34.tgz","fileCount":380,"unpackedSize":697076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+6atCRA9TVsSAnZWagAAd2YP/ip8M1aZ/pOGJAZ/gUAr\nqZv7BiR/wPG/hlrO5g2MBZRbOONwXTY7pRzeTnn/Sr38QJ5WPDW0CSiQCSzp\nrHO2g2mvYCxMboqeDIgJ1whx7DlSk5qs62Os3Fq5E/z3+/mm8tjXO3wsecbS\n2KzQ0D/zs4+phWM0jju/BB1zdJFMqq+NPiYjqMStcputZ6CsZc3mNhbqj7Hl\n02TTtqCWfbtCo1OCEHZsImYfh0KU0qj0oow2UZssAdzdGmkdj6FHQJyIdve3\nR9+aRPiionCe9euB933Kjm/NnrM175A4F4Em537vllUTkN2RtGwGadTMJIw3\n5TEHZiVdU6SOgqSJoSjHQVmcdOUhOJTfyHiSRkSuH/mjssC5M89y6poDmzAW\nKMlhbGxBzG+bPZxNOM2YNQAOTnpoC1ZXr4kJLU4WMzJPw4Ba2tax5eanKndO\nH3wfUFFrPmMQoKP+E9MrYj04xbX15zA+DPi9EfXL1Ya10Pl4ymQQYR1AlFwV\nCma3RyP8anJFdcarVyjgtPpP11v9hQbq/beFWRSS9CT9IT51606+ePNpMIoF\noZUmNDUO4DIW6HdJWEBd9ErzF18jewAXBPWj0yMieCRHuyjptZBaWFmcBNXu\n+JEU/G3N5II2dFUAx0UKv1RggPimUCXM05uzK4EsfkdCh0oWFIDaudZF259g\ny2ka\r\n=tjMo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE/svdshu6wF2prU7nogaHV9E93pFtTTQRkPzrdECXLBAiBO6sTxPEv4CFjezeDxldTloaj5geMRa2UL2EH2P6I5WA=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.34_1643882157007_0.4789620032044548"},"_hasShrinkwrap":false},"2.2.0-beta.6":{"name":"kafkajs","version":"2.2.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c8748c4e56d16f77c28424c3be5525ac22b934ec","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...c8748c4e56d16f77c28424c3be5525ac22b934ec"},"gitHead":"c8748c4e56d16f77c28424c3be5525ac22b934ec","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.6","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-V1uc8vL79Ir3IukQTYNe1h3iOE5UBU9+Dh1RWNPINZV7RlanHP7f4L0FmAaZeuXTWpST8L5TWauFFYrhlOAbPA==","shasum":"c09b80ee1826b7b762a4c0b777c9a24d17c5e663","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.6.tgz","fileCount":391,"unpackedSize":730484,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkwR1bNn4uDoX8Pp+4B4+djnHHFpCj6GuBovYmYO7NCAiAY31vEOf1/EqqGwA+uyzeTSBrPO3CWN8Y5uG5PaHOR/Q=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi+1rrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrP6hAAh4TZD+XSwpEJt2oZWBWZrLioLxlbMpiRB0AmxT/tsHjO/mzr\r\nY+SAVmv6eiWV3lxUrapz0qGuy9+mNUeTymyvXS3Akt+hWkav+//dHsbZhq13\r\n4CFmlKyikWdUR9q8uGST01s4fDoMLJ1PPZSZXuy7in/M6sSuIdAlYFYopNCN\r\n15fy2rAPIkNYx7ImH9ztIzVGz+MeM1oTMDM9MzmTpCK7uz4oXw/Ci8D+1Qgm\r\ngW5Zcxu23M8c/ZR436foBgRC2PaAc6b7wYQQWCqZXoCGHMWwqk2kX9Ycfzlx\r\naZ4BaSxhRumxl0Ulti7HygxTYQOdoplco06M3IX2sFab2dP/Tf89KkNmtwHj\r\naJ1ZzY/tFq41oJfiR1eQZ3Vqz6Z0SUsKd7Cy2A6b7ZC7D1F8sAhkpv7qS2cW\r\nqQ5+d/sGIZV2ZG6njOFSAQrOmmRq4uAL0P5BjiTaD9ZS6QgyIx0IrtXniKLq\r\nH622MBAaWKDv5uXpSd2R6JFoh6n2IfoBn5ZOcG0AXAy+yrDf8WPLd/6EuOCJ\r\nWCFtZtrTAAq8ZxIr0HE63LLZksdpzCk2z3kJddupRQwBurtQ6jRlCuFPJabU\r\nPQ/Belex2tTt3icssgiCfVwkp8PSkRbT3gIjFahZuXtFvcCVVaZKs+1EWpwJ\r\nq+6DQpPoOT9pQCNBbJ9fpvY8MId7kicG6Qk=\r\n=/tfq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.6_1660639979727_0.2818832173867354"},"_hasShrinkwrap":false},"1.4.2":{"name":"kafkajs","version":"1.4.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"333e0a16a6755e083fd38a2e7365024be42f79b4","_id":"kafkajs@1.4.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-0a0x+oh8Derq1NuDB0gbnNP/2w3wu/uYoIn0tQ6Tdi2Ri+6SRERe3jACqHamoJ6pz+r6Azc4OQy0haaomNLhGA==","shasum":"e7306f4de139edeed40a8de63618dc31a9f47e14","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.2.tgz","fileCount":190,"unpackedSize":14349570,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzg1lCRA9TVsSAnZWagAAkn4QAKUq0msdvZfoDba+ACWh\nAX/PDYsoctQZYEWUabgcEpPByWJb0OG8KKStZphhYodFe3pDJseHeERpCllV\nLyb4Rpx60XdVEX6IHWh1vqBfJvfqvgCB4ylrEM0qLHUfuLT4ya344GVcRjuY\n9KHqLGXM3wtFVSheJcZco2hW+nyCRmoYqVf/XXg2R/1xhWRxFddkC7a0B3Wx\nH5eLuKJj0C2VvVLYrXCf6INX+XQRJtdpjPnTfFoMDzXnXRJHN70yCfiZqM5x\nvIjS58dk0VNiklOjZCe5ICoKQThO+WPRn0r7R82m6rV0EQjyUQ7yHtvtEuBG\nxkAZLuGhjB0BUJsxqKvMy4/UDb+v4lTLawVAYvEXwEM24ZCayuS9oRGfoRfa\nxAa7M++vDXYcNx6CDDmwfoSp27t6i0KTk4MAdLYSB9wFgA6NMCvJMyXzBXq0\nVmtEiRAcrdE20JFuv2kdUfWCNVm98obsbz2G/4VWRCB/KUJqKrYbW2RnmVy0\nJSifSxARp+97tODOSM50ofXjnotpPcSYXs238F+r7OaXE42s+78h8pTAKd0d\nUoQ1RvHOVMEqE3tk8mwzhclKNI3lZb2fBjfHR94cQEh5P4nNhl8Rlr6QTlPz\nvAMg07NBTlmPnjUYImkUJcm7juQukC38HleABJ+JgV5UyGQ3i2ieh9gWXtNd\ndSJb\r\n=UFaw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID4mVKY/P/NSNnpCxlnGhg+bxoUa5qt/FJpr0CLTD/esAiEA2aL730HYQ818Q10btodWpbHPIWpq+HIvxPWb8JWGa3Y="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.2_1540230500013_0.8092028172390096"},"_hasShrinkwrap":false,"deprecated":"Version includes test files, use 1.4.3 instead"},"1.16.0-beta.35":{"name":"kafkajs","version":"1.16.0-beta.35","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d0288b3f006752ac6b0190f8aaf38cef50ea5542","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...d0288b3f006752ac6b0190f8aaf38cef50ea5542"},"gitHead":"d0288b3f006752ac6b0190f8aaf38cef50ea5542","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.35","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-hAxLf6NPOLBH9pcJ5bs4AJHy66ELbt88PmH2AKgDeNhu9oeMTL/xzzFUdUUlkmWFSFtOeiY+jwbkfGJrj/NheA==","shasum":"fb422d473947694bb2fafd05023f9bac46170489","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.35.tgz","fileCount":380,"unpackedSize":697671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiANUCCRA9TVsSAnZWagAAlJ4P/3GonCWR3qqtspXj7k3B\njtxwGNEOdtrq7jdL1MHk2+B0vvw8BVpf0cutoB76ot4WkjSwWnCibSSkkBDh\nagsg09zySr9MSiXjuG0v0ekodycY6g59DermBOjbcQ3gADmko2KdWsmREncl\nkAT9MKjlUoq4dF0kngLwZMFLZ6sazBJhGcl3rHHInQDKwS8ShpfOakaMnwZ4\nXQlbZulMyxvcP8lFDUHbXPR5DLDPY1hS5Hqbyu6khL4aNjSGxrc/dkJgdGgd\nle06gglha8hfwoluzxw9cqmuTr7YsBinnUbkJfNC59alt3IjQyf4kys2xykt\nfDgRdK14iSG36UD/XE/Xr7WM2rBcq4CiJUaYSRdhgy8pSu2kzL+A0WG/gOhe\n7CqVOQgq6ntp3/lQTMXu8/E0RvMEWJg87a2Rv+98USg7nZt7x3prcVHzttBI\ntRTOt2qK8eQ4Rt6444oRV4b3mwSfOz3daJQQ5wX6tR+R+9B3ocsx5WZaKqYg\nDxDxo673mBNlMGEoirh49wuCnNlMBtGFuEHMrICht/9qkLjilKz6DM6sheHG\n+cq++PYEiF2gmt+kEwIstIRGtceGOIKYRG9HMtCQmuZFYU3jZb08B4XwrV2k\nv4fpk9JQwuNbr/VPTwFeNCiH0RZNAmUBFKLxYKAo+QI+ykPLdwgoXakGuS9N\ndWjS\r\n=S6uL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClHj4VAwgwCOoxnvKsjDEXaBF64RnKdb4jE8im40aLigIhAN6r+bCkLhncbOy2MW2+XnFB0KbTMTqgpPPXH8fKZ5wD"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.35_1644221698577_0.9379638005929949"},"_hasShrinkwrap":false},"2.2.0-beta.5":{"name":"kafkajs","version":"2.2.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1ab72f2c3925685b730937dd34481a4faa0ddb03","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...1ab72f2c3925685b730937dd34481a4faa0ddb03"},"gitHead":"1ab72f2c3925685b730937dd34481a4faa0ddb03","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.5","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-FLJGdEyZmlxbufk0mXYDu6buIFq0OBjvJlbISQ/epy1JagWER712DoUyPlBre0pHoqPri2F9IjpWiyu3TBOHxw==","shasum":"647510c3783fa4cd5a8dbddff88468fe06192ccc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.5.tgz","fileCount":391,"unpackedSize":730114,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE8A6N07NgHbeC1VzMb5RYgYM7UpdaA+dLDL4M7LR5iQAiAlvrD0n53VDpvbHJswZ5cLJdR8jkSc0ZxvB7fRfsQbWA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi+z5NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrB1w/+I7MdH8oGBHoEvjLiUW2/3N4c7onnRkQmZar4qe2pxKFl4JC5\r\njcM4m8DSxB/BB/3raYc/VKezmL5q8l1Jaah7Zaj7kn3iZwwNguylEA7QcHDc\r\ntU4gIpV08xAJR203EBp/4qj05H0ZDWWlvpBciJZfFfF3wXFJ0PpkN3kT2pU+\r\nRipAiWxuD+2xr4FWOqxEV8T6WPT0ve0taW8QoxbAs6lZ7TB7hSqwyAGsIHQk\r\n64QSHes9kQ08n0YnRkEvLiSDCa/z0ciSI5qNQeRNOeH2NPOO5o3+dX8Cyxg3\r\nKAe34LSemu0kUNGf2VCKJ5V8xMeyOOBHt/RUhxMojSmT1GzHlE/nYW2qIZJf\r\nn6RhWiuGUTY0R8cbTh53Z1/+js1Txx2hzZJJYCVqaCP7uMBBHKzFnc8l12F/\r\nkmsRIxKeNQFRF65zEZetSNzDkSCYfnXlUSuzRlUyz4PfNQJabm9fRqXElaIO\r\nF3PldikKUkFUaCFqeJ2YNU2qotDI70sAULbhbY2koS1N3elQMAwTOejib3V1\r\nN5kRDPeonhZh0vG3vFTpduAMwwupRwg+h00TplSGrw5vjQX5auPfMb46WKu0\r\nsJbTBvw8j9XhXVl9jsEDVb+voeZ4IzaFl6TwuAZsiVG4R6AA0DyPBCJ7ptDJ\r\nDdGTWQuTprbUAfDJLSFgh8U+KBLizkslal8=\r\n=3nH4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.5_1660632653396_0.8832524811250724"},"_hasShrinkwrap":false},"1.4.3":{"name":"kafkajs","version":"1.4.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"d35a152b56f3d9e128cb70ff4926110883c09034","_id":"kafkajs@1.4.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-g2lhObEHKe7ok3cXN8WoeSc8yS5TyhrAnSEG+tdxigwYN0y3GyhLsgxYFD+f77vgGAO8YJejhSfU5nwT8Ldq7g==","shasum":"aa77918eee5ecce8d543100b7170fe3cf7de3a4f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.3.tgz","fileCount":181,"unpackedSize":484606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbzg9CCRA9TVsSAnZWagAANBAP/2JqEzXmVWMhxP63oLjM\n+hCvvtHO9MX/b5HWbzbRo5+Irz15tB7GoaAUwpKvQSj8iwND4HPT58wtLYvq\nZIKgVmeq/dJfOh6M6rb1Mp9WYf7yiWuaww37jtPcZeV/xSITi86jK2BRlLu8\n04cCmYGI3Z6iAKOlWlqxJllWvLkIkUnO8/UQO2JZ2msk7QXy7lIaajVj9zrB\ngB5eghWkQVze6zwb52DBhfrjYYR5JaQeQspSUmugBKmvpeRYAKl0Y/W5WFpO\ny1MzryaCw/qujImGQkAm33Qj971iZeaHhkBZxescVqJIi8r7bYCSHjikV5nv\nDjJs+NF6pgBmXAAgtitpIr+zAyyEH7XJn4hBVLy5tq53HOTRYPXLcFcy0PL7\nwdSJabrJOe1JBO0+w+1tXa9aHVrkQdrO2/fU/7sQA9Z5k4lUF6tQ8gfi6t20\nTr6jzwnJG8evBUfyMB5exoG2sjpY0BFSPaCf/0Rk5qTaT03cdJIeu8uzuJSn\n92uBr5O0jQ2k6hglu5zGANB3mc89tIDWMS2W+FEjdrVRSlob5TW5rlm8ETgL\nsyn351zUFtoKoy/Sf+YLsYcTeGcJjmqpx0jdRTpY4SnNhkt+Kul1Pn8QxBrH\nxAHkcPkHziEziPRAjVhjYvOxME5FG+gy7BG2TO5B3eAa2x0Fdfvnof5Fv8Sz\nzko8\r\n=oo1a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwlO/q8aZCQ73esPJdWq/Nm2ZC3dzuhkiEdi5ZRTZoFQIgIoKr2CkMjLv1Oi0d6pl82CheWMlpQ6m4SoHxNk9Q6Co="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.3_1540230977958_0.5912887128477955"},"_hasShrinkwrap":false},"2.2.0-beta.4":{"name":"kafkajs","version":"2.2.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"599198b8509f9c6fc9e339c5cfbc523a9bcd5e9e","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...599198b8509f9c6fc9e339c5cfbc523a9bcd5e9e"},"gitHead":"599198b8509f9c6fc9e339c5cfbc523a9bcd5e9e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.4","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-nEhVxtlr9101JQSA8Td7Ae/lnZLce9YB8U/AyPD8kT/hW4ZP2Brwgvt5InMWD6G708mKGZfkIBaXAU9rxQJHWQ==","shasum":"c80595ac077a9ca89edffb95eb6a0bc9d07000ce","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.4.tgz","fileCount":391,"unpackedSize":729989,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYOOev53/5LaRRli5v6kPZQwEa/1yv6vArYNy+9DelJAIgFH7xaKvhrPpbk8KalKi/apBiuNpsVvyWh+976bCe8oE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi363uACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoyHQ//Y4APVS1di0CJRvGPoLKG7pPkFVM1V/eXejkWI6lQlzg1hib2\r\nVfGrhT3Q3dZupienANoEVwYDb9sHG1G69bLvkTBYqX90bW3nF08bcK0cP4j3\r\n6Y6ZFZSNPptiN3TkBj/M/MRKd3mRL5JSfZ4PiXAsb7BmyF3SG8S9wVpVI9BB\r\n58SfuEiMqebZ05kpPNIJQcVh87R4sXwAJaRAG+z5/raN2LTvYZYqpgl8fywf\r\nlAjeuWHP7WHod0b+o12PJmLyNyiDrqfV7JokG4HrF6QmSGgZZqgA01qWIcwz\r\njji40ox4hN9qEKj5AqHuAQTzSJ5Lz5e4yMfxxLZthRXQG/DTJoCUowv6pmJg\r\n/lal/62w4mh6p7uvV8xXIMJAnC1UOXZHah6o2zVPthIeZP+D+QVhit54PxZ9\r\ngN05YSdIwS9r0lnqYhDBgBVL6ZbSVLWs/Sr4vXilBcnfPkUCaQvJfnJ4o8Fr\r\nGGYoToIUD+6DlbWiN0cM0wOShHOw/YYJwKO6zzb6CKm7p2ghGGOK7Jnd4Q0Q\r\nMo4ORjHXymrboa67lvLiym7fFwjlug+TIyx69T72gmefDYICZN8VCXN/UwPm\r\nB76cRcvVeXe1FaN0fZNghU9iFgO6PO1W+Cu5pvyKZ2/fWUjV398qyeLjNj8o\r\nTSeBJHNRO/QmS1uScKtjwE2kI8KQwu+AzZU=\r\n=ML6/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.4_1658826222579_0.709236067285075"},"_hasShrinkwrap":false},"1.4.4":{"name":"kafkajs","version":"1.4.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"d8413545af8aa8bc4208960ec141f0e37783ee17","_id":"kafkajs@1.4.4","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-f+cYW9QSkCsThY5qlzAKTedF9WpyNq+mzGZF/4lx2OJwqFkOHyMaqXgp2ILcIJZ+8O7fo7uqxuH9ODoJqy5BfQ==","shasum":"ca3da7240afd56bde49286ba59aa956d6531e907","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.4.tgz","fileCount":181,"unpackedSize":484865,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1uHbCRA9TVsSAnZWagAA7LAP/jUWAVxtZKaoUHqbFnFT\n6mwj5eKNs0BnP918yRHC0ydZq8K7SPqHLJfFCIUx9pXFs9RLtb3brdaPvJi4\n+QmPg6XKVlykZJ3rKmIvMylpuoONV9KhVD8Q9L1yP2yMbK30KK/59FI9fT2h\nNzXldY3aR1U8xkadJprW6PL6YdniEacXM53o9pFOdVP2+5CXb2lJj7WTHlkK\n2aeFZjl2Ucti5OzdMVBODn28yebHCOE8rleiMAhlPBKy0U5HDpXE/ZV3m56u\nvqYbCtocBF1kBvxl4Kzl8+uDVGHVj0jH7PSn6pOICcBHoQsb7jnTYUoGMjho\n9i1r95Y+sssi9SlYlpie/kWJRve08/evUkAIg/l090S+SQWdErzzZcuL3jWh\n3uDw24+cGyyJ8gER6i8lvZG2qAQPkQsNwHeA8Er+QB/IoUahE1korSBMhVMy\nV1WXlkvjVdGa8FmiCE5qxvNDzBAEYkevRaHQRwhDdJyh4CZWX4UsU/vJrPFM\n/geSyKUuhV1qTwvk/UaAPBcDzTqAYssd+XSLVWPDLYLOX4TQHOA40EC3XRPX\nh9ShNe7Pr9fJbBxxAmE3/5fjRaaINA2FUvW7hNBTULoYyc9LzEuj7J/8LsdD\nk/PLaxjXw9B8jluUmeKoJ2G1XfOEfJys68cUxxUlSoiGorW+GSpnSdx5iBf3\n4Hie\r\n=T4I4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEoKPNvRVjEtn+1he+cQH4QKjy3BQOhUXHzqLuqTXCi5AiEAv19bm1Wz9lHH5k8TxuDDI6orNZXXr8VofsWzMhbIdhQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.4_1540809178807_0.09740614614912735"},"_hasShrinkwrap":false},"2.2.0-beta.3":{"name":"kafkajs","version":"2.2.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ff6be44ebcb4d0f2525ee5f981da9fb20e1d7b1b","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...ff6be44ebcb4d0f2525ee5f981da9fb20e1d7b1b"},"gitHead":"ff6be44ebcb4d0f2525ee5f981da9fb20e1d7b1b","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.3","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-7EyGXCSHb/aI95AtGQVyviogsAQgTTGiPByl9Z6sOITdkfQV+egHnuvmmdEzKHJWWGsK9VizWzqZVocnAuo/UQ==","shasum":"18d3d7080ce958257bcc3b6d770ebc4be6167d38","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.3.tgz","fileCount":391,"unpackedSize":730088,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkkYNTyOsEEC8SwLC9xoiVIs2DMgXw1Vdqcge6hXGHrQIgDpSNTVc5/7aiSljUOwtuQCflWu1GkeB3TPJ389wO6SM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi36hxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvcA/9HQ1gIpP+rhGMp78TYrW9d0ki1jWdyyjMKXK728f9hSXpSWz1\r\nhLI0L7HHS08p6z7cBk2Kpv+UAX1sS3f0Q7YY/6hGOafk9juUHoIwfIwMUYmL\r\nAPM4Hp/oZ8143uVD03pcsGMYrdZF4M8OQnLcIk8Q3kVzbBsW4yjdFALIagyY\r\npVMc92qAbW2wPdPWJdT6TqeTZRi2B12bX/FCdYCLt2esTU1cQmNgVp3qCeGf\r\n6ZWHy1FbBbTjN0je1+t+qfrvgTd9QiCd8Ol5/N/ZasoWXAlxHzOIkIAdFWlA\r\nDM4HJMSjPjU6ExiaK4iS1NB+W7sEoaR4pvP9NNRvBIkMvQGVThvJ1/3jFRez\r\nRwH8weMIuVHM5TLWJ4QduyuYy8LtPvuGTCj3OczFq3WGpB3860LG/fDriE/O\r\n96kWVGC9KvmAIxJs0c6OXVGdQSGtA4ld+fkK1U0KXW0HrWLs11LItCNfhEin\r\nXT62c+e1SksfKRx05UZDQzlAGICAgj7CPN8NcqYdJ/5fHJKNE8w71TykD5+0\r\nZWH+SG4hrQBYXJ2hW9ANtiYC9cN1vHYCDbDHRmvGISHMiQZURWsHrKBcKZJx\r\nDK3ygRnpj2JNjJ9jCUCeHG4lV5At4FBt6wJAQKzsZ4/jrGfMPZtQIbBdcs3p\r\n538sZ+erYlSELqYOCBkaiTLnBybvdyeZT94=\r\n=Pb80\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.3_1658824817411_0.8411887067520418"},"_hasShrinkwrap":false},"1.4.5":{"name":"kafkajs","version":"1.4.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"a2abda2bf540c3f0a5fb5fdc7b50608be2ae85b3","_id":"kafkajs@1.4.5","_npmVersion":"6.4.1","_nodeVersion":"8.14.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-7vk1tvAWE9gc+nwga5lJMAPr5g4oOmMS9l7sp7wOfu6vqYXNxh8a01/JiKdo/SbB2bkmPDkpKEZXJLwkMlQ8Mw==","shasum":"578b5099b3ca9e85d9d44818ca0fb3b0662c672d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.5.tgz","fileCount":181,"unpackedSize":485301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/nE5CRA9TVsSAnZWagAAJp8P/AwOh29dSdMBBNWV4dlP\niD2hjvlzJaPrnQRxBoTYHrVA87jTJvl31lJ9Mal3m5Jk2h6y3/X+/WHbqTjj\niF7hj/JQaKRO/aQcAje2KPhrILiumxYdy6F00G/oxFfpDotDnZ2Qa/QrYA/R\nlnI9tKaIrcTvixPTdvAhm4/SZIn86lK8Sv0yyrDjp3eyjQBjYQclhI1Ir+j3\nPuVaJ1optfcSSrVUuf1YdJJCl+JpZTQo0BYiff2YlTQ5jCralHwcxvaeWXQf\ni/xGJSTqwnYliOGohyhl23cpTZnQ5UCk7nKeK5+B3jYj/mzeqyqeJkUFE1RU\nJJnY/2dxUbTzvl1Tko8kFi857J/smzgRmLlLY4VDozmNObPTIAeqkxYJ7Rij\n8l1VpM+mo4JWumhPB5+wHojaVN0MGMmHxq2lTV8nbcJcZXI4i9T8jPHuG4l+\n9PFpFfblANAc7SzGMtG+aEg4wdQYlfoooG2FD0XKYv9PpbwMrQwNLYaRqIAX\n9jX0ErDEUjjCKmTf/Q7SOOjtr9DpSTPkOX9dKguQmr28iiQEMpG+k9ecHgt2\nu+G6VNHM7QhbjC4lJEoy8dpEcHDlJF6pWVkD3JoWHWHKWzc5NFyiazhH0NPz\nuM8I3GAcxZh0sOHIgCgor9h1DvScfI569xE2BPT8bsLrzBtDNJHaK/aPASHb\npit1\r\n=tF7a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCY05DghQc3RDr6KI0V+Ow8in2Pf+132HZ99JH8vDZbDQIgYB7ijRH5JNI11ntBXGUuNNuDhxkWj5yQ2qspqo84XE4="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.5_1543401784454_0.7173037118743941"},"_hasShrinkwrap":false},"1.16.0-beta.30":{"name":"kafkajs","version":"1.16.0-beta.30","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"38e075000931dd490761a42c2c9157e585cb1469","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...38e075000931dd490761a42c2c9157e585cb1469"},"gitHead":"38e075000931dd490761a42c2c9157e585cb1469","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.30","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-iC17XvjkQEQ+BLYgMfFTOzTaNGcvEAWA0/095L9g+zE9Wx6fIMTWNSLajYby3iRDbl+llAFkbUD90WyIzRa/cA==","shasum":"a84d1e9ea244362e8634450eab21474dc099cfd7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.30.tgz","fileCount":380,"unpackedSize":696043,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvH/0CRA9TVsSAnZWagAAlk8P/R+EMJw6vveFwVYpKd6K\nbftdaL1lzgafi7A0QxmgskfzYgwydgeCZLNO6kmjKaW8LzND7sqdomt8QW80\nSjCy1JBFlIFvLAhbUGX1/9+QIom9TvDQiD7p+TMTwel1jciWORqzszUFSIFN\nzRZ7S3enDn2HsK8mlDbLfV+r+QWpOoS35rbHhjrJypK9WN4YI7casFrWg3cx\n0KTas4Rqs+WyUR7z92XZZsZE5ihY+oAlDQPa8bxoaP917B8ulGyUFKklH51e\n9LMmj5wwShBna2/zudSUq48afMgKL7G2nTHkKG0BeSXJusR2TQ3mfXWKhd+n\nVD8159MD4DeNrmk/phiOk0et9BzMZZiFuqeik9U6Q152UTh7/xVY4Gx99p5/\nECsAJPJglEBKpRMWg8KJHefsirf8mHhv53yI0ykNSpMgojPjVZKi2aGA2KLE\nswl/25KmkAKyQBcjKSA+IAxdgZK4ofXnKbp5NUZbORfBKX/F1ZRdKDlYQ6if\nKpKytl5PeGEWMLA/Y+bqcA0iGUSljcSw8ZFMWX6dutm/GiAHVFvem9aKBNoE\n9NrlE0LrBIvRoV6/O5dIZdEfMWYhfczEmLz4tupsWPmD/Ve6l3gPUnp9R3hT\ngIlN+BxYYzgy2wOGbbFfOkAsof7JS90H7er3aFHBdM+oPJ5gEALfK3vuOizB\nZ0X5\r\n=cmcR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFhrUoSj7SFlkTlFXYCH79OhETGMHx41C0NKjA4kFD4+AiEAgzOWOpJk8DdMBamraQnKNq5CqAHjGjfM1+PnIYFeOsI="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.30_1639743476334_0.8791266611835393"},"_hasShrinkwrap":false},"2.2.0-beta.2":{"name":"kafkajs","version":"2.2.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"8a799c61830b2889df10816511ffd3a0caba2445","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...8a799c61830b2889df10816511ffd3a0caba2445"},"gitHead":"8a799c61830b2889df10816511ffd3a0caba2445","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.2","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-fyVKmIHuv+rvQxmvmOva4WTQPhDpyv/uvDaLzIX4632J5z6BV4o6RYCiiqwRvWL6jfu+cWs1p7Rp1+PKGAphjQ==","shasum":"afe4be02bc8552bf889e71521011e4f9aaa39ead","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.2.tgz","fileCount":391,"unpackedSize":730077,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEPpFqfM/MlU+/BCL/QG2bBgGv1uuZW0x4iBDGHUTaiAIhAPUixM3c1TiY/HQIPer1ufdFCdN+Pn9VmDCkCNSza7ja"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi3pNlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp2Eg/9GYesKxMxdVVJdOMKUwFiEMDGOUkCF4pDCUXDYTExVtk3tzyA\r\nfkf1Rrn94dxLhcB9mjqF3Dg8c/TOBPqikTZ0nkp+OWSddkUrEu/KGD9luMmt\r\nM4ovHJ4+b8a7covOmjb5PNNeqbFudwHIy4KL0WQ5qew8EcCBuUvaD9QezH8d\r\npuNgHRWdOQ/Gy4BGxUiuUwbWLWNq3mb4ZgDmZmtOx2Faf2uWvlRNtlLLsnpE\r\nO8XCGol7UXEIvQeTRGPreEkoj6L9gC/ZA0bNq0QCeZz1mdAxKNlAXfwrdMzm\r\nv9PpLQVxQI76Y+ufRJRKLHqYR1wxOPHUvApo2gtzHpaHEhiH1vzN5p0xl1LC\r\nzLrYljX/Qk5ipOdiMZgGsdBs3VcOovqA8hefndaA1hEGfQwYrFJ5qk76FWJy\r\nOOLPhLtmRAsjHWjLDgQ4YlpPMKBB05ZAamr21xyw0TKV23OE2MluyVnPiVuM\r\nNPBbbF/zU83XACuGnCRjk8nvTHYkI+TJPJ9baZ5chdBY4YLREeIGo+8oNQQx\r\nHnNsfL8ZlJ2wcYqEYLJj/MYb5SGGsJ3UmDZr5QmFoUdpTMoZs/nKIa9+YTDx\r\nwLnj0GoJd5QKjvkvVJK7pXMzNeCn7YUho0/XsJYYBpLUwBuj214xNGKsBvAA\r\n03yknvDUZFq7k+vlnpwUAnRznRg6Ji9mVLU=\r\n=6fH+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.2_1658753893254_0.22516864581181628"},"_hasShrinkwrap":false},"1.4.6":{"name":"kafkajs","version":"1.4.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.4.0","eslint-config-prettier":"^3.0.1","eslint-config-standard":"^12.0.0-alpha.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^2.6.2","eslint-plugin-promise":"^4.0.0","eslint-plugin-standard":"^3.1.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^23.5.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.14.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"b367516113f89bcdbee3a2372a72d9546a6cfa6d","_id":"kafkajs@1.4.6","_npmVersion":"6.4.1","_nodeVersion":"8.14.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-83ZrOoikI+E5gCwpNHCWtW91Vyg2SuS0QMBsYD6mIbjAXQRAYssCGqpRnH+SrPU5AzJq7uwFH0i/IEW305a2NA==","shasum":"4e4a692f060bdf2f965da35c56b5ca3528456b81","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.4.6.tgz","fileCount":181,"unpackedSize":485571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBTWhCRA9TVsSAnZWagAAg3UP/2Ah89aU4hg43jLk8c9+\nc5OfeQLQd1gKf/c4UIhntXy/bZpf50aQLqGoJQ9J7a4dEHq0Yq2x7rjGA9J+\nvdFsS5GIYsNIxhJXIWcY1kWEfvyJVJgsoe/oS3apak1LJicOy0Bq/MCdfxqG\nGYPFXTnsOgYFiFVosJ1VszNGUd+Zzwch6ie9L9xbpn2+JnfVHY1Rv/y+S559\nmHLuLtlwHraCiY9j+t4dCcVaT8LBhqlE1kur0LB6IKENjXHkSEVPAcWBw5nV\nRlFF1bYmCOzpxrlHdndbDhjl6jEms6JGPXjfglSOWxgf8o9bxLMRHGGte2jJ\nH8ZqfdZCpOLvxSVVrQg6uQvL6jT9y2tmCMjuehxr+1Yb4mRe0/Dv3qStcya4\nP5/1VidEzkg/BlBndJmubaUOMoOSRueejshvoObvXIlW13XesZ7ag4XkIu1G\njz2I+ch5RdBcK67ovwrJx9/o3TRRrBLVWMbauIFZhraUdHjHdAu6uRSqzo3E\nqQ0PxaxnPxTBrgUBtnJvXMDRTiTko2jnx5gcn8Xt51bcV7fU5C1YjFmfDxO8\nQbD2eveqJzjQWekdTXCu6ZseBi4OJ2/gGhLTViZ5JOSnp1LqfArWEZr/hNtV\nbc+Npi+Teh0ph+xmuW0dLBH73KUZJh6wgP0cDxLUm4XYxOHk8VM/jHGpoML2\nr7nV\r\n=nDSW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCua752HPcpSjgAXikg1+ImQIM1nnSoIpxjwMqyUxeBGwIgBCfGDm3dimiUyB0gBiSafEt3zCL7H+c0B8H+zpxmWFo="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.4.6_1543845280301_0.8296590609205496"},"_hasShrinkwrap":false},"1.16.0-beta.31":{"name":"kafkajs","version":"1.16.0-beta.31","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2b5f96fe1f3d005f27b5807e4a0934414fef971d","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...2b5f96fe1f3d005f27b5807e4a0934414fef971d"},"gitHead":"2b5f96fe1f3d005f27b5807e4a0934414fef971d","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.31","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-DKJKxVAnvP3Dvu58qeQPtZ64T29Tcg6Pkty68ZmJw3/0Dh7jbxCvgq+Qx4xPfTky6sMIGn/P8bihc14xArTbYA==","shasum":"2e3da9edee18f3e88318fd60c4e0903ca0bc533e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.31.tgz","fileCount":380,"unpackedSize":696345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyY67CRA9TVsSAnZWagAAyi0P/j1VmXfFBro7j9OhtH/S\nhLW0hdb5GsCSpHf28Fqn/w5pcUQh2FM9OcNdaiOOegmtpOMOTGi/tJGnV2s2\n45uFc6273XqFpWW3FEGZoWevXjsFsSnRUZeIV89PoIC6C3ZvSPiWHWCirlwe\nV2o6JdRAVxihDDe0VluNoyo02BUBmMB5qXAj5jScGnb88wRq1SiCyEBS+7C4\np4OWCGwHBdrM8XoglUmSppwL6eXbKepp65in1l1jrOgWMhVIOc8oWb9EAw6m\nQEkjVG8KwULChf2hWzJ8YWZ7VaySDbWqufaDtgtCRIXNZ1aU31LNR8EWS/9B\nvfQTB9VJ9sfeWjFrYBwR5xAm40UX6LBjAZBY1J/WjCE0RFkH5YkZqp2MJHwb\nCBlHuGfUjmhAgQIh9TaO0r3MCRHTWr3eUzCsFqyss+/cOnx9D3ETufvO5bg8\nK8+7VdgGEn82usg5SMTH6kzPr5gslkx0qRlvtasoomEXR6rTvp6m2MjQl7fS\nhR1epCpmIahUbnMdiesNHF3gDf/34mB4fF5VsLUHrjQI7UN51rErvUM7LoRd\nx7cJgEGrSHkR6I+UCAWFb6lUUEZW6cXMzmxvk97bppOUaVwFMQww0z7FJTJD\n5ZWU+QWDo3lzkzOaS4OxPVe/YsRemMttWe0LbyjXdv07WWrgB4xcVq28eg3K\njusy\r\n=+yDB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCf5NzLM1Ld92hv/Q56BTn0CLFt8453Kfc4QNk03Lcw4wIgJZr7WFKBJn5WsdzFi/K1o6AM9JThpMjoZxDBe2VGxiE="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.31_1640599227368_0.8884354006978867"},"_hasShrinkwrap":false},"2.2.0-beta.1":{"name":"kafkajs","version":"2.2.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a0ef9556f89e638c2fc26ccf2fa47be44a3fb7bc","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...a0ef9556f89e638c2fc26ccf2fa47be44a3fb7bc"},"gitHead":"a0ef9556f89e638c2fc26ccf2fa47be44a3fb7bc","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.1","_nodeVersion":"14.20.0","_npmVersion":"6.14.17","dist":{"integrity":"sha512-hvdKaCZWpd/3sKtnb4epTlhYoYz7ky3yeZYTLxmnzlx6IJL3o8mzAPYYCGonBAdzJxBpWXdc4C654I4qUBCqYg==","shasum":"a1ed4c2b2a7df1abafbd6267d119ac26e1c274a0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.1.tgz","fileCount":391,"unpackedSize":730020,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBj/w/Odx21G+3AMQ1Jes00KnRftcb9FJi7ohsnB7MtlAiA5ONSXo1Juuol5XE/8kjmpnJ1HvUNQNEcRzAAzO6oFXg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi3owdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq19g/8Cn1rF9TTW7fKPdefEOuZXTsJxhJTdM5pd8Pyuf6vgNUbbolb\r\ntGj1pixtvnjwYmgx9mmr14OLIcCUBb824uG8Pc1PBzoY/IMCkoHtQrRDaBJK\r\nFAFvki7I4EXYay8oLHflMa4QoG56EDA/sQoWNKdmUbwKWVDd3bjujlevvT2f\r\ncaD8bTqVfzYXFnGP5LUaFzQzsCcBgzsM69psryz47XGM2WlA3BZ9CqUwVD+M\r\nrHymLrvyXu1oJtXOYavR5aAEIGzhCJKD4vf4XJR5pFHG4vXZGUf0JS8+OlV9\r\ntit3ACKQwyqGRUNb+8U3kYpDKSVvrXAJiikkMCvRJu7YLUiqWlykCu68UuZV\r\nhGnqdYbAnHfQmeVgpIP8yQhKgf9a0U2omz92jRqDi9nSCF/RxXxgvxLY8pwq\r\ngMRF2PHJxoqLCgDDWGM+fPixr1AhijC1hOfXaumgqZcwl7mw6Raw5Aia7gll\r\na6QkBE+YPrezL1oJ1/1SkzN3fJustamhBXJfBAx2XHiJc9VeOXH32zjaAY5n\r\nWOR3xBZNzUKa+ghmV+FabTYsHeZYUSNyt6l030oLm3E/M+U36K5/16IhKXY5\r\nudcB+aRQ6TBHIn21cpynvgIb2BYjKq0PRSKKZpRxhDPV8ic8DQQBekmjcq6v\r\nMEkYandKuaAVwC7EgtomoIzsgNMkOLM36C8=\r\n=da6W\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.1_1658752029408_0.6806947294874626"},"_hasShrinkwrap":false},"0.6.8":{"name":"kafkajs","version":"0.6.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"jest --watch","test:local":"jest --forceExit","test:debug":"node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"4e0cbd1b10eb5e8f7dac0a6a7f0e8b45ac63c7ee","_id":"kafkajs@0.6.8","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-59sm+DGITP4PeTiXaNsIBUXBULeksmJ3WYfN33r/YidRv53kJ55odQjR2KnMQVhDu/GsXRdtpO4FKrdraRlABg==","shasum":"25ed18bced234de20b74659c2c298b0b68496e5c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGZv7cNjUt2p0d/EOuwJ0nt5QHtF7j5sSOZ7/x44BtIFAiEAlh2uVvQDTJ5v0RzshpgKQ/Ba57e5vI6tuu6/nJG9aVE="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.8.tgz_1514387222540_0.15540211298502982"},"directories":{}},"2.2.0-beta.0":{"name":"kafkajs","version":"2.2.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7e9970ba580b4b0d48d10504ea6b248351a61a99","compare":"https://github.com/tulios/kafkajs/compare/v2.1.0...7e9970ba580b4b0d48d10504ea6b248351a61a99"},"gitHead":"7e9970ba580b4b0d48d10504ea6b248351a61a99","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.2.0-beta.0","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-q6Qhlg5HS/FXyGSzuPyq4fyczRM9qvW8A2gG2FKFjsUG0tECsOYNNeb3IMbs+50qwh+M823CWc+k+7J6r4muVA==","shasum":"83f894a910a1ee3e1f89a685170e832b212fc23d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.2.0-beta.0.tgz","fileCount":385,"unpackedSize":714146,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHnTzwgCxCTCuAGMxJAfWEpxSOl3KXVLi/Q6j4eNkdddAiB0j7ljUYNq1UBt2e/kKdeA3GKrneXukRLPe/lRYbmFwA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixoTeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqJeQ/+Mw8/Yn5hnkNknPzGbdq1dd3LjDkDWKB+nnYrHwoSTDr5cwvv\r\nAR5yYw2tDz1uuutyKgmlVbOFZ6ylI9ZLMSYtswRrze9qnPQc3yG2N5DqIrNH\r\nhUGaUmi3pjO3pCxKq172o/Y0KrsozK4RfGsp0ceZ7jjwx6X3C4rUf7Kmq5lG\r\nH0s5M4u42+/EYAngD8sKtwo+evqHhk3Sk0DVrnUpGOQ90fq2giwCC/WjGyUq\r\nphfi8bSE2uoRpj01Ph6/WCDTVWfv45D2P+ytjnAY+W99+AXsVetzd47jUpHn\r\nPGS82gJmqBv3Pvf9OxDbgdsNooc38Z/em7VjjrYpx1lHwkZcZu9/H0wcrBU/\r\nHxymSHCvijLbqPGvjmQdbuLIAUEgX0gIpv7ysTj++CMpmh7T5Oae4m6XZjLw\r\n8baNDgOS2RORvH3duMfEDlmmb1odgan5vXT+XJQMoufn6HPk1a/DbLCquaHi\r\nfpEmq+pI9nqSRsjna78SqVjvV/Dr+J7opVQFozkQ0KlcAeEtSHuX8M3bwe/+\r\nKHhP4SHym6WB04DqoAbqetIzmRfWfKgtTf52a91a/VLK2n5sMC4H9T+q6wEr\r\nO1i8hx/hYShsVtvETcgoNXpnvOqUsh1MIiNXkPkpN+MZXFrwgsbE13oVBuqt\r\nGt4BB6dFbfrw7pf65AgJctSvOLNhgsaZg+s=\r\n=mgri\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.2.0-beta.0_1657177310134_0.49867175708717393"},"_hasShrinkwrap":false},"1.13.0-beta.30":{"name":"kafkajs","version":"1.13.0-beta.30","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"bd5cf4c3e2ea9b82343e8927319876fa35f3a675","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...bd5cf4c3e2ea9b82343e8927319876fa35f3a675"},"gitHead":"bd5cf4c3e2ea9b82343e8927319876fa35f3a675","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.30","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-C5Ib4Te0hy43BD3IRFNRUWUSdnTtMMUCFibC0zv2LvbXlXLlJdZCIPw7tu+rrNoL2soNsH86xv2+GJfol4a+hw==","shasum":"4d66dbd0214bb85e96ca1a56e41c2c6222233a96","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.30.tgz","fileCount":289,"unpackedSize":516102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3hpLCRA9TVsSAnZWagAA0kQP/2HMhmsSVpp+u0f2LqZd\nG7MyjLtCfS7uf4e8u8dXqvqSIdY4MLSH7fyOotJl79W3d4FSt1xzHFRfwKcz\nZ4RFZmOKQMufJFc+O3csUCokym7ci5GsdC+h8yyObACkTVBkey6zBDATjtkR\nwfR5wJMb0LhTsoN1tDR3AOgbanCDeLWYkmn7xIeQ5zDY9l6qD5c6mnxnow+u\n1uORdblJi+iYwwLFCUKdXxHUlUNJioZEbuoWbHKFiP3XHyUAkt/NP9+NHWj8\nczWpfPJqOAjj8AFMQlS49r/9VDFHMaUZMqhMUpHlWU0OjSjRxcMEdkiwTIH/\nnV8nRFIuarN5ICSHrRqT6sJijA5vVO0O1lbVvc7r9Edr7NcfMPTR5rNZgviS\nbI2pil7P3Jpdv+SzjoGQUy/5IudQgQalfBp8Z5aTiyH2jpELQQYxv3d785VE\n1WmRxuhjqeu8eoKHXIObhpRGA9Mm06hklrs+LzHwvHW/milHaDDs9mPf4whk\nl9KEwGRUfPP3zEC21eZjxSxY+ROT8YPzm22YxPAcUmGhqaduwtwgfD4FevE2\n9E5VeA2RIU6py5WF0X5GrcxcdUIZyp9jpdUe5tMSaDkLxZH7TnVCwEe/Ik8W\nIs0jRSHKGvIWtegq6+vdc+GQomgkewWMh/By85r8/sMguwI0nSaSJ0SfiDwM\n/YCC\r\n=wH3x\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpYR0e3XaUPvEwO2sW8kK/p9SD1vdejmP5J9N6zzhKyQIgQ3lP7QI1IAgAFMQRj2bTpKfBDy4p6d2OvqzMnUYJS4s="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.30_1591614026506_0.9476002315044025"},"_hasShrinkwrap":false},"0.6.6":{"name":"kafkajs","version":"0.6.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test:debug":"node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"7ef6177884e0312190dc8d0eb6f586e944e1a5a8","_id":"kafkajs@0.6.6","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-0W2PGipZQjCff00xYG1XlbaQo3Cx/knD7CtIDb7RQ48+nOHgT6atRbJf6ZIBkJDBL0cqdJ2UWH/qZA9Cgf03yA==","shasum":"2577e1ce4117eb72dcd0e0952425e03e9195b68d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB3tVvOvnzwrq1QSfD6+P9U3+uyI1nDRXuCR/jiMIua2AiEAzs0pdD3Q5th5o5NWIHZWQVGdt4a/wu68GtYd20cFfvw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.6.tgz_1513348957410_0.02219030959531665"},"directories":{}},"0.6.7":{"name":"kafkajs","version":"0.6.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"yarn test:local --watch","test:local":"jest","test:debug":"node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"eslint example.js \"{src,testHelpers}/**/*.js\""},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"gitHead":"0406bdda112e135c015c79a0ce66f87b9869333b","_id":"kafkajs@0.6.7","_npmVersion":"5.5.1","_nodeVersion":"8.9.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-3lK9S5V8f2r3U82r87d8eB8YXd9vVJ9KjYJLJHZUmAw9dNGRnUr7gSG++vOh+QY80/W2CyIPAl117s27wV6VVg==","shasum":"01a2bd622cdeb75f86e29f8b9e79e71b89dc85be","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.6.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUHWmhULZ+tN02M35ZePY/inwcdPLLU9ez8Wn3SSjhOwIgXNC/TUOn6fEwuy9CnhqpNJ6YY3Ow/chTU0uDbrlaqLM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.6.7.tgz_1513613965741_0.47278280439786613"},"directories":{}},"1.12.0":{"name":"kafkajs","version":"1.12.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.3'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"23fba656b69c3532fc20ce377388791fe15f9dd7","_id":"kafkajs@1.12.0","_nodeVersion":"8.17.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-Izkd9iFRgeeKaHEgVpGQH08ygzCbHSxTbnu8W3G3uiNaVjGibUTmTwjv1Qf2M8NORXcPfzwVyg6bBlVj4SKr9g==","shasum":"50ad336baee95f3324af8ae8df6fadc96e07c613","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0.tgz","fileCount":266,"unpackedSize":484304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMqABCRA9TVsSAnZWagAAOHwP/RA9c4WWjQFW446vPDUC\n+e63e5oRnOy5GCkcwtUznTKQIBw3RTpHGCyaAI7I069/S8r+xT9XSqUq74pd\nGhT4covBSdiaWprNYJFPmB/0hhOZGYjvSjEAEOVPdWtAMmbD55Uh6mBvhaZF\ncuKmm7pqpr2PRn2P5DIIk+OS8LD94UUOvl3rBImP7pxl9Jmo/2oCYY/Hi7E2\neRkxAnwPgSw0seHkMjb8xcLHgGPUfxDjndLH9/JTcYw2PLdW7SLpFepghAaq\nsfzySmsZYIWlPt18UcIQm3JAmlydq9lfrkg6UGbQn/paLI1BkdeB8bLzGaiN\ncKZNDe8pocq6SUuvRMOoxn5f0StJnu1YAd1QLvEtX09wz/0W6L4/M2GRxvTf\nGYB0j9CMNpp4EFb1/bojlUlTHR95As57QsEaqJRs6vJ+cDAsbahkltdoXRiP\nxzMFciG4s2fQG4LS4HqHA5TPepbr863L6UEmHFukHpINMBf0d3k1vKxIQ1Wb\nX+YxpHz41sseB6R1ojVrH8GEUs1SdD6ym0F3iE255QiVG/vvretfi8KPM1w4\nggdfSMXQv5xV5O8Cic+YQ5U8KOdAquLmgiGVxaGlRN88kv3Z1l3D9EXyTY/1\nsARDezqowdNx+31OV1vxrtDzRWSXlmI4hiy+BO4uMzJsHH1QBxC+SeylHGrh\ntSMd\r\n=1+pm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoANi5Hbi25Umsonk1Z7/Dy3sIJs8P+hqkNBmlQfS7eAiEAh2xGIybY+t5Dsg9s4JnKG2YLx+oP5yrsEQWqYXXTAbU="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0_1580376065378_0.40130543833363896"},"_hasShrinkwrap":false},"1.16.0-beta.36":{"name":"kafkajs","version":"1.16.0-beta.36","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a0540a989e0b7193a1df560ff493630fd01eceb7","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...a0540a989e0b7193a1df560ff493630fd01eceb7"},"gitHead":"a0540a989e0b7193a1df560ff493630fd01eceb7","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.36","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-JNzakAukxxrwntzU16HyzX4udwsvjqkW9+PHwtj6MlXq/J50zpqdY2jv1DSY0fvm28DJ/RabbP4JS57mNNx6SA==","shasum":"9ac4626a3528e2bde3e2dc59732e97b7fe628d09","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.36.tgz","fileCount":380,"unpackedSize":697958,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAi78CRA9TVsSAnZWagAA3Q0P/RU8DqoKjxWdWACnwjXe\n2s3GawN+3eeQmT+1nLiJRUqw7tWNYpUsmzW1Iijb2FZvH0yM1HBZnklVePmO\nj5/zADKSmi+q0U5ofQWM+TKoHyeGoWUkn0TvwvcXHO2OvnwrBXuoDsppTUmz\neTYEoggrjI9BDV+92r7POGr+RQqtsc4WKBCYxnmcWCFmGQvhA4bYvjFZnPCu\nlywQd5p11mXL1F0IKt5KnzIVVKrQ5+nWUSVujMKPjEBgJZAq5bH3zMZRgLDp\nX3GvWRsxEHXmkIy7XohZ080HXBkfIcH5nusUfzQ2l1exL5OT3Wz6kWTMCr8A\nFCaatt5OnpicsRmV9BP6UPPNxn5Y7TOVc2I2X58jPpBzyVxTgHzLRvHvccXC\nbUxeaWmCNYlpeDPP7JYY3Zexw7XfAFSfI8lti/MUSXHiM3NWOcqL/oRb6E6C\n46Mb8lppo5msBh++r4xX8amXXPBh2xJx83PxEu6QN+Vg6L6NEj4Ne42ObsCW\ned0VZIyJRYDLmcWs9p7T2cpSwaLCCN/wMtI9XOu7/P0qCSa9zNI03u3faH9+\nD5FxFs4MvUebUHd4WCKM4i2B2fGhOu0ysj4w6g2x0PApI0L8/khAreNGYGjh\nZDm7xAWStqu4RdyLdvR1r4MCaAOX1Pp425J5cMaj5XHzuy3+ZvTGB/HYciF8\noGaX\r\n=Qw/U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBD1CyxwxgNELXiMGukEEQ4ZJg0eWRkPtOYAcVCD8vCmAiAspqfOZ+3uSKyn0AyzHo1pz3w1glfAu/pHVVNPS+fpzw=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.36_1644310268697_0.7276944209933842"},"_hasShrinkwrap":false},"1.16.0-beta.37":{"name":"kafkajs","version":"1.16.0-beta.37","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"5fe40041a3e1e87f34b4a4d9fcf619e37f4c8363","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...5fe40041a3e1e87f34b4a4d9fcf619e37f4c8363"},"gitHead":"5fe40041a3e1e87f34b4a4d9fcf619e37f4c8363","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.37","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-AYVKAtJ8HCf12nGPq/VvLz3SrcD7kftInG0TWLM2PwqZPEgoC//RGRC/0iHb53XWaNM86YMxId6SM/rLgG8hqA==","shasum":"d0ccd8dd5ede7c350122b4669352f0376620e10b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.37.tgz","fileCount":380,"unpackedSize":698094,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAofsCRA9TVsSAnZWagAA9q4P/2qt8IGey3Y/pHYfMTcw\nh6ApKWC+4+xg/X7fKP+Cp93LIbLfrHFmz6MY/T4UO+RNkh6bJEEUm/+7MreQ\nA75WaHWv6iHv7UM05KbSQ7eXL6qAM6V+Z/Rm2gin0QQpDThayjDmzbFLuKWD\n5qkByj+XY9IPvQgcjOvgUdlpNUCnwunbYrvfSIKbZ6S5lPlsEsQ+K858PqFb\nZy+YUK0C1bQJY2x6xP7He1DBhDRGoBsFOF/rEk4Ju8nLUtoWgU6SOeO1zdR9\n5OJu19YCVK8RhZ5/tMivbmzadffDhi6OKAVzfn7wRILMdjBiBRCnpqfvLHl4\n798Z1493129cg7lxfbVhjY6gohEafR4fn9CvKMIWEop5Skodh9O+ZB7E206P\njWwSfts2y/QsOTd1FQsIo720wVOSl661PR+yoYPBV3MIceG1MJxqgouO409+\n9/C+gtuQVSlaKUH51hVqYYMOmPb7+hftkequFAdV6FW/tabJNZGPxJgw0Eiw\nxhNB0mai04/1R+VwYNmxBeaiuwdu1Ka6NhAxzXtPkBwTcuxN82s1zfJOAkBA\npdtRKocZzdyu0oiGT4VSR2AIvEEXvQgtjG7mGfxcYHOgEAjq4pa+qGy3vYmk\ngP749KwiZRFxyQfmn/F+n1q5tGlHG2S3c61UnxC7YmnUT23E8bBbgUEVder7\nFxtb\r\n=7XcQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDY3soNP9gQOHyVbWmEePbKyp8Vw8pmFdkbRloJn51v5QIgPI81C9BeNgs0C/nUoM5beTSQdaTTaXluur8gOzWzu+8="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.37_1644333036238_0.6084048227815317"},"_hasShrinkwrap":false},"1.16.0-beta.38":{"name":"kafkajs","version":"1.16.0-beta.38","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c08ea172f60fa85b1246db39f6f237ca4b4f3db4","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...c08ea172f60fa85b1246db39f6f237ca4b4f3db4"},"gitHead":"c08ea172f60fa85b1246db39f6f237ca4b4f3db4","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.38","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-aF9vJnfSfXLVD7tAKBpDEZzlYwo7i++453d6K0ZBNG3Ch4KRwwOMnDWr27oCIpgeW8D7RXmObCv/4O5gq5iYWw==","shasum":"edb06cf76e998c3dbf4634daea370949e410b561","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.38.tgz","fileCount":380,"unpackedSize":698178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAow6CRA9TVsSAnZWagAALEgP/R1R/Eo40acRiFEp1fVR\n0A4sMVb+wdJ0CApW9XzQYD77DskFZfn8nQgHzu0s0VxTdk8wIFf1VQw41Wnw\nGtTo8ZtQaoIM8Lszfe6+hz5/dy6pOSI6YHyq14suVKAPHqXPzFga61qXaz4k\nb9WTm7TDabNq0mWSRoQt48+7xLJkEUvzdnw1AuICwjf2xLPcJrAqdanx6SnJ\nGT4q7dBbcugO+vkT4qC5BIPn2I+FoltB6tkW8pqTb8/GECk1TSiJx3QCet8G\nN4J2YI7GxBvfvftg94Hz5TBdLRr/V7H/F7Thaux6wdDGzsFZEl5BJrGhOgJl\nHRRM3fyG4UUl07Qze3FcLAeJQOtKl1KHVU/AeH+PaC9/c0Tp3hpGJlztXrEQ\nNiiL3iG40y3VdgCY+AYqNbhA194GYue210UfkFLdGOlfrLbRKJncjD48fT58\ndbdrtlMqQLB7SGc6PNMUGcggzcdqnA0mgex0y7+l+RXBjnBTt4aPGbBMkIbM\nB0x/E7cgP7xQemQBydNaFJGD0nJLZ12lWeWWsTbyDFMyuABIOmhuRyLFmZ5L\nOZzP2cemAeAh8CS/YSPNS+xKkNKQYKDoa1NPXxn21dSsjkfTg/ty5i6QE6rt\nebXDpgxOYfg9yQRK1RKaL9P0zx3cDOdXRu3/jOF0eOcusDkgTLQSMafoGlB6\ndH5f\r\n=a8xr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGSxDhJAeEP1xNT+OFkloNZF+uertF56XjbCgqZfCm1tAiEA0HZ9CyVVCdVVNp3fy3IbjZzUrrXv5REpALQedtO6b70="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.38_1644334138122_0.12363703341393406"},"_hasShrinkwrap":false},"1.16.0-beta.39":{"name":"kafkajs","version":"1.16.0-beta.39","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ba20cadc1af678106bba8f9f247109a263e771ae","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...ba20cadc1af678106bba8f9f247109a263e771ae"},"gitHead":"ba20cadc1af678106bba8f9f247109a263e771ae","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.39","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-y/tAYX4pINvjiWF1O4EIS5Agxcta96RGBIAh3KSvXGVcggaWyhFGsPCntprdqZPNnvi+XQPGgjr72E7KED8EHA==","shasum":"9696dd632125df8fd74fd55b13902e8cd7ba15e6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.39.tgz","fileCount":380,"unpackedSize":698478,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAqLXCRA9TVsSAnZWagAAksoP/2uxGbHaSbn5x9op/vfg\naa+8PrA3cAEDRmUK75M4xa585hS8OWPrbJZiX2SVHjyEtsxl5FRYat4QSD75\nbQkPYfsQeMtpp6nXMbzbuoH2Xcu+3wnLcXOxS8FymuH5rB8AdgDoiBPByyd3\nMjwC4k/WaiVjyomYnsAlZvFQUqZO9cTvN65RZ7shZwPEeDTzjaLSaYcOJR/9\n4cvQJNGcDwLpmHFAylc5YbVR/rbQGsKiEh/pUELSHiYe/bz/poiLYYqbTaQZ\nHLVL/60CrrfS/8FuzgRM+ibijcqdR38Rv5xDTbzxreePky+UPkCw6ZDgWChT\nLGJH0Vz1002CVsKRzaQlLFGNGNyC6JL6OjVQ3z/LddxL54puCx+foSKWV4tX\nlqKCtJRZStDTvikic26cNgd3tGn8E6o6elsUj8saxNLYQJEE7HoKEglRtyaV\novMUJWWQy0tuGueTm71+1jQ3QQnqnLaqltBj1VkK6SYDq4MhTqgDRe4eVQh7\nWZqU5Wh/+6pYq9lI1laCH6X2fCIFHuJpIeui8xhqxa88Sn33N0eq/4dHCyzT\nNhYOH/F6Ta1BwNEFhMWZPRhm3ZBUCkQElCjwymg8BUnhawlGAyMms+QdpTEw\nWmUZ3e9KryzJQIzCiDoe/DivSmgGhM5OwoTSGO67zGanYhUFJL7iH2e5dGk3\nIJEA\r\n=EQ2W\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHn7FAiQghXG9ik6flXsad8++uEGsihoqp57BxWWBPLAIhANxAKNE8BGzmVPGWkQ0HVh6jWQKLzNT46BIlpYTOVKTy"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.39_1644339927191_0.44729083652828416"},"_hasShrinkwrap":false},"1.10.0":{"name":"kafkajs","version":"1.10.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"5add6923d0aec55a339aa6bca38914906ee74915","_id":"kafkajs@1.10.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.0","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-af1kUKJrM3bIw2olGhjwhqHrVBVP9y79XRO/TAFE71dUzuVRrwoHJX8OQ3ebV0YZugA7J0oKHwW2DBY6A8BV0w==","shasum":"6576d0b8ccb4417b0f16bbb08dca64bf08b64965","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.10.0.tgz","fileCount":264,"unpackedSize":470211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQanECRA9TVsSAnZWagAArD8P/3IW2g0h4m+0tiqedXUc\nJkwVnVOF/wDKRepy8V0H4hdoVnPv/vICR4ZhNcQmnHC/t8LNWC3a4VI74lWo\nIPU/x7NEkrlWzNsV5dP4OWybqCKAJ4ii1onYYXqDZsOILWafPYtgr1C5Gork\nBF4Cma4Qm1UV8T3fvgt4R+yfBc7Q1LuV8wMx+f5JXPx69Kl0my+u69BKR/Qh\nUpO3vUfYWf9JETvzKewpu5orMQ+QCgUSOS5LNyYRdqo29Xi06jPfXdBJ7Mn4\nyM42z1/KceZGDcB0ChImit+U64Vjz/jwOfPgrXKC371okInu/EDgIsH2jKxY\n+KJts05DMx27RkmYXR8/WvhM+KpH+alKSMlUdsEoK5U6DUUheeOWwa8gEZI+\nAvzNX+28HHKMs5H07FuNg31L1VKYrPGaoV58CiAQB/Mob56t1P3pXdgooKB2\n/HCP+bu0VeVwuhUb2bMmtkGqOuyL3CtZitc3DwTwd49WB7ahiK2ELCz+B0hN\nZOm5k26aIKG5SFkNp1DG2pGJGu7rvd3DnxyQcGUw5WRjuwmo+I8TS5IOGYan\nLO7qAXLW8PEmjZWyWsLQjOH5NMyzCtg433ZdxQgvJw670QPnDIhv0T4r4KL4\nnErAorPC9eMUlhlkDYct6vM5IJ+3IcGygkhB/Ky9pNuPfA7WHQnD0Ksp59tv\nyU1F\r\n=J+3d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9ASu1FLoH9JldSyEzhXqQgGaUyBanejentwv3WH2hIAIhAKQWRfcrfVbGS7AraBzhyPyXkB49lNr6TfMxSWRnqpbH"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.10.0_1564584387677_0.47372328956007737"},"_hasShrinkwrap":false},"1.13.0-beta.68":{"name":"kafkajs","version":"1.13.0-beta.68","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e973597eabe6f21fd64479b53a9376d193095dbf","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...e973597eabe6f21fd64479b53a9376d193095dbf"},"gitHead":"e973597eabe6f21fd64479b53a9376d193095dbf","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.68","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-mIqCyHzKAbjKTB8+5/+6juPZUVGckHO9PfvPfw/6y1VL26XQ36VT76QRrtqPwvdOmUzPBK0i9BBvWvHR/bVdWg==","shasum":"54d01594e38b112cf40f2b48936040b5bc54e5fb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.68.tgz","fileCount":302,"unpackedSize":555125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPpJOCRA9TVsSAnZWagAAEV8P/R5sHdBFg8A2YSE2MrLk\nmnOO+hbGgAgqs57dcjaTw69vPsuMY+eIEyI755/1YjhnyToDe3UyE+BhPL6Q\nsQ6e7RyY4K/9/9CfdoUilq/nL7aHA1v6guvTosWXosdK/ku3zEG3hQuIG+sd\nBNFU5dVMvDUt68X4pmTH94L4U0Xgph58p2lGsuAF1Wn2Hu9emikCyJ20eWam\ngs5xA7n4p9U8JpFlg9tyK784cPSojkkjrpvFx7xQuE/OhzIsbDC/h6kRHGwb\n0wxg1Qd7Vq7egWSYb3l4wdbG0Aq3OOyTaHt+pk5YV73CKZ9R9JliCoT0d8a6\nPL855qDyMcKawzqb1T3ynd/mGZgMaojryP85V8zL100hLHPVtLMfB/ShhpMm\nBGzx0GP+lGeHKQJ//pZYjTJM60Cr++JRhEmmi4Vt3ZuPNCcvdT0aQq6QC6PK\nJxplsCr4kNpNrc4VOyd7iiEg/DIL6R5VQW7XHlaf4CrlkkJ9aKygaFwBMlTV\nKovA9KMUm/Jdk14gc87lS/Aonq8uAow68xeNC2O/anjZyBWOcCjnSmgjc4m8\nY+Kg+sHvS20fdEeotv0L+6utmuzRYZDF5bZpJ9dkMLUV78CqtfJZR8V23tlc\n+hqCQUBqFJvpaChXutWzYtnHUpcIAz6pUVdON0kAbh98ig2stLBl+55JPYQA\nNwr/\r\n=/9Nd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF6peRsfO1A2nUs9wktmYlQtYHhiZGuDIOMt0nDIo/4EAiEA3Zt4Fz5SrGLkz8eVY8mPy23vw3chmGd58cpq6f2ELxA="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.68_1597936205990_0.5954283042394133"},"_hasShrinkwrap":false},"1.13.0-beta.69":{"name":"kafkajs","version":"1.13.0-beta.69","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"5987f270f86bb7c87ca408b7ae89e40a5e6eac50","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...5987f270f86bb7c87ca408b7ae89e40a5e6eac50"},"gitHead":"5987f270f86bb7c87ca408b7ae89e40a5e6eac50","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.69","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-H0WLPqrLr3sp0UbD76Ck6pNNu1kNmwStcU1/87lbFuP573pkV09etmEzIRSnBqGlasdsMKPhzR6+2WpJ+5p1sg==","shasum":"90ac5eb1aa8e2e2cde7cc91407d48200b80d3c94","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.69.tgz","fileCount":302,"unpackedSize":555153,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTNqZCRA9TVsSAnZWagAAwVAQAJU8lXa4FWv4zQq526pY\nJGW5fZWIQ/fFjfN7yOkASL9Z/hlXOS5kMPNR9jnZqW+FKjBmk6tXMMFp1PiH\n+bS8cQCMancOXBmY6G4/ptG7FfU9wzQ8Gv4Y3CJT8OYCEg9nUGNVJqxli0Cz\nR1mhHeGrbs8OO9mgItZxK8w4baV0H3wO5LobnI1ZniWvk24b5w6Kzi1SxZ16\nY7dfMO6pk4k7mCZB2JTshj4vsR7RmFWv+hoxpmHJSM7S0ceGvdUEiy9e7nMi\nDl6gSUt0KKi3TG/GG1qEQMXvowbzmOex7qE0oTUKkOyRBHPoXYE/PT+XZ6J/\niokIs+8vwhPyvSfrrei4fxVeY5OOrLYiRD2PBkhGvOdOhY2MIuebFeghdB6l\nIfnqj2tmhA0rCK4EQIAixOGh3HEBojcCngXfvUWnxeyqXQDOVGCZME7Kcl8k\nJPpI683qtoeu20frE0WhiDidxSU5Ea7ykPE5+7rcL0TgAei753MbrsoCnQ2J\n3v5KKivX6AgDIfbfTRrFFg9pNth5nv7kcvJ+JdwbuH0sU2iFinkqlMnZ3cr9\nJ6diPA8LVhhf3s9v68FnTFxVjWBmSazrgIyIhGJuTY8zrDYS8R1Yrokw8aOd\nkrWr4CCGDlTp7m5suyAWyGdHhAEJa8+vQv0GOzopfZGJsruA5wLTC0DCzc34\niOp2\r\n=dZIC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLuTkmPuJ/KP7Bap8XBPvjpOZ+pfWWZNbyOEJLoYbpBQIgeBH2f97cSgXI+U9a0hgJlJCSwdPGjeDBbLkJFAHWUQ0="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.69_1598872216403_0.43588506859253107"},"_hasShrinkwrap":false},"1.13.0-beta.66":{"name":"kafkajs","version":"1.13.0-beta.66","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"2c9cddbd76ec7b7966b530116bc80550715b8e3f","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...2c9cddbd76ec7b7966b530116bc80550715b8e3f"},"gitHead":"2c9cddbd76ec7b7966b530116bc80550715b8e3f","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.66","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-dpo6poziJ+0Xx3PujhIfVop9ANfSu1f+XUdk8x4c9QzeATPXlVK5yqyGmn2nbjySqVA3nP/ryXWzPTcKsF5p/w==","shasum":"739680b5300855d78bbd6d020a1701aa0b2feff2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.66.tgz","fileCount":301,"unpackedSize":552507,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPo7CCRA9TVsSAnZWagAAyPIP/iX9873kPnBw67HyKh3a\nTWBiLxo5eCjOwQD1HFoYLtyVcMpF3w+dCappoI0GcSG6oU0LSy+hN0DwpA9U\nzoUDhQ/1XvXDk0LjSMGQN7Lm7iJdlDJNoPiH9f4CEv75tujFbNQocWyeLHIk\n1OTjS4eJZyQLcTrWtGDoDnTivw+Z3fa+xtPh1OHGCIjWNynSasNyy8Nn5aMW\n80VS/ERAWxEZSvJbYhHtbg0DJMIW25M/fpIX5xxg1d4CFZ/IMTV6uYHktZUP\nzKsPgdky501XmUO61M+f43xhRFZgZ+SOf3PcwoOWQlJ6PLC+lfj7wIA5vECL\n1NEwKMSA2iFFxjw9MwsopOKwYg3wkIzSdpll8+rFQ9LbI8zF8jv5ge6rtRmQ\nJp7iqLhJKj/arX16215vZZoT/0dUUiIP94Rvk4teu0C3K5lioUC/sOMQj8fh\nlTXMtnRZhGUifaFCdUUMAmGAwr82VPdMJO++lSLs7PWi79D5nvqqeYs5yejC\n6lJhQ/59uNRgXBrY4zmGG0WKFiX4mFCHgGEFTomSwEBnLcUKMpp5ZWx5VG3Q\npjxjRAk0e8MSrHDLQXS84rhbD+F2b/74auJ/m6b+S4ReeN9Vl3Um4f5redY+\ncSguZ3RMQuqKALD/vpCcaBB5SwRuuVp9Ys5XSmZAQ3MOQuGd2LweoszCErTp\ncEp3\r\n=Xzjv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBRAGjfSZ9X9FFLgo7qfNMklYzeiyVhKOTJnXqmAGMyAiEApwfrmsPd6Jqs/LPsGsywoYK5ZOrP4wRCMSUNQQXJwcQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.66_1597935297934_0.006970355825434815"},"_hasShrinkwrap":false},"1.13.0-beta.67":{"name":"kafkajs","version":"1.13.0-beta.67","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"983c3d7b818dcad65ac1285908cdcb075ae18687","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...983c3d7b818dcad65ac1285908cdcb075ae18687"},"gitHead":"983c3d7b818dcad65ac1285908cdcb075ae18687","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.67","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-j9zR1E+VCTbZa7ZP/RQhM2laeHdLgaQ17FHmI11KmzqJ9V/Xghf0aBl5zVRTOObipblPzVIQO1Jbr3WBoKEnFg==","shasum":"69d5d604afc5a5030d643680bc2f2c08d0ceee4d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.67.tgz","fileCount":301,"unpackedSize":554309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPpCHCRA9TVsSAnZWagAAzmsP/1q8tyFGqW+bp04mSNcD\n9rLAI+CBHDep6vbss1j8tOf5r9Sr3FkFFhr2sWgLaiLXIS4tkH/tL3NRexua\ndyet2x9kF4eGjp4fRRQRcC6422msOSsWFxHsQbefO0qU3WzrwoyqHoaWAUrf\nwULnUPGO+hWjsUr1A5xPgqj1dHxesmGRI/8bTSXj1P2mFwXXfVz9F9waOsB1\neNysp+vsL6oc7pEYQbJyKDOH1p6f983K8DkrRTlhFv6xh/OOnSMmpfcN/bUO\nLII5c+eTRsZv6buhBn3fvyVLp3IeGR61rqSwG6DiHso8NfNNbb9oMreVFTAz\nHEe3uc44ZC6jFRD7+pgztpCkdnJzg86pIOJ5AmABzYLPj6BYFZBVx/OzyQR6\nCu6MPvg+20OW8B7Yl3IACj102SUxSMdWLhxQTsnTq/VDjsEaWPn6cateZhBZ\npKKdBjOGpHQLJSafQ7VKS6wP5Pc55QukyCswA2kqq4GSgwhYsRJ7HnmwqQfG\n+GtHgGg6fvzlAj+uMSYCW59cs3YBy9j5aftziTPwcfpmOxdxXsPmEMm3XsgH\nfsaH7MJG2RoCtNgTlGi+e4E2y4Bc6rYLQgpyXB0g7HoE7v1vziGXulVODZCi\ndGWC2NuWoo2/GcJfSp+U+QUiKjjf3Hv43BhzpSO6N7lb8gpH8+PIfBukcKnL\nsIb3\r\n=Snvd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDF6JS3B5ZrJX60F70fCgViD2/SPr7hOlaIKOlrckN/zQIhAPnJkwkqw3KtNsT44Fg7Ckmlpz+XULJc/nQ//Fk+6/I2"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.67_1597935751296_0.7534739782117486"},"_hasShrinkwrap":false},"0.8.0":{"name":"kafkajs","version":"0.8.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --coverage --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"fa652bd8230064cf9e02104a41b37de2977ca334","_id":"kafkajs@0.8.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-KD1FKs1mL+f9ViQlh3jaYDb8wmkM1aXTlUOA97mw1EyA7ABfscYLBlvq9Og+37dG2KF2j52dxYor4h6mDs5mkg==","shasum":"6d81eba086dab5b781a81633f26a3a37fcde6ff5","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.8.0.tgz","fileCount":132,"unpackedSize":365677,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyi3GtjkhMWDJvimlO92tXnw9dedDl3B+OisQJWMErTAIhAPaZt/YuoU8kmpSlXO5iH/q7l5a4GPvP56/uIATL5v8m"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_0.8.0_1522929399781_0.47701318146116733"},"_hasShrinkwrap":false},"1.13.0-beta.64":{"name":"kafkajs","version":"1.13.0-beta.64","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9862ecece95355054f4bcdb309b33cc0d29e1820","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9862ecece95355054f4bcdb309b33cc0d29e1820"},"gitHead":"9862ecece95355054f4bcdb309b33cc0d29e1820","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.64","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-GMQJMGzAQxxaBY7WrdqgBqxuF6PMH/jsvoc2aYm3UpSf/7Et29HNmdKOcb1i1wP/riBN3uTJIGX3WCo8ZLzUuA==","shasum":"b31973a0ad3582c1a274f2267179c56a15560e2c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.64.tgz","fileCount":301,"unpackedSize":549968,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNr3YCRA9TVsSAnZWagAAO3MP/iwiaoOBJHSYudJyZceO\nVvRwZOk96h1FCIDYPpTeCwqrutCE31As/fsTCIjGwwA0eNE5fpwi9FFmVLHE\nDwNKSz5FynUlC/+q7JHCddQ9F9kEDBsIe6HzOVC0NAEZvz9+yxWDQ3vGNBij\nlwg8JCw3ABjR+Z/xTf2cxP/bR7S2z0lb6ZFiWM84aqvp14tS6aIfqppRM/8A\nL088YpRS8ZQ85MXYfnIZ3utiQF8Unowop7wFZJM3zzf2SKDSH6EB7DSG/+hZ\nhX+QebL7qq/+QmG+pPbFOzb1LdrXaGC3De5lO5bCqq2dKnQyGdsAiVDFJXXg\na/5CCXFIvgIVt0wJqAPKbRwS9U6M2mzgvNuBm1xCzwiQ4NMuvSDekMKmIm99\n18WJBU4jbaj8vqf0gN5MeAVbUYpTGfQULuazQJuPNR1IkTvD3y2Sot/tKFEH\nnHo6AoxwNPqJF0vQuLtLSqvds6wIEqD6UiMxZyswgQVCDjaos0wf6jyH/Crt\ng3hmN7yJv9DoTJSCKeVBZuE8Bi6sWEMzq1ADP38t6Ja1FN43g3ayJyScTySW\nu3n8O1M3nmiLbycY2isPb0cW1fKkqlBF6C1brbZOd505+pozBuJpnjjGxx1T\nSQi7Kao0TO5vlXGWSjxdhYtjUCTEtECASX+XS0cM/63az/ysG2Qfb7cWWJXt\nPNhI\r\n=v9nW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFS3BtR57ph9vwCTBfr7mMzykg8Bfh2wCC27ZiO4C0ioAiAJvNYwFfI7f/7VefRqwRtux7G/baH1CIN1s8hkB++LRQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.64_1597423064191_0.5450590911720523"},"_hasShrinkwrap":false},"2.1.0-beta.8":{"name":"kafkajs","version":"2.1.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"51a4947cbe12856c051263e86c2daa2aedb431ab","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...51a4947cbe12856c051263e86c2daa2aedb431ab"},"gitHead":"51a4947cbe12856c051263e86c2daa2aedb431ab","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.8","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-45TqFhQSSVpuZIms32dyOHj0ex1cQjbFVAUN6+tLPuXawmLKdWzUv231UXwIf9N8sXfISTwvDqlFRibYQLMsHQ==","shasum":"fcdbceb3e3d93bf5545d857f72086c1487c7a43e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.8.tgz","fileCount":385,"unpackedSize":712097,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvV/6bmBopkKH0NWGL5CQ8/gLHFas5YuMp2VapjPbt6QIgAKGytcNTX3APIzGH2r7TQjQehm/AC68bc3Dkcs7V9bQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiurHeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpP1g/8Cq8GtWj1g5qO+ysw34WH6BHa8jhqELQknLg8Zk7OHHYCkvYU\r\nVGv1YKGiOmn+Ub9iGx+lcWvqZcAseiRl+J6myQcsJoRGWPP3KQ+Le9AF16UZ\r\n7AVBNmjR2xcMivgyc/Y/fzBAp8K9wR6pgaghnvlu/yiE0GfO2oo3fLf3Wxiz\r\nT3qgVccRBAS0SPR+s8MKy3hYTc/bXi9s5bBnU4N4A5BBaLFwJKQkQjsFi0Pe\r\nvvsjav5K1cYaWOgtjZrKG0s9Zf4ABixZixY0MgAd7u6lrkY1zjTWsLaiwoz6\r\nxZYLTp8nvMMKKPeOz7hUN+0lOj2y3/d/cWi+nca7gorTzRGghZzAnagUWaT0\r\ntrGJ7FH8rmOZxhiuRyzwxd8opjBjVbMQrYs4XoDjsu1yq1G0npGCnPckhVoj\r\nq65cWebJ3PySkhmqeGFisMFQlX5YP9gIpbdVkxR7TowR/EwwFXhAUJb+hfqo\r\noFHUseO59HOEl1D84wo9WmA8bQUlNop9zSM3xhgs249WIaCG1C6s2g0m3SE8\r\nLjscZkASLVA7kHklbhsbHKAqnuOIDPk0mgjirY/zRAN6tLij3oW8rzHmUpq3\r\n3vWL+y481nKze/TtRJSlKx1Nsp1Mh/NMFZ2e4N/rL0flyFtA1filBvX0zlcw\r\nMl5xyTLjq9LU98WTFaEURk2VCsEavHkDANo=\r\n=Og6s\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.8_1656402398317_0.9351989671673593"},"_hasShrinkwrap":false},"0.8.1":{"name":"kafkajs","version":"0.8.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"abcce08399a26a633b80f72f385ebfa5aa2c54b0","_id":"kafkajs@0.8.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-M43mlB501GZ78f6h6HYeZJe9/Cnv7lwwCC7AYroIcyvweU2Udp0GcTLoC1ljs5d31QWyHsLBI6VOJCbOefkCJA==","shasum":"b55cf4222b88330d826d70ca7363a33cdd6ac7be","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.8.1.tgz","fileCount":132,"unpackedSize":366131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcm5KrhX9eB6wfcrIzDCyNXVjVrs17wdGDrF/JIZD9wwIgBlj3q6k2GbviEo70p7WYKA9ahb93Ux8DvUWp3H1K+BI="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_0.8.1_1523439641786_0.9355836528528385"},"_hasShrinkwrap":false},"1.13.0-beta.65":{"name":"kafkajs","version":"1.13.0-beta.65","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c6cc35deb21969a857ea2c819658c7c579bc5a1e","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...c6cc35deb21969a857ea2c819658c7c579bc5a1e"},"gitHead":"c6cc35deb21969a857ea2c819658c7c579bc5a1e","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.65","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-XYfrJvivsJ2RHJXsZkJYX79oztBCWzRV0hkd+fBedvoD6FU3abqBWoJ4gh9AM2N2ftU1is3/7seNN03pq7ez/Q==","shasum":"dc414986d340f4fff2d624743162b1584396fa73","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.65.tgz","fileCount":301,"unpackedSize":551726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfN8IECRA9TVsSAnZWagAALB8QAKFR0PYHgjT0o+W/jOYM\naMPXgjrkTczEEtRCOqqdecF2vsX1V9LMKX/JmumN9MjlPKV/B1IioPYNgwdn\nA6evvVKLKs9ta3qHXy8l86BcYDaoi2AC7NX2ksmPjg4OpqqZSWXl2W+eQXxI\nG7rQ590O962PNqDAFlSYBlyeibWwwEeOgKQnUkhwk7wRJZxQwNEOsjVml/3M\nIsj+O6PNA80ztfStgDyBTxRfxhrGOuQhpXk3JSkXNS/e0lMsi2cc5Q3MmCIx\n6nrEMs0fE1dzcL1Ps/BIzD4GptiysMqy6FtfVh/F8eC9j2IAJrrZu7noQgMS\nFAo+5BSb8c1PK+oc2wzjqBtdJC0xLoF9Sq7IftVi0s9Ytxpiv/qJWKzGVpIU\nSKqkfOlhfFiLE6mmvnMO8UD5jjr4U7NUgGphBTDV2a9ARnUAYxACwOS2Z+fc\nSwvBZfL3wD5MHJ5NOJo++Yk3aUHO3koO55nM0vyOp6IQc0Dgh5scOVSJL2bH\nEVrC4fWhmLfFe9rRQHtaafPJbhkOSjlDYyzjvo1YtTmrrjAHw5jBjPnZTaE2\nz3MktU5aVOJRepL0PK6OZjyH5BtrgG4hyuGH/GrnXiOA5WKKnELe6xQqOvCZ\n6KLLnPCloh7taF172NECG5rMp5DMbnODjYTcFw7RW/xJg6CpOe8c+ow4NRHM\nUhaO\r\n=Irc2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF6ogipaP2NqYfjVlFuDQPFf1tbCBWryd+pfPsVAsv8kAiAxiPVTgMCuzbZjusqdRNiRNPJkNzySCCTxzZQYFpBFtA=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.65_1597489667555_0.6457868777973894"},"_hasShrinkwrap":false},"2.1.0-beta.9":{"name":"kafkajs","version":"2.1.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"196105c224353113ae3e7f8ef54ac9bad9951143","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...196105c224353113ae3e7f8ef54ac9bad9951143"},"gitHead":"196105c224353113ae3e7f8ef54ac9bad9951143","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.9","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-YfJAM/2TusXczf3n7/8lC4dFR4XxaO0JHkEp3qeZd/X0Iq+c7+G4nQanpk/u7NeeOBaPeuxTmtrD3gss3LeSlQ==","shasum":"5f50423ccda77837f8057b59d1d20e59535b6d2d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.9.tgz","fileCount":385,"unpackedSize":712972,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj3c7fNde67DRG6ZapkLGZFdlGGQ8V9koXnzkJyg/CYgIgO5N83x1mFFPHI2iLcRGZYitWYNO2ZbIvMCAoPxh7hrw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiurvAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqeHhAAoqI9+RIFgXoKX9hi2/PNL1Nw8y1fLTSi4hCc3lSutP4Kella\r\nQc3Yuk19dDbNNYOAUSZeE/LtioRmvTQTuVeL44oB9qCWOXxi/QuAWZMLOU0J\r\nxoazlIcWaTJILphaFevne9yr7bymeEK8f5VDi2AIFar+9/xYqhGaab768i1g\r\njkANd/vCzogMzQ/6OgrDrP4hUZWiKwUHiKczuzLNAyb+h6eDukSJbK4pFijD\r\nripj/kxSI1fY6ba24/AiW6bsWu/2yAIo6n6DyG3jm4xVShAh94q0GAO/a80T\r\nGO/1YKzJrX2Lu7MNGUZZiKXM/OGd7kvp6GLBpV+dUv2F15++ecV9Lj9ewsar\r\nQZq8JVnP0G8BihqnQo9gl3kCsuEDCWzP0eA7Sod0tgj91F26LNGqcKzvR881\r\nNStr299FeTv8or2JH0JJL/5ooab4dXYOyOjpsd18+md+vxxh91OIp9JKtApS\r\n5zXGQiLEsB90EzQJXj4+Ex3OR1hrO9aASwGADR7I7Whz+9jSAwFTDELfDTL+\r\nJ8xSSPY5SxJ9M7PoHrGcYl1nWKaHWk6W3mIcXTU8mN9X66ppvtvA4TcVor5c\r\nNXAdV33KTAIEvjCRXrT3XD7rEA409TmB3it01kHsach4RWepYasBWtPEsEDo\r\nIlTbraZ0ld8zJXtMD7gHXjSUUtdDpCDEJMA=\r\n=OA4r\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.9_1656404928337_0.5231895741397683"},"_hasShrinkwrap":false},"1.16.0-beta.21":{"name":"kafkajs","version":"1.16.0-beta.21","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9cf3dfbe4c234920db171fadb113fc5f8699c14e","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...9cf3dfbe4c234920db171fadb113fc5f8699c14e"},"gitHead":"9cf3dfbe4c234920db171fadb113fc5f8699c14e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.21","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-6iarOOnKTaei0EK+a+K2V/bBA7YgvpA69tZwnVF85PxGlvoG/wqKpfRNh2Mb04uiNTEwBYNEIO7hAFElEM6/AA==","shasum":"5736bcef7b505714642a82d6dc0d1507fc0ae817","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.21.tgz","fileCount":380,"unpackedSize":691205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2yw6CRA9TVsSAnZWagAACv0P/01hxGaq+36/ejPb7FNh\nBzkUcndzAZQ8WBWR1c5OINbqe3YlOGss20Goz72hbwzbXlYbjGp+D05i976v\ng4oavKgS4EF0G/BDPX7zNpYSpt419F1bqEE91KTRtCo+oXGRCVjxLdRSb/ff\n7rdebKKGoaiSlmqyP1Ssq5U/6WMJ2OQeqouhgRTN9d3Hb1/NaGyoIbM/os++\n7nOkmrYHGtBIZuAdQgMA1/kQxOD3ym1rXZN+5HfDGV5hc8j2EKmKiNRvU3j1\nay7CTCtjEUxW/WchzNBcreExU+qQo77fG9i9oyzKiOY/9AYP3Me/hzd4yz89\n3grtFY6/5ga0GPOa9EC++R8W0uihrHlb1aZkBc5iSXe/n14+swAW8PEMX2oG\nEkvTCISSXZ+wbD8OHcxCi3Gx1rDSBqIXx/1G1ngq0Lk4HVkf8PbSBlkH1jag\nUhJtLwM351lH7BavQACycYBOY97gmVSK8Vcbuyyefp3pPqSlZZSqVaJNrM6p\nef8atRd4NxzqOLURtRfOWIKZ8NS4MSZYHbJaccUsBNZC7WDr54aFcs9g/wmS\nSpIhaZvh7O8evDpgiW9TSyAGrnL5CwKNPA+DChXZtFlGGHZsmt7AZ7vXTrQ6\nQUI00vvOX9r1f0STyRgArC49qRv7xOfb3Bu2MRT1CLWQt1pvlRatBUayrY1u\nWN2v\r\n=s/yH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDIzXca49QlAGv2DdeRf35eViZgIF7kwR+eyLdHsqkY3AiA4p8PgS/UWj1V46a/pb9abFvEQzEbBtl8W35/H4/l5OQ=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.21_1624976441745_0.01184043773683352"},"_hasShrinkwrap":false},"1.16.0-beta.22":{"name":"kafkajs","version":"1.16.0-beta.22","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e99be62c1bfeee5dd92ade6e3a2bdbca0a20d834","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...e99be62c1bfeee5dd92ade6e3a2bdbca0a20d834"},"gitHead":"e99be62c1bfeee5dd92ade6e3a2bdbca0a20d834","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.22","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-bXfaoA6sMW5BEJjuvooRWvWVF4EuCVwpBCcmaFZ1hD9Vq1n7JDOv7j46j/xbZin/kUTWEYv0mMTDgA9L3h51HA==","shasum":"12b9c852bdef62452c11486228c2b99279471f5b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.22.tgz","fileCount":380,"unpackedSize":691196,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE35Iff/ACJliccCZRIMc50sgzek0wqanI76Wq3V38ULAiEA+qUayZcaKdnhw2OrjPTlvuApXdgquv74jw1kDAEWi94="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.22_1632923438027_0.8240384557300198"},"_hasShrinkwrap":false},"1.16.0-beta.23":{"name":"kafkajs","version":"1.16.0-beta.23","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ca0454dc4dde5c635696a66ef97466dea905d410","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...ca0454dc4dde5c635696a66ef97466dea905d410"},"gitHead":"ca0454dc4dde5c635696a66ef97466dea905d410","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.23","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-0faATf3dYuXetZ8ly0DqacTLv5l2XkfKKBXueRuduSAdiIOPQPPD7IYHQLPRswSL4XvxugImhAZ7512RzhXy1g==","shasum":"e71bb9ab7d06f40aaf72929f616dc258357e72eb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.23.tgz","fileCount":380,"unpackedSize":691341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm4M0CRA9TVsSAnZWagAAYJUP/RUXsETxjP0agvyasXSi\nO/FSFG7FJIa0AOhZELSM7otj3si5a0aIv/BEHnYC8yc7b+bIvHb8Qhqv9kUW\nKfcWU2sEfIksffTysG4yk7dfWrK15k0ZIP5TH2l5+V5z8UQPfj4DHUW9kLc6\ny7FFqXLUloGX3RsHT+0oXQrqHJJACO0q+5/NK5iyUEcITLAhzDbUWBuTxSLV\nOKwWvRIWON6ZGjtDSm1jNPVGxAcBapzKeMIgTf3aKLNCkW9gZAiwWgkM624L\nDqckuoJbrJTbxC8qoz4stXP7i5Rv2knETPhhal0Mwnr0htDSASTKEvjaMzBh\nPofH05RNUFQmUD6oQ5ggxij2RBBpjNgjgEctf0mh9H41OngLnxFFMahvJ6Re\n/RmZUXVy7HH4wpTS0P34j/H4NyejoBIpy+wBRMd8CFvJRd9QORC+bAZ2Zntw\nNSgCi+u8z0bmV/hDdL+FMkkrLVgZSC47BIpCf72USC9wcSL/DWZFWpGjh+ME\n/GodBSLiJPwaqiLIQD3utUKWktlXgLxZ9EG1N+Pqdde6vKpTKhq3dHhBGRj3\nf+ldvWsVC8kUQsi72IC9jhUqUsiX721zowTqhlSKG4YllvjGSb9u7sa8UOH7\nKMafZiDtZBqrEfI7K7qdF6VKug8xioLqZC1QtrwJ47pn/U+cpCdekjK3tVPk\nn2Tb\r\n=zP1B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFmWLl9feAeN+esPJJH7Gw/Yvj7TdFyfnlXT0pC2pFCaAiB+rG7BrNUcEu8bZA1V7P06+cnyH8Dabfl2Wpvdl9Ez7w=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.23_1637581619969_0.5869282976641526"},"_hasShrinkwrap":false},"1.16.0-beta.24":{"name":"kafkajs","version":"1.16.0-beta.24","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"812e055037519414d5a4cff491d817c7633b157f","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...812e055037519414d5a4cff491d817c7633b157f"},"gitHead":"812e055037519414d5a4cff491d817c7633b157f","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.24","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-nBm1xgeGU/XYOFqmz98uZm+smntzfrRT6cPueEfGQzSA7yD9H25u4Phuulkhip/sgygcf4bn5HRMUIrgQArbPA==","shasum":"1d4ba997b6c61a9cbf90bcd7a6f69818727940aa","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.24.tgz","fileCount":380,"unpackedSize":691192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm4UOCRA9TVsSAnZWagAAmCwP/3rsx7rQYKzsAVLR18aC\nzbMMbrKWLUGXzcsdVISNV2qZGb1v4zweOAnknUOBJVsZ7pPC+EDx/Ki5bZck\nBlGASDX++UJ2U410UHUGR9HGhlAraPGslauMX5zNg1YgUSfZvHFUOlxf6XbO\niURW9rhHPuIynmk9Y0xvbUQLfUWgM16lGdns2uz/BXzahIT7bUA3sqBNEfnn\nfYW1vwhSWU1tMyXqXpqKnVT01/x4nB1BVo2QC/ddgOEgWIZ+8lJDtB/I9kGe\nd6pHEUeHelrYKbWUGX2VaSzGihMChyEz6MX/Cr1OJ1TFw3GLkw2qtUfYggBe\nM5Ycc7n4ImNM3zMgrMZXAg2vQEzTtUi2xUZlMTzpWEeww/FF7hMqx48HaJfU\nX7Qwrso9JpFXUEekkt+r617X+c91Yqaqtt493Wo5f0OZ8u+j9q98EWzKR0VZ\n/MUUh+dIip/pWaNJZ28l7q4AbJt0GdWzK5nLpZCfAQfSuxul1hnfh5AkUKWc\nTgRH+jnqzKZLOfS/0Liph3zu7fTLrxnUBcyvGW0be5Xd0QDV8UJ4RNVHxgLU\nXFLjsStOCSB13W/PGctkLpF/SA+jjeYHgegp5xbl3urfcvCQ8pum4N2tIGr3\ndR1Xxr8QCpjHJ5fJtJ9TCzrp5mOVGwVp2L6jOxrG+F94YdgC/7eNOTfuHZfV\n+blT\r\n=lHTp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLwMiMQR5jEZh1/TFcyxbwjXLmn/WyvRzwxz8Pop0PEQIhAKx3kSIiOI0edQ7wIqbHLFTFH+IrLeuHylKR0QZsm5lU"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.24_1637582093955_0.3316063381050258"},"_hasShrinkwrap":false},"1.16.0-beta.20":{"name":"kafkajs","version":"1.16.0-beta.20","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f8366f30d965214701393b31e1cc6eddae1fe9db","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...f8366f30d965214701393b31e1cc6eddae1fe9db"},"gitHead":"f8366f30d965214701393b31e1cc6eddae1fe9db","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.20","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-LtPmcruGEAV6teAtCqPFauuNVzz1612mwbV+Goy6VIQh69jpzDJlfqHO4emhYE+FG9Npem9/RUgf6M4mWrJaow==","shasum":"554f68d5fa4990573edcc4870d07d29366f48fd9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.20.tgz","fileCount":380,"unpackedSize":691056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwNJfCRA9TVsSAnZWagAA/0QP/AvfvVBAggL3B4cNXqhM\nzBSaesLFVo4c0gZsqee52wpB3Pezp1Mf4xHM1Qo90Q4KBVd9T+BkO2qt3VTs\nOEADDsRXXzDGJLSnEBs2C1tlZMPMxI33pRvjqet5yIL05K8sRWRaESEHnefe\nzcb10nmJb1eYMFxIScnw9XzaXUw+WMpSZpMwI49J0LAL6W0RhCWhTL+UlHYX\no/2O3VRgAo2KmPDzdWUm5lcsGJWBGuxhjgvQ9w3TdL9owuqT7OmFH8b+vVQq\niAUbOOjUybOM9scHwPGU4ub+2R7F7qqOy4NhGZSKQpowEXwusGNOMf5sA1UA\nyaKk/QaQxr76FZ7qQas4oNWeQOc313/zSReIRf8S4IEOJEC3S9h4W9ztm8bx\nIQ21JblWqoNR6WLIUrgCchSHNghLogsPwv+aHc8fAIYcxVO9R49J8rcskHgA\nlSFrFVnbOv2S1IzKgDiM7lTw5uh/TmWk3odTtjcHDF+9pp8xna6AckvLM8AI\nOLM0rGOM9snnt8dB0uH6YJaXo8Usrd4UUxm/XSgOoPQJtcUgn0LOhSk9uRoP\nS7kbrtAcfoiW4rjjl+QGn24MExllVArGml1bNx9ZK06NKtQpqTfduJ0yHFqy\nTLNfDw8YbU0Ln12MZha1Cohfld15paoiQfaUNfztBOZCSsAkGCNxBDvjfO24\nzci+\r\n=OG/O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHANWlykjwDJhwTFgvAY0gTbLoJklOXt86DVHX/TRc86AiAXjqoetrEr2KXJC977qKBvK1KJv+5GZRWl6QthU7T/lg=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.20_1623249503154_0.11854534713342368"},"_hasShrinkwrap":false},"1.13.0-beta.62":{"name":"kafkajs","version":"1.13.0-beta.62","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"18fcb258f6194c6c75e51af69522853516174905","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...18fcb258f6194c6c75e51af69522853516174905"},"gitHead":"18fcb258f6194c6c75e51af69522853516174905","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.62","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-7t6PVR8x5sfu4SYdA8YZyXJNuGKnYX0SfawSdMMHIzOy7NjQG2MM3dlw5b8vLMKs6ZUDG9zqkx8EWTJD5avk9g==","shasum":"19c7d97d62299a99c3939fc3509878d929c564ab","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.62.tgz","fileCount":299,"unpackedSize":538843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfJnQGCRA9TVsSAnZWagAAtj4P/16IU5xVBhH6vpYLcn18\nmm2KQEIwsr9kPoRpDpN5RANUugBUjL3wi8Dwax2gpAIx7PGvyJt5vaRvN4ej\npSYamcKGTnOe66Vt6f0Kn5NC8phW1mcXI3HryGBUr6EAAR3zsF+7LcmFxKGa\nOZLGuH2LliRwYl1O/BylK/tBc3Ls2rrYyRKrAEeDKp2XN4a5h+PkiwH9HgoA\npBK0CX/YnFQlZ9FfGPCloZEOy02I9cdFMC0oRdk485KZseudHm/IweJzjzvp\nq7tbQsAbPt0clmmLZ5DXfrOoSs51m294dRV7znSVS6GR/kvVLCXounfwDczI\nH3fmPIvoB2NF/NGkWxqybTxUusJmD/baCRhmhCxUGHwMFvmK6CwSyrL0XSxe\nsuv7MkmNvxVTITrUUun90HL6LR9Fx6AGekHDouO5cOJeTb/QaS6BjeePWOVV\nmyAliyXIltK8p2KiSzU/e9MUvseBzAFN+uZynzhAlwQxJr8e43yLyaUvgW7o\nQMbDiQyGvuYeQJNFco8qAGd83OzSCuV74McM9PIRSFgPOjzjhkQOMXwb4ZOb\n/MWqnWjMLCEIUgZlUCf0oIaFqCIfC7HiE/fenHIsYKK11J8MxuEtnDXAzB9J\nlBcMcXgWD6UYleev1506l7AZ+ic1k3OSOtR8DyvV4Zcc1H3kRnL4Hu+KbquN\nHyqH\r\n=9Dez\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHuX8dv0nsxN6LXg3foH5weatqtR/mMCF82jqKpN6mBMAiEAmqZwtTOJ4zZpzBzu9ONyHBTYseky7WSH9Meh0lx4wyM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.62_1596355590415_0.20481564368706784"},"_hasShrinkwrap":false},"1.16.0-beta.29":{"name":"kafkajs","version":"1.16.0-beta.29","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e3c6d91b7b54594db64e568afc61c0a857bbd54b","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...e3c6d91b7b54594db64e568afc61c0a857bbd54b"},"gitHead":"e3c6d91b7b54594db64e568afc61c0a857bbd54b","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.29","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-g20DUeOtQvDr4vkOv6inVk0GJexRfaFukMKBkDnlvMqWYTF5fEhMkL+cYZABw61xtZcLC+IRGqSN+e2WU+W5qw==","shasum":"53fa605dd0e7ee6c7b41b5d50b8a25166e0fc2d1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.29.tgz","fileCount":380,"unpackedSize":695991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsPlRCRA9TVsSAnZWagAAWyQP/A11a/mfXFcP+eYJ7dPX\nDNiSRJ69aHyDlKQhqZIN+OfFwum1Z1AFvwf6ZtHR0k9t7ypikHHZFM8atRNI\nUUoBdMkHSaM/BuAAyHEwckgHLpnhZwW5zgT5ZFOT4umf4WkxkotCDk4L7xQg\noEIE+l3cYDzEGOgaZWaolt5s4ClGRQE38HpJsGsZQEWXmXQO8vHq8RV69NKi\nH92MOf84Vta6YZpOmzfzA4xrBQ3ybArG9m6fgrpHbZTgbAgTw6OpDZP3+24v\nYDR1QD/bAwQNx6yQquxU0+Vt/HVYgG4Xtb7yHkxXJDU34UXr3kJ4ymrOHMDK\n1FToATSQJWz6Gyu0GVT/iSQEE5KBIMO0xnaEFkyWQy31jgyhlHMJJukAssKb\nt5BsdXAOds5TKrMrOvrYyJoJiSvuScd3zWLmfkRHGfF5M+bUJ5wtpxW6PV61\nXsvk9f2E9p6US702R85awqnTfv68WzGQFaZWaa/9g3poC5HqgbOveyHybXbK\nwzb9omvPhdozpDw5m7wVkxcMVqpQm2DXrmJQEqt0OVlA1heEpP4KeHmZ/0/7\nBeTml4up8YXhbVOKvho2+A8BsEEAQq9x6MW3n4W7aifKDxgu/TYioQRSNyXi\nvpx+3cTWdL6cqW0EreEy4TtKTJ2KxUwxBiRiWgrDZaHHFdxq72G6xJ0gwt8N\nfzh/\r\n=ezFp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDsL0qIjXlZaH4dmnBWIC9spN2f3pADuVIeig+4sRW55AiBiTvvCbodGmNeXlpGs0rBIbu+jUFGONdHFkKJC7DEGfQ=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.29_1638988113016_0.5369862477381979"},"_hasShrinkwrap":false},"2.1.0-beta.6":{"name":"kafkajs","version":"2.1.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b1365b890abf97fbc7dec3d85facd384303f75a6","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...b1365b890abf97fbc7dec3d85facd384303f75a6"},"gitHead":"b1365b890abf97fbc7dec3d85facd384303f75a6","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.6","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-Lc88ab9fGVVjZKx0xEccx1IKghMPvEA9W8WKO4Rgkog1DTFopx9IuDtGB/HAI0+wPeRqJ1F3b4B/j7ellVDL6Q==","shasum":"00668659d5975dc626f88512dd2dd4e99417857d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.6.tgz","fileCount":385,"unpackedSize":711085,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDGwkd2n6/Dea/2BLYLB8wKTOwSQhCrt1fwJvG0KIIshAiEAklitMpAimXom+mvXYTdfpi5lnsqjxS6cXs1dMy+9RFY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiubfwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpbYQ/+M7K4v8541wwbARvqZgl54rRi88LhoseF15GeivwlMktCAmrV\r\nI3Q+rW0j0U9STF5q4Amg+ocJRfJO8bYW3AaTJ0SxZVStykx3PwO4RIY60F8A\r\n/Tt35pXdvbdwR7m6a44aOzwBU1f0oypJ52DBpl+oSEmKtQ+P9aGe6khwWdEN\r\nsNw8Y5KvtGR1iJVHdznR4Tev1kgasvHPPIAen1/Vkw9rWv4ovXc5t1zlpQNP\r\njhGovWsal1SpGeLjpSCnuHr6cfXEWMoob2fquMf5iMzATfv9DfiuvGCPwwCV\r\n9SXILB15DlSITHzWalWBFOr6PqaT505vgiIt/WPiZVpp2chBj8v+c/8xmWMN\r\nwXtUubL/1iEXu80nvmyj7zFTxpVxgkyE+866aGn0dSnMk78UFhhiTenw86Ol\r\nTn+Igx0MCr5i8mAnRIJZMa1c3kIqynkuS1gWhLvdtF/9xv7w8rdRDFvpy9kU\r\nWq4gSTJTmAcVsNIpLL6+pBCkVMTYzvBok6zkkl+IASTCZQLfxcQ3B2BlUQ2f\r\nBgNfclZHTQoy1NW0rpJMUrIXQ4swiutqvTU81gkBkP/HFbhoDhq3PFVnbnY5\r\nYPSMPicHDBHsW+8eosvxMzuK4Ln7nRttfG7x0nxDZQlsqb7rHCqJ424+GRlh\r\nH8XC2d7a3H0ewcfI8t0WcJHd0JQw2LshAOA=\r\n=HuuO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.6_1656338416595_0.07327318816986272"},"_hasShrinkwrap":false},"1.13.0-beta.63":{"name":"kafkajs","version":"1.13.0-beta.63","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"828b6fbf4d55f3708f58286ce8c03be0e8fdf333","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...828b6fbf4d55f3708f58286ce8c03be0e8fdf333"},"gitHead":"828b6fbf4d55f3708f58286ce8c03be0e8fdf333","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.63","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-w553bmSCDZJWOtFbhnykmsgAP4iUo9ZEL14xlynAHBRYXYFLYBsQiLtbnyAUKBRO1RsBzhppZZRQZu5mKOyAHw==","shasum":"413058e613862d574a9b2953e02ddb4c20031b13","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.63.tgz","fileCount":299,"unpackedSize":539013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNoK4CRA9TVsSAnZWagAAV0sQAKDiDPeJKhibcu0xYOaa\ncJs7fwlr7/6s+/mPo8JzwawU178VydgNIY82fct1vOBf6stJ1WNuoaWNPmg8\neyv+9Uv1OMZ8MDuhU67V4c4ce5ohquGcAaRqBFir3kqyiTGRV0EdnXa3ozZi\nkXhGYn6k5C6OGQ3oHx26Rr2Qq+INY2bhX4Qqzx71fN2ykfgKgqrMWabadFxk\n7J73Ktaz7GoK04PFZHVqQ8lMpqWGDM1dGKlKDAlI/wglL2vyRoztWm1GGcpb\nkoejjZEtfyCewzGemMJ30Z84NsqwwvEuFhTBpS05jH0m9/TJSu3j7Ie3oHAd\nPpSThygIyHpCJL8Cf76K1bLuvDoW58VEw5yDaWWKpvaT0HIzzRkjkk6mLpJN\nfvumoJIeQsomZT1U0WERWF8e71tyrJoGmDnsZVf0Hh3n1Ns6mNgv4cbxBwCu\nRwt0VtyamRYUAuEc8K25tGLBUPIP3gh34Fr3wU6h4zbnHWcpjaYvlp0B2tji\n20No2SB+qO4Q/cMdkZh25bt12AOfrhRMxHnFfzEsVOxHx2IBEFitx06FGrpX\n2U+k6BlquccsMvtPJ1B7C8GTxcH7H1JWbi+Knxsl+xVo8K2UcAAgCiKQWDFw\n+RQSSGNDehmNX2m9nhkB1uUsFsd3BHyi+aYRB1Ta6psKOmWfJ8UkqeLNxrEs\nmdbo\r\n=1Y8l\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5D4yxn9qTrHTT310EXQFR+oeL+3JRSUp8L9pHdnMW5wIhAOTyn9wO37M9rrTse6yG5TdHxrVBbBxeOwtAiJxZOgdE"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.63_1597407928044_0.7827959850579767"},"_hasShrinkwrap":false},"2.1.0-beta.7":{"name":"kafkajs","version":"2.1.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ddf4f64923245ce2cf5716d5babd7e05eb890030","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...ddf4f64923245ce2cf5716d5babd7e05eb890030"},"gitHead":"ddf4f64923245ce2cf5716d5babd7e05eb890030","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.7","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-0/3EwA+2TskI9f+U9yEMgEUc3AzfAFOZzTci05eAtSNTR64YooqpQN+3piNA9v/SLt6QhjYdGX1kZsm/Osc8vw==","shasum":"4ca36e009c66589ec1dc552549fae582dfd9f2b6","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.7.tgz","fileCount":385,"unpackedSize":712077,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXUEW56068vn1bLYL9Q0C1p8jbmP1W7xEM0+Rt+6GBUQIhAIKzlhgO5aNA8p4Z1UMpiBTpV3JfzD5UMWSzSkJ8ZUIk"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiubrrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr/2BAAnRIGd8CH67jkcwmMClXrlx4CPA2Wt5ArL0KH8StV/prEiLWv\r\nmM+qY8JXmORxwEG4LQgRdEIZQakG1IU0HNzJfyCJ2jcKarRBwyai+EuXMLC3\r\nKauVLz5Tj3eMTTAlgPhqBg4GAnhbqc5j/Ncsfl/1GWGB/xQ7vtzmwh3EAmIg\r\ngOAV67jyho7vnbJ+orBLocmZDyeZmwLxFkO63r1lgy8Xr2FuKre03LMghy6o\r\nryUgS9yaBYZQvv0czNbaDHCbHwTXP38YBua+e2AFNRQPqk8VJ1KCpSps6y5V\r\nyVcWgkEHSjNyTnj2AY3Th/qCFJcIMrcyV4dUUrZweIy5F4QcHQH4KK07edEp\r\nu1NCB0SUjVdZeKBAjg9B1LlB7zH3iYaMF3YKpNpcjix+IjHPrFM31peNQ5hZ\r\nJCxUrs6Xt8BwqCC368nf840BiKbG4o5HScpLYYxELdjfonZLbsTVN0CyNpc2\r\n6WixrVHVJsaZIFWbP/RSSXsUBz4Qd7IMYSLOYbN9E4PgjHUBPP/bEwiZZDOn\r\nsyWKvkk/gkmq7uBbtyTRZAUqdZ3mv8yCMEdvqIQvR8/4G+u/5gBCUnY5J9kb\r\ndbhWG2eJHKbfGtXfkNU5feiBbRah4CnsOmQ0BGfajV5fsD/K4RNi6uuWsRAc\r\nv7odtKk9grXNTc8X/0byCnT2cuPLFuqkM3s=\r\n=KDNE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.7_1656339179139_0.503586556089429"},"_hasShrinkwrap":false},"1.13.0-beta.60":{"name":"kafkajs","version":"1.13.0-beta.60","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"5f8959a5e143592db5eaaec16a624839710a3428","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...5f8959a5e143592db5eaaec16a624839710a3428"},"gitHead":"5f8959a5e143592db5eaaec16a624839710a3428","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.60","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-leXkqXQgMgZlFoyXIA5RMLbMJ8s/+18Dxm0Gm0WGV+SCR55u0V1OtJud0TgVGnIIn+sXTULwE9Un2naiZAEelQ==","shasum":"eaab7dbe34d92d441b2ccad18fc437132dc78fd9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.60.tgz","fileCount":299,"unpackedSize":537660,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfJSUSCRA9TVsSAnZWagAArKcP/AsCsmT7yom2+ZNk8olW\nJIAOgjmUYbjCNND+YhIeNG0TuOagYT0jGgtdFBjRFjg+INpfNV26y41XxDRz\n437AQl/0a6wlS0uIB20mAdj7bqhfGMt8e6GZdOMKL1S57FSOoTVXoOljUXVA\nK7n2PYtR3XxSBb4kSm7LCMD3YJYv4GXmy/675J7I9E07Nv3H90qrcav/fQNV\nIS+ce0YVaSISVulS7Ebgf7cQ5heO8eV/6i191OiHiQP5teb+KdqIvuXakiuB\nk1ThWQ/EdLAJJfXTNKw6I/K4V0sLV/hJDEd3z6g+pONpe0wFAIZXgUNaOC81\nR2DqgkggIB+xD37KNzhXuCWvx+prECLOgtGtkU8IL6Dqt2gDGUmTPnUwT6OK\nOLmJHvX+EyomA8uaQ3vN6pw+bGK7onBleJ0I/AehqpuP6POITZj4KhqRy8HD\n3qE64tQ3HUHbV8gqyXlTgofI3XTtw7DMX+O704gBdyCKC6Q8eHDHSgGt2jMQ\nY6G5nXyNDr+wEuFOhyP1utvA24rt8QW8lKTn5WKtYVCFTjLTiVJhfwO6D9Nr\nyY9gL0BWGJbL/w2IOK4y/Pl0xI9XA0wB8YzHzhhn3E7CHtGwJAeh8Hqg/pwC\ncN+U1WSZ4krMHhwv7oNR+Q55jW1Tzoe2d3Ll9zRqyODT5eGgrliY/64XUFQR\nAhVS\r\n=M8Dw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDHMg5qTHrjnDPLJuDVo78/j3a00L83s/0ZEsVdTP2sbAiEA+/2XyQTpFRJWzRBskuk0pVSBMqbaQJpQMMc3XsRJSiY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.60_1596269841459_0.6108282348342811"},"_hasShrinkwrap":false},"2.1.0-beta.4":{"name":"kafkajs","version":"2.1.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"4fb59782dc1f127a5ee7b9b26e24381b5c0357e5","compare":"https://github.com/tulios/kafkajs/compare/v2.0.1...4fb59782dc1f127a5ee7b9b26e24381b5c0357e5"},"gitHead":"4fb59782dc1f127a5ee7b9b26e24381b5c0357e5","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.4","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-CMCYkK+3q8Ai9+hhW8YVgjNiDxy7AZUdbS+eujAqJb0Hf1fLg5DA7qZQXXwq1aSWkoGi1JZl3MPN9TQSituo+Q==","shasum":"f05820d05f16386b52079ce3a3ac58044bb7ac4c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.4.tgz","fileCount":385,"unpackedSize":710849,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCu+IqwHr6KiBNIweQ3ASYsfcp2PgYCpp4UA6d5xn7AawIgFkem4ZMmex94BqFeKA0W2uGw7ORvf23rt2wkLhys/uU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJildJrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp7VQ//XR6Jf5zA+jD2TL3+OrG+NIUKATS9WuJfUZ7Uzj/USZaFslXk\r\niy0wiEhiD2h0iIKCTT5bhM3A4BXIEc2AsH09U632x1M5Kqo20SIFYZWdQC/e\r\njNHFdVmAXsiw02/R5kbmd9EQyNYkvHufJVEzfMbuZAD5lEpkfKjNFUq0zK1R\r\nAmdpY0UuIzTpmYdv9Y5Ucr3dyanicgwu0yJVgWBC+Sk/sdQUd4WuJK7Ws/BO\r\n/UiqyFz5M5e7fuc9SttqoW6G9i+sALkIW5riCIClrqtNSIhVu6B966xNXgsR\r\nXue1EfPHP146/2NshXdInEE/2YLfaENMeSNxQZBlgDL+eLLZvegMSDgHYvqi\r\nA2Qum78b3Sf5Tv54NAsynJ28r9hape+5hqh/sDDJszsnkRC3Y/S2OGTONjhU\r\n1O25JoVc4Oj3hPbiSiPLc/Gu6PENM2XpVLTpHwxKhXLRM3G1857Zt7gTYMLY\r\nvLVw8wODn+DPAslREqoyxT6mOxI/iSRVxA0aCollnTQ9wJDJRz/Cx3HffsA1\r\n4WLhnxikpPr0/PbPd+7MEVLwK+tutpN25GFkC4UEoHNL5MyQpLCr9d2/5k5i\r\n9Skanx37/cX5pnWHNq/J7t88Y1LU0WePKJe12RYuKyrq0VfPsmhSB6BNdk/c\r\nfB6WS/3ed5cmr/KSrXmtfE/+Ce3z5lNzO3M=\r\n=olei\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.4_1653985898751_0.30496051378191535"},"_hasShrinkwrap":false},"1.13.0-beta.61":{"name":"kafkajs","version":"1.13.0-beta.61","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"23dc05b81685e862eb191b364f62c954b72fc9b2","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...23dc05b81685e862eb191b364f62c954b72fc9b2"},"gitHead":"23dc05b81685e862eb191b364f62c954b72fc9b2","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.61","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-H0UJa5Pg/WVJ5rInDaP8ejOGHQaPRigKxgWaGYNKHatihv0hMSK30Qxv53bc9PGhltNSnzMt+uxuMOLSTBVfeQ==","shasum":"16bbe344a54d9dd8575e2e906d746d32876abd28","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.61.tgz","fileCount":299,"unpackedSize":538842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfJTP6CRA9TVsSAnZWagAA02IQAImIySFLTCgwcKF3XnCT\nrXz6huu3/wPbtZxwT0uxGaSj1Q2X0cZrpnxEEts+D1BR+BrL+BlFhzGJK/gq\nsClFrDaeI2kjxufz7AkgROgpDWsvjzI1Er/TKxrD92BdYELNXomvd6VQM1DQ\nl4Ipo+tX7+s3X6LOhveoRqV4dzvyh0yMPGrInRUrr22QHZRtN2RiNcOGbF5i\nQoOFPLfjle9/z5xlpDFN/vJsbzcYLaQhTl2V8NZI6AxU76az7mOKw9x+yUyp\nG4e3ks+UWAPtd6JitpbEbM38lE6l7muEwKrT1ZMmNT/AhfsvJmg+tos8Ws+G\noXYZKajG2xyiLg5a5HLFtAcuOgxZE7XMP0n+aBvOaMsIjJdrHYdFWBz0KyG+\nAOfebqiyYrPq9aypwq3GQrtVoFHkzbOtzpwHI5GtaYDM3DPKhfEu5CxgeswD\njBoBAFpjyX8yqj53pOIvbs4+J94X+y4oSpYQ1sYpqz+BxRWXbvs7RQE0HnrT\nChqEaqfwutH7VuXWdEnvrAsAR9eZkNnv7xZ8RT7puN2fd/QgwRecW2shvieI\nq5WuTtq6QAj5sFFogDkENx5QNj64AsCNaW6S9E9sDpyt5mtWnPObTrugFsLi\nVxFCdDP8QwR5RJUHedWG2T5cQMte9UXqcPD69gCwaa3MTnwMaTcIx1LWeqaC\nppPe\r\n=PP1w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB/zqnU1PDGw4qfZid9wdO6e7QJs/5nIHFnWEo1tv/VEAiEAmDZWrDHReQcrud5nvgvTWdSkhNpdpVsH5MCBCeM5HOw="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.61_1596273657659_0.4133580623911459"},"_hasShrinkwrap":false},"2.1.0-beta.5":{"name":"kafkajs","version":"2.1.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"67ffe26a21e2c1801b2494399f3a7ce95951d911","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...67ffe26a21e2c1801b2494399f3a7ce95951d911"},"gitHead":"67ffe26a21e2c1801b2494399f3a7ce95951d911","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.5","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-i1/uCxtUDExut/m4Y/eX+CZkVh9YE89ps7WC+jw+7mv3x11I+qDdvADTY6sOq4EiNvmAAIuORu18ApmmdTZf6A==","shasum":"313b130e75782ba6847b7c640c6a34e6842e135a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.5.tgz","fileCount":385,"unpackedSize":710994,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOvmGj0UGyfQPVa/bhi/M+XgCOxOAhCAtdWwVQjIS5mQIhAIo9bNI4/irdoI0TzbKfKTfqyEEzmDdnAC8SKeh4qERT"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiuY8BACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3oA/9E5ztInlhGIDphKAjITVrJli8o9+dxyYh5SNPeVz9h0YJZd7C\r\np6BgzgY6eCWExIjUyKX5y4YC70Amvq9vriP/xcsQP0niHH34+llGtpq1K8Jb\r\n2O4wMoKahZPlauBXf4XgkqrFOvgyIgyvacOitskd03GNLY1omN6DwSnhxRLe\r\nVpz0TcP4Ys7BoT1YVTgfvQ/Bmr6OyY+Agr+NRiNm+DEvgJTgQJN5JqNpSjCv\r\nBPMO7ACHvLQzpA7YBntBUHh6R3HV2J2IRlVQo/O7i8nEqLA74Re66AT879kw\r\nPpcXFYBK4xvkc45SPW2TR88daJ66r+JqaAz3M8h+B3hCFVYoekSqNdFOIe+d\r\nDUsZ9II9RLk0X14gRpotTdnLF2fguIf1CUZ0pXpigMZvWGGGb5Rg3YYDqPGT\r\nGjI8xiiOVDa8zbZaxaFT9XwIehGMrrf+Nr5apbU1spgCFi8E4AvMzmRIhMTK\r\nIoAVCL4x3LoUsuMS1NIaHrVDoMgNLPLZmHbcRMWT7B5TZRRVa4NJsya9yhj1\r\nilzVOOx6UIq78La8ImM/SNQGKRKdaSpIFx1YwE9A78xqKH/4d3Vd0Ucbfh6C\r\n6BqypzRvUqepk0KpFykliEESQ7sdMYU828Rt8doqqEJmukr6oC+fWbLq54wR\r\nni5eLgYjUYS29IOoRPmwlniCC9OcMR+YIA4=\r\n=qp4I\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.5_1656327937393_0.2616986666630676"},"_hasShrinkwrap":false},"1.16.0-beta.25":{"name":"kafkajs","version":"1.16.0-beta.25","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"191962ad31549bb02c805550f2e3544327159e43","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...191962ad31549bb02c805550f2e3544327159e43"},"gitHead":"191962ad31549bb02c805550f2e3544327159e43","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.25","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-iyNGmlBotFTkJxcDAZMVsR+RhFgTD1uD/5JKVCsNCi5IjDfR8fCyoGamzwkUwHaPKq+jhIKoZXycYJz+cHUGbA==","shasum":"ce0fc1469a76c095dc39b25f88af91ef05f1d450","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.25.tgz","fileCount":380,"unpackedSize":691287,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm5JuCRA9TVsSAnZWagAAtFYQAIuAp2tYEsJfzRLAkyhI\nDBwA79ypZZzqvmLavp7xYMGcuhtYPg7eOsh/EyFiQpOfJ6hJK+dvRVKtEiMT\nYEiJl1j5N2rFvKLpVR5OX2Ro/0t2ZNHZJBv85Xp1DdCIWrDcnNyrA31XTHKO\nFZAPmq4zT9m+8kDwWU0m4P+YU6qrA/VPJc6P+PBIDcPv0vsoh6xAExWmtUu5\nzzvXM7ZfVqbJ6VH7BpVXTyohEfG/+h5894KNaRJlhZgzNbjztIzQ720qA1ki\n3mhLIpoW2YyCzQlftl0GiL+erKGqibq0DF7gkm0qwT8lqUGcZO2Po6UJfi4O\ndQPcUAa8scfd/1ePhXyMf5SRjiz/ztWJkzABd2iiEMr0i3+KB0ypZvqQesjV\n5HQaNp+ZYw0AcSeWotpc42iRXzETo1RfsxFvUk8hgCP30gyLcbu8h6eA5cQg\nmj6bzta5t3L3FZ7qScYiQKXa3Xs2/dw+71CWAWrNTenXprEdUH+X046GDNaB\nbH0HvhJAd2uonRBAsgXnYtiVxsmhuxgaTvkYQpd0lNkdR3m7orH1U2Q2ulQ0\nPkgd0v2oc37BtV2LoF3+EL5QKKcVAQVXC14APxxqAZNTaViSiQgx+W4IcCgJ\nFSUeBpD2T1ld1PIGVMEbQaQQujNNLPR9OhcyIdtitMqCAlPKDNpYI7NycFUd\n5zHR\r\n=hiNP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHQ9QPpGdivWXPC/cKXQFBLmavTgdtnEe8PbKR9faZgTAiATBMoUd8kT89UJxrQmfGb/XcaWv68usZ8a2z0bt9/gQw=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.25_1637585517980_0.6031573464416677"},"_hasShrinkwrap":false},"2.1.0-beta.2":{"name":"kafkajs","version":"2.1.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"068067e36d9f9aa3b7139518a9ebe2814d4b0fa7","compare":"https://github.com/tulios/kafkajs/compare/v2.0.0...068067e36d9f9aa3b7139518a9ebe2814d4b0fa7"},"gitHead":"068067e36d9f9aa3b7139518a9ebe2814d4b0fa7","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.2","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-XIz9cTu4Yo1evlQ4iZJxQeus/KkixhXwXXBKbkVgfL7Ew/vHq7FIfwraVgnnSJCvY6R7TZloMlKRZC9x1eXCIg==","shasum":"2c792756c859c730608e386fad566f9bf076187b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.2.tgz","fileCount":385,"unpackedSize":710543,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHBip/3wJza8hHg5wIcB8jUzysC+O4+jDmvDQ3pcs7fgIgLGH0yg/MXrEtjV5nUKJ57yFTNQsHDyVqKGB7bhPADwo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJig234ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpqfw//SL51x8yMZSOufKyeOKPXgTkynei6rkx6xaD25LFqUp3GD2cw\r\nNN7kMd0/XajMrYpnLFcLumrqrJxBhOjhZQQkOBzxaXywl+LmJRfXWFCROUts\r\ni5fh/eRMLIaBqFT24xNMB0/neev0/BSolvzZ7Pvi/gwbuddzSbdQYPnrqsNq\r\nfiIBzXPs7nEquBW3I15z7oMtiltLrAibxC9MrhXQFb3Cx1EliBzMicowZIAk\r\nDkF1elIwGms58840kddKF+GeTEchun48uDe7b0EQAHHIOx0ix4blWMp1qu22\r\ntBhT0iCGzX7DYgvKkLtxFajGMY2gQ/Qa7JuxwX1fEPL1LihQwlZPRtQCzHod\r\nAbndK1N4CqsnQwXYuawOdlLLvZQSHQIkDSY8Qj3QJbDzr8j4jY1PQiopo9mj\r\n3GAK3cEappPWE9f+UvWu1TXnx1pFOPNyNQcui9aBxNzDKsM1UaMyBE5d1DSf\r\nXev3nufEqCHFCOdpcs1XAmvhZ8Hej+xYYArw6wVlLqpGkD/+rWWIUPX8W3S3\r\n1RQnmsP4EOIwGT2yUHh0gUMjC5hZje2fUKwoPEybphFjExKtT2WGIY+WXgqr\r\n/8/BA36nzvJxXFx2Jz9yfvZ2Tge4BAe4m8MEC7dXS+T7CtqatbgNaxCFDWH8\r\nJYheBDMfFX5jd/Jm/LBXpYxyEreD/2y70YQ=\r\n=HN8C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.2_1652780535962_0.03653188214516545"},"_hasShrinkwrap":false},"1.16.0-beta.26":{"name":"kafkajs","version":"1.16.0-beta.26","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"ade193210c8249f5eef416047d980bac33488e98","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...ade193210c8249f5eef416047d980bac33488e98"},"gitHead":"ade193210c8249f5eef416047d980bac33488e98","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.26","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-Er83h697SqvRLQCMl/FOVQuhe11AjXM0nwRHnBYil/XD4cXH+G/ZHcZPB7YaCIb3WO9mntXDF3bA84pogasSwg==","shasum":"8e1838f35bfefab98c59789a2726a944bf13a9fb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.26.tgz","fileCount":380,"unpackedSize":691373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm5YWCRA9TVsSAnZWagAApSsP/jsXz3zsEZdfz17Co5Eo\njXdC5LRdrOogAOMrwY+mLjMM/EN8vDhlKlEr/sJ9KNxRBJl0sIsd4fEOcFBK\nh0kgjN44/Sdn2SJiY0sn1vFwlhOzqKkxqiQ2EY35B32hm5luXVom+xwPMvhe\nw8bZfv6zW/pSpIxw9n+PiVYT6RQiPD7S85VGKy8tgo7S8tF6uLjKD/aFaZJY\ngRU3pRNKzDsbU7ZR70yXEshg76Gn6LogQ6bD4v1jLb7h3XhUzbEInKjVCWUA\n0v0RAp952lz1pmqojfLfF1xKwL9+QIsLdQW4B7VmyDdBX+zMjZrVmbeyq6Aq\nntgaxme5nQuk83XKMKOL5TSRz2spPhwwTtt1N1/iKFFKBVpcMFZVvwwaBOz3\nszeOO4py3rPRHizOUgAUUl7lizaGS0zc5iSWIvrNZW2sP0uXJehcyuSOwmyL\nXeWcV3XYvU9+/o8bM8bOT65vQJW6hXzJ1KkeIZ+44JYRuG4u5R6/H9J9PEsp\nZdBFkgSz8x6W/eDBB/W7RTh+QEj5h6ZCtURvmtRd3o4vdWspMOvsq3KYJJ2Z\nVCNMAi46vJT8/HEMDpTtwHdGMjQltSTWCUGOn1WVFuJ4mBEUsZDVT3Wtjq6z\nNC61Sh2xf2aCaDHU6ais8VbHgR2U55Ffs1NtpNdhU+iPbBVTnOQqQqL/iJGr\nxyv4\r\n=45RO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHrTVu5eF6sgRmvi7mb6gYrLj+9oQiEfrd8SDLvnRX+AiAnMvJNsW7JAMfqeaLYW73PlIk22zDYI8UvwG18GaIv0Q=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.26_1637586454575_0.4786831517195673"},"_hasShrinkwrap":false},"2.1.0-beta.3":{"name":"kafkajs","version":"2.1.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"bf430a15caed4fdc5318d75e729048c87caee46a","compare":"https://github.com/tulios/kafkajs/compare/v2.0.1...bf430a15caed4fdc5318d75e729048c87caee46a"},"gitHead":"bf430a15caed4fdc5318d75e729048c87caee46a","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.3","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-CqaGlnkIvVUMqLdCO/M+tsdPbQWQKcpcUoIoCZ+6CAWaMutCTvJBV62LaJpLMGN2pTylARDXQLWQ5Jy66Zhj0A==","shasum":"a4249db2e7e19e41c14074cf955cffbe4a287f54","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.3.tgz","fileCount":385,"unpackedSize":710816,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHc+GAFkBjX7C4IOWhPEsTkGYutakk21x2PCnvWAp2STAiEAuQtHuA2NqbmORh6ermxzOy7oLqpeeS1VrlY4+LZ5RsM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiizR1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKsQ/+K6Dr98N33Y5A5njKb6EHF0Gx29lvdL4jO7upO3G/baMnHSvh\r\nyp36hV6C2eh4+5bi30zpEh7KimjUgcawHX6LyzXszy/2R3iplrL/umJ/NuPN\r\nlwrwNifr+qOkBuKQ/iI11PCxIyK/kgxB2Xi6A+cnlVEgEZgTRV3RLNQZk0Hr\r\nHDysTpH1BUizH+nB21BVc5fwtZOzICvUCjCdbD/KTNp7toCpEquWch3I2tmw\r\nWIKb7pzK3ylWSrHb2bdSsMLcfU3wxbYXMKaPGZACBIPwdztlfRlu16CtaOCY\r\nNW0lUaRBLjKYqJQyZDxJ9MYs/mVeT4MLSBvOukZtd2LjzxTZ3CpxQo/OgRRm\r\ne1HZ0ZXy3SyfbuQG5Y+QsFNZvftm0zk8U5QYNA3B2RhCD+HFvhlQ9KVmB9TC\r\nHOodek+a1lF6dusQeFcf7j9Hh4gtlcKtxbDB8m5LlTJL0ufLNDf6bm2vevvy\r\neqOKJVMeOQixAcWepqziZSeAaCpSnXx372SyS5MzCyiu2nCrCJNnxH9KBWry\r\nWfmdAmzRxI5wNTxyLU8hi+RXol9UGT+LxVqZHz1uHWYKHlz4F3zJfWVCt5HR\r\nBi2t2PtxmzJlOh+qcuahf312KMcPRngrMknjOn9smeQS5czG9LRj3a2+TCRU\r\nUXfQBIBOIKaNYxv6koe4lpSZVTIIJczfWmA=\r\n=HLSN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.3_1653290100944_0.20008835102614064"},"_hasShrinkwrap":false},"1.16.0-beta.27":{"name":"kafkajs","version":"1.16.0-beta.27","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"229b6f490be8e2e217cef889583b734c5001de8e","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...229b6f490be8e2e217cef889583b734c5001de8e"},"gitHead":"229b6f490be8e2e217cef889583b734c5001de8e","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.27","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-DGkCd8C+zoG1YsDqD/FHENNRJq7MTGK51LjejGxTD1B4i4An24fQGb9cVfW9yj7TWDKgZvsWgdVETG+l8Txb4Q==","shasum":"66e7674eea2693967f9aa22ee956a3dfd26a2e50","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.27.tgz","fileCount":380,"unpackedSize":691373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm6IECRA9TVsSAnZWagAAYdkP/39r3bxrNPOf9Nqu4pUI\nf+CjuZRaGN5h71jH6oFwNb7CcxjxIGYk8b1mWLfrlohnKuQPqMia9lM8Sg53\nWnj6aMNHTStN0TtQMmuAPKh98uJeZhtqfqKbztn9jpN/jOArn4Yet74NNuaZ\nQphjqZ6xvF2QnreMHWpVGXzrnjIYlOJCVljb76pnAJFF47poWj1N7qpupKmy\n9O0epRprt2+pmh73BZjOCVyNVH9vdgU6E0Kz7O2v0NYnGEoK9SkpE4zz5zCE\ntemDsI/R/EuH+N6rAYmS6zQej5aR62Jg/w8H8S9cRVFPH+53mkYDAcUrufsw\nFDoWjWJUiezjMlTHuzQW5f0hWZ7B590dRWWEiLwvtkG2RFQRpFLTlmpVBBVg\neRMhrT5dUtfGLpbhKmQeXHqm8k3Syquab1UDbyWGUYg/EACM1Z6ic4qyNh/e\njy2k1g1R/SpFfqfksPHJwF123bi9SRTHEajBG40I7VzL0GSJg1xvA0IsXVNX\noIct1qqiUeT0YyxaOyquyIxGVi30jSTcL0lBaJEbzJxeGwfY/ADZDnzuemia\nPMDQPE0Xh+7BnCGtVEUCUlseJ1CKMKQyhpCPXoybrOWqozrRqzz/iaaNy2sG\n2/9CljuA7bhBg+nNCBhoJJW2Gfajho7O9a2Ikpc/9NK/v9262kH5rrrjvNOn\nZ22e\r\n=hejm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICwjurx+9sU25X9ZCBu1eE9oqN9eXvH7cSFHPe44mrwbAiEAnfgjhYyI6tHviYv/LHzFNSjo4O/FZ9nsbqQb22AFGdQ="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.27_1637589508490_0.6850521322378795"},"_hasShrinkwrap":false},"2.1.0-beta.0":{"name":"kafkajs","version":"2.1.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fe9bd30bbf79ae975d2c93b62ba9a668e3ba90b8","compare":"https://github.com/tulios/kafkajs/compare/v2.0.0...fe9bd30bbf79ae975d2c93b62ba9a668e3ba90b8"},"gitHead":"fe9bd30bbf79ae975d2c93b62ba9a668e3ba90b8","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-6kpLUjk3sS581mtY9BuwK/ixKH8mnypCtpL/5oe6Xh8zH20xg5S4qbNuAW5NknMFJBp6TcJKobEpBjbMRA+tVw==","shasum":"631ff8b53c51c000591d1c7c11996f28c766a458","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.0.tgz","fileCount":385,"unpackedSize":710463,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDck8u0Q66pc1UQfqfg4KED01BVlFWf1oUwZjWvtH1XoQIgO6vQiw3MSSSSmfNcYDLauQjw8IvlcCVEmXbaph7W8lg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidRRCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq49xAAkIU+uRF0B4mVjFHtOS43Djb68p62jzDVrYy5EZHRdDZU/5M+\r\naSWXUJwzyHlyxjKS5TI1xxNh32izLblC4H2EAo6Fjw9MIeIjaC/slk4x5pMn\r\njqvOpmxDG6kgIBtu2dZUlk8XtZhIEiAjRNLmQmSFSxwhIHBmGIfnaUdxiEM8\r\nkFehMLrNz7xuhHcqNdEdIXRJkYLdhdUi3Dvyih3zog/BxyQl0mBOq27zMrXh\r\nzavlU3UQiOXEqMWa1aKoCkWo7g4QImdO6w5QI9eH63PrQYTrkwvGYJ/9eHHf\r\nGCz1LM09RZEv6c30xW7UmcTvPsk8u5qYrn+j4dIEkOSAigKscqs3mpIK4fZw\r\nvMFNsNuq6CRJjYaOlgvpC5LzXhl12KxLDzp11sdnfeYLeuBshzu3TzEqNXpW\r\nve5ep+VMfPlgeoX+lCKbEaVly3VLzLsh7+xnV2mn1pHs9LJR5ToXL6uDLXn5\r\n4vs6J/fYw5ETdKLa5n98kfClBdTrbeJrGIFvWBeZSuDndx5ZCkysgdjfc5kS\r\nNbR9Jqg01PxlEyw1t9ik6bBCKgoQdZIQYCWgD/k+zr4cEIaglyNMGNk6mzkJ\r\n5qx1U8tVB9rgA1PAdl4uCXdE5/i0g4gTiD7ET9saH5Iwk/pdbgW9aFlOhtFP\r\nDPXEkCXzO+tnM2uV4ieyviopFVyNvX+93IM=\r\n=zJQY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.0_1651840066432_0.11790003986439035"},"_hasShrinkwrap":false},"1.16.0-beta.28":{"name":"kafkajs","version":"1.16.0-beta.28","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f2023fde6d517f7985b5465aebf238ff20620a1c","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...f2023fde6d517f7985b5465aebf238ff20620a1c"},"gitHead":"f2023fde6d517f7985b5465aebf238ff20620a1c","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.28","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-oR0xCtiRiJZ2KrNoYJQrWjNcJZp2Mo3Sa/BMjHfsKJRceLWb2Vk15WkKb9SJhezhxekzygtEXk2yEQ51y7LxKQ==","shasum":"e637629eaa2f6daa902da6f9eb49da4457b595a2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.28.tgz","fileCount":380,"unpackedSize":695220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoSY8CRA9TVsSAnZWagAAZhcQAJ7C+iMtHVNo8uJXh0Jv\nrbECvz3R0+8RfetNVCqemaj0otiVYC1Wf2mUBl3E9Vi2tbJlgrF69BNGvVmD\neCiNkI4uzc2oPPN4yn5wzjD8mjBA9xRlVeKOAwrqOOHFwoR87xTcltvpo+v+\nmT0oogdHq/f1VsHALPW8unalmeKAl/qynIgjq+NnfSZv234Y36hUrzOwk4Rz\ncEpB/5rLcj0rG7d0fki4+RDBy/qxBF+gp3vLBVPMhxl3At3AhagCXx9Scy6x\naJu5siPwlFQgrSNnaH5+bjLkDKB+V2JrCz+7sjLye3SPJdbFFOC720YhdBKU\nlZVqdEIi1sdLXmN2YvfMIW/wvIQI2+5Ixq0JddLlxPnEwmuhCG4lnlq1lB9/\nHNSLHTMKXZc3wEZWKav4p0MOBc3weKL4g+vD+PBocsIDM2riJWaEoWVZtsxi\ncB4QbcamUfCHYFUxlYfE+1/aN/rwO1NlijkTUx9q6S8KUn8ujtqiaupItOai\n4xquTbDu4Fre00Pqw3Eu5kJXVBJMc4EJcbQj+kPceZHyRZQYiL28jatFRArU\ndNRVCsOYXa4lSZHanM03kTZ4XAPEoxe7wKqmN2VXmNoLrF1JmOxzpao0CFBP\nGvbqLezPxFpeilX2xFPPWGrQFmJFveuM08ymFjFh2AlJ1dCajgRlvS7CWnz5\nvqFO\r\n=B10C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVzcHTh8A9pPeDA7qy1aRqcEQhOh23UBy7R2CSYGM+/gIgIFjj85fPR1LgGyBMrSqBNl8fYLqDJt07XH/hSjI++Jo="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.28_1637951036611_0.7816939384096531"},"_hasShrinkwrap":false},"2.1.0-beta.1":{"name":"kafkajs","version":"2.1.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"597da9000d34014408bd0010e6d058c56b462532","compare":"https://github.com/tulios/kafkajs/compare/v2.0.0...597da9000d34014408bd0010e6d058c56b462532"},"gitHead":"597da9000d34014408bd0010e6d058c56b462532","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.1","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-C/SPJSIB2c9EukxQ+IAFHlXt6y2eYJxqaW2tK+6xXgbPqXQ09rclV4AMIOmo4P5CiCJ0iD6TvKjv3YJ9lxseXA==","shasum":"d651761ae2f0e69b5187494ba9b6ab13fb54d498","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.1.tgz","fileCount":385,"unpackedSize":710462,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvGg0uK8rmZp2F8OPeyRaBddUltSAI3V6RA7d381ZQWAiBLdM+UOfAFtTGChbyP3YbpKGE21urtPxBJ8pc/MXYzNg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJie6F+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptVw//X3hH5/nQ1vTs8h1rNUII9u8DtX4zec8UB6Wr90sjtIu70mzC\r\nbIyRzRx9IY7nxMhASC3kLZ+8mhALXqTh9BuTBRbzOLH/IHTyP7q8SuVMvZsU\r\nE1gIv2OKTGlBxcXNgjT1OkcXRH4BbCh4prD1HU+ckXDDByWFs995OMAKRC2J\r\nTQ7OKL9HVwfJWaYc43oxqQwU0a8VMF3qVGODLDhHudxM7O3y3rKksLqAlN1Z\r\nxbrrA+Qygqk8dSpkdIMcINcS7Qjxb7AjNCA0PJUGY6AeNmcBmtZJFcVEOChe\r\n5gmUOcqqbaMhtd7evVL7st4jR4OBwPW35XWzmDQ4TmzxvRTIRk6E802ARQZ2\r\nplczjbPryQipgvLrYGUQWzwDYrpaRt9nkUaBQAgdFwHQo3ZR4MfAUiDnIZO3\r\nkXrh6oPSsp6P3w7Ep8x/FV7PQ+PwWu0n+GhDWN4HCA8Ze8XwuJ50wjuJiFgb\r\nPtgN55QxE+dEB29zTJjBR1vBJOERDUSYl3npPjEZPck9VkZM8ekimlVX52uO\r\nMR3WB0CzSSMBYKaQdPz6ylBUg/ClM4nf2UrKBo82xbJ70AryI+ypS7iWNgGT\r\n/S4U/ccN6OiZx1v/gPPbYH3T4x1ZYW4m077tIetEUn+w5T1yuHrPzJH66Q7u\r\n+NT/8PlhtNIYGxKIsu2zuxJ88COn0FXIk58=\r\n=8rYK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.1_1652269437714_0.7157433057117346"},"_hasShrinkwrap":false},"1.13.0-beta.59":{"name":"kafkajs","version":"1.13.0-beta.59","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"de776226f1d7c14b506105c0e9efae257485c984","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...de776226f1d7c14b506105c0e9efae257485c984"},"gitHead":"de776226f1d7c14b506105c0e9efae257485c984","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.59","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-J15VXeECsbRuIvfKOYKtPEyQn3EmhqLCOO9jO2JH2etCa8lRFSPght72FfJemMX+itPkYXsTRbQS8v2GpVHpeA==","shasum":"d679b9aaab59016b7f4b90dc69be8683d0ffd974","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.59.tgz","fileCount":295,"unpackedSize":533139,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHrlLCRA9TVsSAnZWagAAxacP/3hj+o5zMUxN4iCEysfu\nAilJtRPcq98HBEk+4ISu/eik8YhnSSdOm6OTmOYYxgyWW4EKuaPeWWvaqgDt\niT5OrCXXEtTUIJYuLNP06ZwO53c1HFPWXXc4Ki+ch0/D32xlaaA2GR7G1FBN\n3ZoUQEmiZI7ZXEUhymtD1agYRO7JOCb2LgNb6YZ6hb06UpZVStKbYJeiTxFf\njHFbh8qpWIs+FAMr2NGovby0heTXaXLRkplwCZ+lP41UE6R0h+M699labY5t\nTkA8aVmstoM1X+cVx/PcEz5Ud5Pd6LECWKvx+CEh7qisWXrjgHFFugh0vFRA\nRtmuJLhE9zXmklelBDu3RRSXcFLriEeymKeRHZEJRS/n1JjRBbWzBdgm/MYj\nqIKtv43AUIOHGKESP7ZJUymU92VfggHnN3tNw/KmKheSqit270752GMKfid4\n8MKtuLjsoOyycYDx8I3UFtoVlRm9cckefSaHGzjsC1e8/3GJV5T5o1KpjX3Z\n6qCAB//fdHdCgHjHEcI2iHiY6FXYI2M1my2CCAscwI3rBOypOfp2U1OdiIxj\nQz0LJuuPR6Gq4IOVfZI8hrYIkCufuJN7Zc9lHQXxcvf9fvglfqMaLnx5p9NI\nrvu/g7f3GEcgpht0nB9nARl0Q5hZXZuGHB0ocWmidddNlPhk0IWTg/En7btb\nqopX\r\n=Lsr2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6PpE19oFpEHNNGFqZO8Kp3NNzcLW17IjFwNrEnaESIQIgDmXDiFQLtTk0/ALFSgaGo6A6LEZNXLm+p4XgNj48enM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.59_1595849035272_0.4463589296054151"},"_hasShrinkwrap":false},"1.13.0-beta.57":{"name":"kafkajs","version":"1.13.0-beta.57","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e1581e552323e41307b68584a52fc08be5e7a6db","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...e1581e552323e41307b68584a52fc08be5e7a6db"},"gitHead":"e1581e552323e41307b68584a52fc08be5e7a6db","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.57","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-HZ2FMV7mdexQ0z5BLhiC97n9OWVZEjAT03Bcbj7H7Nfjpjdb2T6CeZO718Ed2mQQoWMrIt7ZBk/h7krZJMrT0g==","shasum":"8f4aac6099d9d629bc4b09212abf7e79ca61f60f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.57.tgz","fileCount":293,"unpackedSize":528505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFtxCCRA9TVsSAnZWagAAct0P/R5ewm6T5b2yy9Vx4opR\nYYs+qrYdor/PDnxPsrT4ej3TE2PMrowh4P3g4NG7fCgSK1w3XFfHawhknAYz\ndSwBtDUMExagHze1sas4f952iNbBPswy0q3jsWTcLqywp7xKXb7vB3pQ/W24\nQslbyGYUYPqjPkYBRhqWwRf2kiQbJ897nzOS5EuBKQmhP8ZfpGvXX3kM4sfV\nTcD3V0vyNqEBlM4iFOVth3DGMpPApFnmJfL/jQPL2FTM5fuAtZNes2qyxpIb\n3gw09dXBAhZVDugmQN2KvT/mMFhd9DTJoPWe6YV3t8A50bpxWh6ABwQr0LLs\np2RvWcwo7TIyJECZw0zEog3IpGU8oGfunfVmazsB7Gu5hFBOBe6mXH+weAJX\nKk5BAleh+R5YtoD2kcdhiolLTRB3uoUcAnUhmLxExlhz3N3rId/pV2KoNWlz\n0HS9ksn9SZJ7r7PItBm/zZ67QUT16XjByVYkZHEEzzTc9d5eqPqecv8picoA\nQLsaBBoyZPSAu0eXZeaOny7kklm4C1ajxTGg1gQc7qh9VNOnAiniHw5PHaDS\n2EF3PhvlKuVb7UaRSSnMsQxA7OEZkBTXW0hc4qa7EPPSjUemAHIiBt4DeXrp\nEdBSXTBQilQZj69DIiuiYju2NoUsKlZGBBRkCgukb07M11gN1Yo0aYR3BOzk\nN9GY\r\n=pHsw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDRm2TTPfteRq1yrfM41vsyWtZnx62SEv1HJDnIa/pJyAiEA4+kIV4Is80v4YWLYyM098r0nQPd0h0htJKphHDifSHY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.57_1595333698095_0.5074945883349711"},"_hasShrinkwrap":false},"1.13.0-beta.58":{"name":"kafkajs","version":"1.13.0-beta.58","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1f442e9844e70ae83feb4fa35091e64de7ce8ed5","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...1f442e9844e70ae83feb4fa35091e64de7ce8ed5"},"gitHead":"1f442e9844e70ae83feb4fa35091e64de7ce8ed5","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.58","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-dN2RERgTeX+8JeZHAIj43w76892cAlFr0Y/1+ZbhebpH5UwX108G8iNi6oExxePMx86OPmyK77nHguEaw37evw==","shasum":"3282cbf8f419f78a66f79c2a06d39877eb6c1f98","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.58.tgz","fileCount":295,"unpackedSize":533131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGvkhCRA9TVsSAnZWagAA2MQP/jXnirzG3SFqp+DtMv2g\nn7jtrNRBR8UKmLa0PxK/F0Q6qrKp7mrFhv4k3DkKDlnU3sSl2LRpLkvpdoeg\n3Kza51GSA2qUKYoGHzvgg/M+DGHXi/4DoXJwAYtqZE+wWaW0oFuviWrPrxb2\n777spYCQkZRYHBjAMj3cqq4HHy4h2ZLg4gcwnst06gYYJcUthALbfRBAv8V5\nCsyLv2kkEEWU3fg2g2/ROeTTiQEqYPyPxMqYGO9etPSnVNVMbkRchi3Qij9n\nGOsGTJY1xL0HFrp060JAWx8VGSLa0X+gDTqMVAG+YTu8/XSG0RqBfeS7Q0mm\nMkqDkccEWtbEWf39cwL0gVNdXTjY8fWGESxnQwvqFYG1LV90mK2NgYIA6VH1\n+kPY4E4saRcaVpHFJRnTI6AXaVgy3HwNd6UXCuyr38JjGA55FCeWzZikty7o\n4F/PwBo3oIkhDJ2NqQe71x/zCHl06xgQMeRTEQS/B58mQBPz9+vstW/psXxr\nAAEABMxF6RR3ixAZpFHumXp337B5wMMjPKUYyIu5qKQ69MoxIVs5qeKrkqEv\nx2WbDXppEqux6ah7t/sFlrdVFZkPvKZA0h2I3N7xcs3HwUuN4d3CRxJediKc\nsARnxk6GwMUE38zK46iqjQCi5muWsC+mILtl9fofa4Leqqe9vFpAUMg0Yphe\nhXVM\r\n=ZOeH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDSwz4f57CXj3KLUc4nTdp9fDQiJ2I4+zKXlnPb8KDZ7AiEAktg7tzwok2sMo/v9p/PyTIiogrSlb1/xQKKTf0yszDU="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.58_1595603232085_0.9445374600086758"},"_hasShrinkwrap":false},"1.13.0-beta.55":{"name":"kafkajs","version":"1.13.0-beta.55","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1c82a31460770600c3174c8774274c2a0718b7e2","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...1c82a31460770600c3174c8774274c2a0718b7e2"},"gitHead":"1c82a31460770600c3174c8774274c2a0718b7e2","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.55","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-w48lhS1f+UFJIA5/YsuI6bYCgYe8/6M1dPxMphogPNIdV4UiYPInfPxKdg3F+AWlb+aMk7waVu+QkdUHtTGNlw==","shasum":"a6d52cf4481957e39caaef57653d1ef25ff30411","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.55.tgz","fileCount":293,"unpackedSize":529299,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFcTKCRA9TVsSAnZWagAAKJMP/jO1sDmIOdCxH7ibyfWB\n7nT05U/dw5A5SBIU1bbAyMP/ma75WkoRREwZefPrunUZbJK73H0iZJ3/9FzH\nueOQm6LqjO9CjOAUNRK27vRFVWyRLhvOQY3wLpJi1+ld5QvuEQxayiILb98p\nf42K82KWc27go0xP7bg2ea3xZc3ri3DJKt7LUk6kYEX7nIgqvRn3orsLFDeU\nDI5KKyCMIUoN0/PZ+zsrNO9DtE3OV6CVayJrO8Oi0NPsbYZosUE5Jwj65CCI\n6a+9I1ak43f3lLMF0yjsl0fukMaNh7dnyTKMsHpQM/+F5CuwqnTTvvNB7FS7\nr8m+U14dXj89WXTA3b9AlP4auUozKR52zBYIwhBmEUKQ8qlnNhDSN4FLekIh\nStAruwv9gEG1pMa2eBzS/LWySvYZrK8Ql+sclc9KpQhI90PVDe1xxdzSyYYN\nkTHXCyunk6/1NbQwkE+xONN8iJICdzmZ4qwZlGXsKHBUJ43nLVSmV09653wM\nrCoRO/XGts8aZFzp3A4qS/Jx6aBgOJjTJJvJAcOLCaUMfnZN/QYZ0cHc+0fd\nikInKrZCuK8+akMQ3hCqQ1RDmU8NUwiGmJMglzPc8m4CHzrDuepK/k/DW6pL\nNyoenwi6TnHZsU92jWnt6C1kioxPHTs8SozjmbCgY50J+NwyN/xqTFnSPlvV\nXV8d\r\n=/j2b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvoalBdpTUWiYRbUqJPZug65yrGe9RecvsFI4Mk3OCZwIgcbJlcjDQktdg1PrCWOTiaYlm8dtoDK5hJvVhfcmLe4E="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.55_1595262153014_0.9471561274819933"},"_hasShrinkwrap":false},"1.13.0-beta.56":{"name":"kafkajs","version":"1.13.0-beta.56","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"b922b9e719c956407cdb95316d0f6a779073b61c","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...b922b9e719c956407cdb95316d0f6a779073b61c"},"gitHead":"b922b9e719c956407cdb95316d0f6a779073b61c","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.56","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-gJ35CDHT48KDq8DFf2YRcKWRbvt6K60AP/z7Wtv9pAjQlNDp9PaftUL96fZgJBFwOvhNGmyFHNFUVociyY0cyg==","shasum":"241afca6e202ca1aff6cca5fcede5a47c02575e9","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.56.tgz","fileCount":293,"unpackedSize":529293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFcjCCRA9TVsSAnZWagAAx/oP/3/8OdqbZ+xfcb1erPQA\nFNOm3Dzvr5Lm5eR5rIGW9wQTIAicIYcnjAPP5a2MrTZKmYW3Fgx8O2+C41Ws\n9BC1O6bXHijj0atIOlVSvoobs5coUi0dQ+9Eksowa/I/TBWzETvxFEL4/KIR\npKhnUBI6jj/dYwZmHkTZzWnwWFdGVC5CQwQ9TreOmHH0BK5LjvcS9cp9P1Rq\nSUo+E9wlbjXl/qJLJE948ViralktwKBznBSBnxyM/5sp3z7u5qXGYKNs6kvi\np8lEzgE6k++jKvXm9lt0/qjPiq9oQzu0+UZKmxEdS+dtUU51Vs8iWaaypHXh\nWuNmAswvDImb6Ar4SredW1ZXgAmq1f9WHfJ9NklvvxTVGI5ITQwEYsYVsqv0\nLMr/g1vqv0NgaAX1JZ5GXXBY1VmccPyMryksx8PfR92Mhm04FGdSEigfxgKr\nXDiOSkLqo+6fIPTUCIwDUxdtTwOmub3+tGSazSPDldXmMjfmkqGqp1DvdTjj\nPj/t5+H+VNDp9e0ktJ2CPJlSX3Q1wMWzyJdzlZTzKql8H7rDb/XoyFHVDMuP\nak5dgrcknugQW0+8lwnPU4++TdCkOSVwUBzLwF5CjK2xtjCyntDNYrBkG5Qv\n4ylZwlW60PQnHPyRKeNtQqQbdkr56DKFJT9wXepDRysKfdsuMJKFgWrsa/JF\nbeCy\r\n=NFSp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGq4q2rFP5ungKTGVqD8Y/eYKM1ycJ+Nz8At1B22FtKwAiEAm9pYIgeHFC0sZ+xwPT+OOYEBKLKfTpEepcPUlSI1HEo="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.56_1595263169603_0.7382050003348473"},"_hasShrinkwrap":false},"1.13.0-beta.53":{"name":"kafkajs","version":"1.13.0-beta.53","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"46d5f54d58f7a3c8944027b058d4d2462eeb413f","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...46d5f54d58f7a3c8944027b058d4d2462eeb413f"},"gitHead":"46d5f54d58f7a3c8944027b058d4d2462eeb413f","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.53","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-G/v1klTiZczGbY9k+l7/3wRq7LlYzCfk7hQLQLSW2PKb5l1b6teprQqGs/Eq1uCFogde3SESN6WQbx7Z4pBPgw==","shasum":"746182860d4820b2dc9115f36426813f7c98ee6f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.53.tgz","fileCount":293,"unpackedSize":529994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFa7NCRA9TVsSAnZWagAAOTcP/jfclNfOUmEsfAKeZWkI\nFKAaVcciGEmwU9LKwlnN1f0Bh4/be9leW7lc3LOeWqR6UY3Vn+eSlAQv8RlH\nI1uqb0Um5F+LDll9FJl+JuisEQF9aIFWRTAwf+NTm6m0zsAYHD1JL0fZsbnx\nJ4Ry0CpBsJd8cogdoynEzw4cqGbo/Hc1EcGTrdJFSULOlY818yX2ZY/9KlHA\nk7UqorbzvzJ+XQrfintynqC9yo45rGKnmC9L5NXUznA6+9h7xREN1N9VclgL\nCvcUux0Ug6o93OMLBxaX1KN/nozOrSQvdzFy1+qGV47wciDN4l4lGRmC9C4J\n8+OgpUVturTWXCgUtSmql/eF4HXJt+x8unMi/eOPJM84t44EPPscsFPrHvFS\nbmEIZF5SArBxhkNrkIcv6VxHoVykc1UHyzVTx+Mvyc/3za9COjTb+kfEXuLT\nVoAd5K8HfCewBTqXq7ZNvkaSgic6GrkV+x4lskio4i1bVYEkTaGpIiIe/NOC\nkdlgLi4lm1BbSPxWnTUivSpnJHKybKY+y5lvL2397CyJCoMCOcL3M/2eN5MP\nkqKHnRqTXXlCb9VGp8jPt/0eWouO2mX4AhZCD8Cpbs3IpiWS5PKAxXfCt2uu\nCC90V0cTRUTAUI5iaI8svVoOV6Ljty1zRxOnXq/+vzcIy6Fvvp+hyuZfgpHn\nfGDe\r\n=iWvQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH+alc/cdvqA+qw1QsNpTjFfvT7iVVqC2tn+xndiSBHBAiEAwfcokcN6nHWc7NMS+cOVTVdwPEt2LslCMPFxNvE9rZs="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.53_1595256524877_0.25076751031220446"},"_hasShrinkwrap":false},"1.13.0-beta.54":{"name":"kafkajs","version":"1.13.0-beta.54","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9a6cc1bff0e6a79dc5e79d835d3828018947ffc5","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9a6cc1bff0e6a79dc5e79d835d3828018947ffc5"},"gitHead":"9a6cc1bff0e6a79dc5e79d835d3828018947ffc5","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.54","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-txYi1yHVpdu+FDrXfKc0jciU/w8ZaUpkoVGBU3MZYwhnjKOyIyINbPcxhvMaBHZoEjlH2b7ixGN4zw1l51k3tg==","shasum":"1ef20c50518017f4560c0ba036de5c56b90d012c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.54.tgz","fileCount":293,"unpackedSize":529234,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFb0QCRA9TVsSAnZWagAA2PEP/RGvWx81phj96SPTccnn\nfbXYHTAyGOPwOc2zr2IQZc/KXhpojldYuaQu7xefOfhuZ7bPOZUiUP/CsCBh\nBO7aUZsqUt5MVpGpND9cLKvjAneG6xqVztFmW07A2GPtZVc8Y+MAwWO1zU7d\nOZjI51Sm6Jg2zmO/MnKBSJwJMVRA47Gp0OVOSfLqrOKP4WMh2U9CfFNq+bPL\nQdGzVdhRB/xt4C9v5teG9PEjxASGDTGjdEJ3e+2yeSF8u1Leti0tvZeVXhb0\nEj6d42benHy5sqs71RNGoNXUtuHcTEjUntVSKNC56BQYJSZ+89TYerpkdaeE\nBCzVETZ+Oo3KuU+L2BzQjmhAQgPxKfPv8nOOjIl7nWzEHjZd7vKaudiCcMa6\np1DR5UIXhVSqaQ2tgLXl5NjmqPHZv13EkVBG74YiNCkrUYYpb3f7T4MU8QFm\nl0vPuNAMQfWE7sGX6Vyx9EcK/++gkMlGoZN2ku0yXZwG6GTn/j5D5gHSBr7y\n7MYianvmE20wdDAAy3cVmMspU8HAxRIawGyFndWEfdts4WVY5pd4EYWT6WyI\ns2LzWR/kI0rQhFsJBXHI3RrwO2baOOt+IKa6k66E5ncZ0KFX2QN9Mfnga2nb\n90SzZ3jP3kfT0SyNeChMPn1/DQFuAks2ZakCooz/Hu7PfN9i2q7//fZyxy2T\nkA9m\r\n=Bi+F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB6Rt3uXi/ADzYYIP9ZHCzG637iQo2nqPYVsvsdsEaoLAiAhnEzg6+7Xhy6usr/7ZDr/UcP2GP29ifNmRL1FgdcphQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.54_1595260175584_0.8485822604305246"},"_hasShrinkwrap":false},"1.16.0-beta.10":{"name":"kafkajs","version":"1.16.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0ed42b17bdc8786f8676f43b5ac5a79a7f0e42b7","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...0ed42b17bdc8786f8676f43b5ac5a79a7f0e42b7"},"gitHead":"0ed42b17bdc8786f8676f43b5ac5a79a7f0e42b7","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.10","_nodeVersion":"10.23.3","_npmVersion":"6.14.11","dist":{"integrity":"sha512-8pSHehcS1K+bxsS+Txuc0XOE1QO3cmUQ1gLKAnFfBbnf3eeq8nY6E4C7qzkL3UFAOpJnwQYFRE8qiARLpGee6A==","shasum":"bf6a4d387fc3c11cd5a2c0cc3cdbd3df00355442","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.10.tgz","fileCount":379,"unpackedSize":684784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgP7p5CRA9TVsSAnZWagAA+rwQAJdbFIKUzsmPYIcAoGHi\nH8rPxRcJi1ZItofgBPrOG20xieKtZExafgzOQAFWoImnQBdwMAZqBVkTrPne\nTHJnONtEljDhGZKeEX2fbft82QHAhQzGZICjPokRipmghHGq4RIJ+HXck9W7\nlemeoylN8yNb/FgDfr6SviBzhmuIIg240mej0IIdEgoUQq/HbdpibkgC0NDr\nJPh/B4tWnjlYotYZW8JItjkekDhoJ8A2IlKamDm6X44urh3mu7kWs/9im3Mu\nEG+jzueicww4HQqDNd9ybA9+QQXpVwePvF8Rr/g4eTw0pnlAjLxM8MfvSy6G\npf9pKcMnqDRE1op2v2YYmzTL9rFR1DGqzZOA5oGF697PN2B5BxrYvzGJ13JU\n+ckI8cCa+fY7/LjDvZCVtpMFhjP/Oi4caiQ8pcrP/eDXdgO2EyksKYd2ymKE\nDeF4SFAZL1iNoKAyu99kUTwRpz7ZyVTdrCRUzCvY0jLIRRCIvWGXn8p4Yh+6\n2uLRqw2g2QS0RY8tv+pkz+h5qObhpmWrzEs2TWBm4dijff6vv/ioxizOZM8S\nyI1KuplGJDHi1HHkCGyk/Aci7v3b7AyqJ9JYmY86yApM6T4pJd4NxCm40QLw\n88KRl7MsxjOqJQAfIPNyv6awt/3uFKyV3BH7JW7YZgz1nn1IyjZPSRVo8YPG\nrQwv\r\n=enOv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHomFZUTyfd+mQTntW/JGQHlGFjvSPvD0Vg8EWHo7/RQAiEAxKi8LWW8OFemQ5xu1BvyPRudR12pr4sZJuEmhcBrLAg="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.10_1614789241162_0.7621494611390074"},"_hasShrinkwrap":false},"1.16.0-beta.11":{"name":"kafkajs","version":"1.16.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"958eda1470184659e916bc8089a23189ec1f85d0","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...958eda1470184659e916bc8089a23189ec1f85d0"},"gitHead":"958eda1470184659e916bc8089a23189ec1f85d0","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.11","_nodeVersion":"10.24.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Bw7YmdDPUXIj2WelaNgB1Y30ebWH40jwgPuwRPm7gGZtndGsEHkCm8UiHiuGVDK2sBlOuMyAMthS3dhJXJwfvg==","shasum":"490e787883f39f95a57a3605984b92cd5732a673","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.11.tgz","fileCount":380,"unpackedSize":685698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRlepCRA9TVsSAnZWagAAblQP/RL2WyUjJ9tzUeliF4I6\nk9Z14Y6pT+EiiSnz4gQfojAAQYNtX7G14O/jMkd16rWXwLYjBJyoNODltJfr\nOpW8USzaxkObKjH0s6jBf344LoVQIjjSkZICNuSOsq5C+8n6KgItgj9TEjb0\nPDT/hQf8v4zDdO0s7wjdc6e5mePegNsk9Szq6UD0FwBHHuaCwiYBcyvkbiqY\nVyych4CethGOPbDgT4ftSto/YJEoaVn0fie8bwyDlfm/xQQ/NFEAI3iuq04R\nbULDUGUsSFbWfkSdQoPCE7bf0oU4F+GG9/cU60LTbhWAYVAtDEWb3Rdiq3hK\nOlE/BTIFMnOypYGXxBZ+XMsQqQb/y9CC5S65r6bPkJYo2EHfRmNHclHNldTV\nf5i4Iz1xwj1A4VKTAFZduzePTTJiu9QQt+sPwhOJ5i6eWyp3s4yjUZayHise\nzPDbdmHgV03EgbNwwi23obAl2z5hqqF+RtkOqWHQcuy4bk2Zhe7TpltfnUy+\ncHUfEtDMeAuWdTFVrweVaJ4PrBII21jrnYyAPM2C4n++thF1ox7QkMkA+CRQ\nZa/EKUbrADJ+qnEGzp04mtYt920Z5swRTajhxlfXncVwfvbjLVAfQin6GNCb\nftCnxeLOMnjq+SbKJAzn3rTaRjDoA/u4T6cMlGtUD2Vncnb943uO5NqBi26C\n35he\r\n=UMxR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDd2GFnhn8KSVbeOuvdmw8S65cmGSbpoUQWF0H8Z61ZogIhALkfFpUzdVcWc3Qrd562xVgAno9E+yDhicj5VdwnvGJF"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.11_1615222696374_0.2415479244940839"},"_hasShrinkwrap":false},"1.5.0":{"name":"kafkajs","version":"1.5.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='0.11'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"bd68b27c4556e6cd1e4f2d9e2727009e9d7bf082","_id":"kafkajs@1.5.0","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-/RVidXMAh0LigMxIIomw2MsyIP92mjsZ0q99NNLo/aTez5krUldM5Gs00sITta5RZ4N7sCwVh1E0C1G/NyhO+g==","shasum":"71b2d4406c56c48ba2c7a12dafb108d8ba7e8341","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.0.tgz","fileCount":217,"unpackedSize":383068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcfoRtCRA9TVsSAnZWagAACaUP/i8Nn2y9Tl9YRSYBgktu\n5vGzNk2Vg8Av0bizEinXeN1UZlgEO5lYbzExKOVECXIxEBGBFRyFwWHTyHgv\nZSaCF/VmO9zL1VHcHeRziPFzXWwyD3Si3v4V0ByTtYw8Dbw+qqN2pZNpUdUs\nKU9puKUTRrzAGDjFa9ZOQprdJDGmLcHUg9KwwjI4shMtqRHwgDdZwW3MSnaq\nyZcqqZ8aUzECRLSBUmMj8MZYb3Bnuk1FoqAVa189mgtRcaUoe5uFF14irkmw\n/i58QltLMieLSjeYUreQ/Fsv3ow0eYEysvske9uf65PuxELChUWoSOI9jpLF\nvN3JesiNP05e0//SYG0TFnd5Jw2zRn/DcNexJv6KsuKOASNPK1+jbV5VKdUe\n/aZ4eQa6diMZ7nrViOG5uGYvM+Wl3zOzMP8lbsVn4to5mp1SaY2oQKxN/Wcd\nlIr24EJx1uKhW+QwBHOGLYxfFxjo52/eI59/FkTqZKjvkndLunPcYiuMtaeC\n4NROhwHwCSEISLVn39GE6KFFnTj4tn3kRSqz4I8rp0wKS7Rh2C7fjUpA432r\nH/DwoJMXojFiYqd9hbdR93MdtIRHPL3FjH2cCrqDclTjn5p95n3NPPCwfon2\nG6ujY9PK9Hfnz9CyvrtdGEEiSRju9Sof4tJIIlDAeqX0d1aE3Rm9vGr220jv\nNF0K\r\n=Ko+s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlNoBta7AN/pfAF3zo7jfFs0x6NN9n1KYSS3WABU3YXAIgFhanEGE0za001GJrMR8aCRP1sb+dVbGl7D8DiQ7DrAM="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.0_1551795308471_0.42254988248754755"},"_hasShrinkwrap":false},"1.15.0-beta.9":{"name":"kafkajs","version":"1.15.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7a8391a7b10e7288df2ad34d1d1191c2d39771eb","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...7a8391a7b10e7288df2ad34d1d1191c2d39771eb"},"gitHead":"7a8391a7b10e7288df2ad34d1d1191c2d39771eb","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.9","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-IWt4aarzzNnUN3VqGH6XvD7OzHeIm3H4QMl6Y73W1DnoAkw+XNYE6giuOWXabQK1wHkcBS/4MfBBOn3aDEXG/Q==","shasum":"359ca56df18f6ceff303ba2be26e245e38ee93a7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.9.tgz","fileCount":347,"unpackedSize":636597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffWl5CRA9TVsSAnZWagAAmGMP/23NiXG3lAEzbWmIDXI0\nf17dw7nsX0asLMs+kaW4W5PGBKp0QzS1/DG2bzYAyrV/2nlEwQDgyG1kuiPE\nZpUWlGjPrBYWjKb/NR7lsH2Zq9iulezz9M0zGk/sYDR4r0cWkqXwWPX0V0Q+\n9XcatFEw7MPxhiOKqRB12JMjk1gtfGV6/LbGC5vqOxJu0+lHroGE7DVeX7Ch\nolyUHyCEdl+rD+aqERo9tIQL+QM5EyDVk3SII8O6vz0FV4r3Fw4SW3XQeJdo\nU+XK17vtPs4u5CBVc5/bDAkD0LdBqj9/05/aFZCMpZtKFGPKvibBc1bwo/JR\neNM+Xt+NXiSqUZwbSa1scep1NXlPXbkkyFR5I77+8iB4c2WZFlC/qvEwWxCN\nPje+Ug8IoZJaQ3rBRfnWDRieLI/Jtaj5omz1851+qWhL55FqDVEyoORSzQvO\nbaiUl98sTKxXD/HvtQvtew1cRCWRbTgE5nPUdWS+/6QBUXUyMMgtrtKL+xnF\njBOzWEFDCY8dAGhIuL6ir99Q+tBJmXQT+WvPR8WmGp09DEPittN3AwhZJ0sw\nB2Xi3y444xNqHc8v0AP/3WJ57yVoiCmdkrEPRRiSegVgmEILA8dfAxpBnaaI\ngPBjHH+IxJRyRiW2gHMSWdX1B1O+muwbkp/zl+5ofynY0ZVY9eK9zIUmny/T\ngToN\r\n=2Maz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB1cRN4sps2rAw/ZxvsCCZHnJO0EwqK6bao5EFjWVuTQAiB26DQ/5y/hhN35EVDMQj6bPU4tNO1E4afGA7qM0pal9Q=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.9_1602054520662_0.8891572936065835"},"_hasShrinkwrap":false},"1.16.0-beta.12":{"name":"kafkajs","version":"1.16.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d8fd93e7ce8e4675e3bb9b13d7a1e55a1e0f6bbf","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...d8fd93e7ce8e4675e3bb9b13d7a1e55a1e0f6bbf"},"gitHead":"d8fd93e7ce8e4675e3bb9b13d7a1e55a1e0f6bbf","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.12","_nodeVersion":"10.24.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-y75bCJChIKfr4DCuzW64joJcEuWlFfXuiYP9CsyFaXisfCPNC+9r3griZaD56rzm2ApfQRBZQyhu5/8v6zbjWA==","shasum":"910dd53ec2cc55731ce4a3ebd1160ea0eb6ce995","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.12.tgz","fileCount":380,"unpackedSize":686239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZbaxCRA9TVsSAnZWagAAxPsP/0SSko4AM5aTiP6Izi+J\njPOlFPron0+HekuCRjKKeLLj/Y94HTV7YHsUvNSgNGd2+sACCvCn+Eqbm41X\n+6ef4QdEgpzchoBbri2it258HcF1uFdTLsswJKr0K5wEyBhi5qgb/NXY4qZz\no9APlRrBldCPZbv12VPbekBWs95ZFf0o/bgmsnu+b1XIsUUNcq+hHzqP3YHh\nWg0F9j5t0zsahjRwN4GdJpp/3umFH/uChWYx0mY1iGnxpcHi+Hi5W5iRAX23\nREXFQ2QiLtoZOciASaTbZD3opmJ+Q3FnkTdHhPSLRHKcf0Jw/8xPakPWb5Eq\nXD8LXwS6NkiamMvQoN5H8K4wu30Ld94Bi+pXJbm5djcLMgy0brCK1ibAfWJd\nBtHzHJim8A9glAoFjcAfNrHSsZ4ExYdkxI9ytnkLwIhnBXqzIlrb5T4q2Cqp\nUNm+6kFYWX19IF6o5JCQV8zC6eHmB2RB2nFRm6m0BXf/gAkJiHSkkkfo7Qcp\nRFFQRpi0kkyGXmK17X/c4attjhOzcxacq8MegMmbm9fn4IWzYd7sttvZ0bil\neUfhai2ODzi/Kvq8Atwmp3/o5ozfJfOzPHiHPYGKridPICTDwkbsct/ZHcAI\nj4ulKQ71S3kIyWS2iKqoZTqXOWvQdyuxKHOzXVVujT894ibpQNE6Y271A0Kn\njIrM\r\n=S/+v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIES/KFKTHIXxsWWzIPbH8JJGl7367u6x/cXMFxeVf5aZAiEAibC9vG7g+HUVbUUhWzRPy+1nJHwgNSoDh2H7FnyHA6U="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.12_1617278640857_0.7227544773515993"},"_hasShrinkwrap":false},"1.5.1":{"name":"kafkajs","version":"1.5.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"52ed00b6ace5a5ec65c0fb7c5c9c4a08868e25be","_id":"kafkajs@1.5.1","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-qYqgqGwBTsXWuLCu2FfG2deXjSR30jGS6gu2RMAPZOVC3xU3U1h2TG3K5YHLpHukfoOQvLcxQkOrrMktcP6zgw==","shasum":"44a3730deadacbbd03c62187dda8b90bfbdb0afc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.1.tgz","fileCount":218,"unpackedSize":385728,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciiOwCRA9TVsSAnZWagAARPsP/jNp851Tx7LnZxKUIUW8\nUmugige9bdYqT8l6lqN4Fkzdy9yHMXcjBfSef6Ff+S/avKALXCsriYL+tJ4M\nZTaffWjWzvLPYmIkae2Rldbz8rdMiTyq3D7fvD+JfoZiEWb6B/ZMFi3vp5e5\n7jGyxd6kzLeNLrPWHox1B6MWDH0Cmr6hDWW1aw7ivXWZjomjlONHXhGw5PAQ\np0LJbz4l+FnCc25DKOb0coY9555ExvZ3GR+z+pDkzpugv+tOXwVfOtsC7MMb\nVO9A5AqN3NvzQ2vrDWeUhE6DfQiog94vcFt6YRp7M2twCLkAYEQRn9m7sbUW\nnCy5iIMQkEKOUpXyJLmwofAvvNlIo2oviKJwotMRe4tOw+RD07s+eRwW4dgc\nH0G3zGno5gGdxkPaolCyS44m5ONl2g3Ju2WbNJ3CCEdk0AogvLe2vTl5Lb5Z\nDChfI6P6R1TBgYu5k8Ax95v5AYjbSeHk7Q8bQXM33YsIo60cMNIcvfoJM/UQ\n26mC09ZLhLNEW+KPceVaeK8sU99G6nQqpR00QjN/yq4HvZ2qXEkK51zsPBDp\n/rLMYp3s/+QlcnpnjKTcv2Uil9VYf17wiPDy2stolM6092793JQy8UNmsoTw\nXp9c2F1DRn1prJjXYz7lBwzryX4RkBijkqaUHeZP3hEQ3Vo3IV8tK1sUSaWD\nvP1a\r\n=Auhz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF6BYjxc3wpSJuvCi/PsUHMbfKjtQ+qAqgDJlWs6V0LgAiEA6WMEh0T9OJixjfIS+7/w7qJn+WIinnVG9h5FauVNkmg="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.1_1552556976253_0.3229347789526362"},"_hasShrinkwrap":false},"1.15.0-beta.8":{"name":"kafkajs","version":"1.15.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e72263f493ffda7ee45a7c149b478161d2766727","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...e72263f493ffda7ee45a7c149b478161d2766727"},"gitHead":"e72263f493ffda7ee45a7c149b478161d2766727","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n<hr />\n<p align=\"center\">\n<b>Commercial support available!</b><br /><a href=\"https://kafka.js.org/#support\">Resolve issues faster by getting help directly from a <b>KafkaJS developer</b></a>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.8","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-pGLaE6ndaJV+1uA6B1dvZO5aYQ8tzBZzuGmTXPcPD69HYimMNnIIp+qO3mNuMsNCSvE2gEp3ydewq9e4Qro2IA==","shasum":"44de5c0f31be199fd0723f97155191624c2a3852","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.8.tgz","fileCount":347,"unpackedSize":635850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdsvXCRA9TVsSAnZWagAA2YEP/1dn35t/R1UAiwR9YBIt\nSKzLipZUvDJhyVA569KKFOIKWLnbcwCCQVRG1Zs6iskCWbvrkAgDI9ps8weJ\nFY53av4lxBCypl7SZAlSjbhs28DS0YelFYc3F5lNRgM5JYyAdRB3KhzJYvAK\nQ1YeUulxs9AQSKkY9dMc2B57m+BUB9GiRM6b27Dzj6po22581vYmO85vHgL3\nc0YFbRb4FMtWmc2ThbajHQRglt1LYrOt6XysJfXFXmc5zHXUkYppiwv6cUKu\nPlitn3GKbzX21EuTIgHvQGB8/pxrDc72qTQWg774BdTzTme13tJk4q0wjvY0\nMmDyV8LJ5wt9BYDg9R3KX3kmgTTGUPl2mRGqzs0PV+HEg/N+p4Fc0fUsfRqR\n7P5pbmO3ZwGVPAriabLzd6dK5ykNH4VIUCvIotYywQLUxBimIr6phMhgsgE4\n7RI/CyEbFzF0MnR38FmW9jh7UJgmcfzbIPDK5J5NucBf/GE0j1A+3pr6FsO/\ny/zNjrQE+1FzBM5Rrp5nbVDgx8NMUsqzCaUokPWvH3V7DBKF0IatU7wBYBjr\nSf6sY4j9R/4LcNQP/WtbweGhxL3UiLCe64KAF/j/AgcWS1ATIZ5WWyYQos/W\nhUtOHUYAQ3Emeu+bZuifT+jH47o+6AkxsZqvyeYYQqHmgN/odGgVXQlT/RC/\nUeaW\r\n=310w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGaQz7QPwwmnrbuFTqhOgLur8/Oxzb1p5FVqQGn7I4VgIhAPfcYbd4/fbCALG4LyH2P4NQr/5bDWPWIQjZ4yEza4i9"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.8_1601620951110_0.06902437771903935"},"_hasShrinkwrap":false},"1.16.0-beta.13":{"name":"kafkajs","version":"1.16.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"813cbfdfae6107f428befc376457d4af208fe921","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...813cbfdfae6107f428befc376457d4af208fe921"},"gitHead":"813cbfdfae6107f428befc376457d4af208fe921","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.13","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-P328pepZyu43o8h3Qp8jQSg6J4S8EYaN9/nTEhgoVgH5bJGt3+F1cM2tbOql4KkAZabvJc9iIxFzqxuQlAaieQ==","shasum":"8b5452f20c7bd630deb2521f8ec9aa4dabb7cae0","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.13.tgz","fileCount":380,"unpackedSize":689933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeHivCRA9TVsSAnZWagAASbMQAJUJuX+HQPUd+eCh+wqX\nuTaPeXlENDYXhQwfZgL9NoQMvrGxiX+vZRWf03NV0kNbw21aRoAFQ6mhcNYZ\nMSVcrXJ5ViIZaC7COQ9oJBNtIkobtmbdagsjzqBv7CN1smn0ZD2n41VUQjqw\nhKUKpXwV+LJYn3d81qtNHJnTf95lCfaUZ3ha9n2WAiAlAysFaeWO28jPP80s\n7yrVbJFgJxBq2cBwT+txZHbWBZeWsDRsYQVbLyCv/SGDA9+ou7fsiParMOdC\n+ZaDH8oMJfKd43DWyfbyA+VgP3QTwxGfA1ZJHaX9CgXc4xjQ+4gBQD0QdG/7\nbD8QMNcO2U12p2B026ijmGx0mMy6+xrZ3GPVpqVmVmQTxAfz04kpzmj2Rf5D\nIXF13nYR9FIL4KneD16PAl+7d0I3dFTD2y0xgatsBu1K0tKgS9ov1ijRRKqn\nqzhgWxdAFRzH3KbZRJpNE1F7xQUo1PPve8hsVL1HLLInSw9BhcxETdSgoeCD\n9orrpxEg+gROLyWVHxBmq3TdGURh3lw4Y7aVRWNa3OhHl0MfpOXK5ElnNI/X\nZEbwU741jFB5JX5mfEvv3zTMPUNLrcaArQAFnxtFxoEkaLwC4vOQ8An//MAJ\nnnHD+Px0yUWQhwqa8r38vfGZz5cj/CS5Oh8yrCf4Uok4Ulxaue9lVSyCVZuv\nYJpV\r\n=OusO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFuj5sOZe2mqketbYcUfaci4sHgeaSRvORPi7r9Xic1vAiBRXQgIcckdWlyay5sY6fgwXOaqfaFtusCKVHzUK6t9Sg=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.13_1618507950580_0.29713456745718525"},"_hasShrinkwrap":false},"1.5.2":{"name":"kafkajs","version":"1.5.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"95dfe25f8aa983c40f7183d4388cb78ff9acbdb2","_id":"kafkajs@1.5.2","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-oSxiOgmjDGGYyBU5x9pFHOElUSQ1w7x1j63z3VbQtXczcBdg86zbFTunRZtB76JAq92qOZpQjsNQGOQeU6h9ew==","shasum":"c951c545ec2b5684133f16d38167cdfb854573da","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.5.2.tgz","fileCount":218,"unpackedSize":386226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcocrMCRA9TVsSAnZWagAApDkQAI2pOIMXSPWTM0xD0vYE\nLL0NF8uHKwO3JyIKKv2/7DiVdikqG4DBVTGQgTryfM5aEBt14Kckgn/jsOVD\nJkjyXdRB1hREgKuYx2xyFSXKKXJAWnXlOCpMPD1hzZ1s2GjL99ysM7Th6HlH\n+hH1ulhRhflOM0ji/MkZULJCTXV423ejUAJ7FCu7X7xaMODne7M88Tbviyxu\nhlyFPphjiNCT4MzCFbzJPQeFkRQ0k8dCM4UlJddu11wb53WSSHew8XEYCw9u\nZQNlj7lzmP/4X4+ibk5o6M16cJ/iro+HR4Bo4dWl/sWgBEQ/QmW6demETaN0\nzs9aUFRlFUW8r4bcCe29Ae2CcKxevXzrXKNp1tD08I410oRI9rgOR+AMeYso\n6EHLQcnvgsi8Vki4vrX3B5bHUtVklp6BOvcnwyyHEJVHYNkQfM7qBb06/PW5\nALBbEcCkWloahFd8ZktMHFrYb34Q60EVrVY0FQ36G+DnECDxsgGcJULaRzp7\ns40+abQoCQrd0Wog4rJ6Vh0+4377ZoSt1KNfyW+ajgJ4/3YkHJr2m794yAfN\n2yvSl5x5zLVx2CsGu0mBq1sezuYOYAfDsMqHrAfU6zgH+vKMNOAhw84FCkaW\npeAZ/oDWjz+PU/4VzpfrKIJUNs1V0IEj5m55wMTZVoUnHw9HcySuxsr8KBG/\nNlk8\r\n=euVx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGN6pygylY0JMYORKcB+MhZ3PMyWFyfSxkmLFEDIO7OyAiAvcahq9RsPcsBQc1CzDZLUv5YPqbcUuuCj18M0rxkUag=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.5.2_1554107083744_0.1294912448779122"},"_hasShrinkwrap":false},"1.15.0-beta.7":{"name":"kafkajs","version":"1.15.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"900c60a7473d16b7f678be4284ed95f21587b789","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...900c60a7473d16b7f678be4284ed95f21587b789"},"gitHead":"900c60a7473d16b7f678be4284ed95f21587b789","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.7","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-0dTlJm6JsOvponK5OcZ/q+i/Ca+9JANStDVJBQEV4EM5cTxVpLKb5C1rNgSdEXvzSFR+AJmzKnuB7+TS08ZLPw==","shasum":"3e92e045635af149ddac20c1be5df03bf4bb8404","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.7.tgz","fileCount":328,"unpackedSize":601381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdOyKCRA9TVsSAnZWagAA0ycQAIw7UMn8qUuFTm19JEfh\nqrZCJ8b1jCzBhvlEIg9Ja60rCz5Bi3yxoH4wy0NBubtWIEYO/VfFFjZbHHQc\nfk4CapgjZQEsiJKQzd6FeZrWtdyhbcHqVD/48Jp2FG0hAOPtfT8G35doZD0A\nbErA2fp5ubUX+zGfj0FfhlM1XdzL+HgZI4Gt3Yh8PhxPe3vxOPEYV7wxyhiE\nOqGQkp6KKO9pLZ0K428xbR16tBiOaZn+8sNL2vwonDX0jiwgMbuLLJuNOAKK\nWas7+i8awt4yP7ynKKTg/PDyRhXU2MSPQ7XhcPWfehLxj/UbUfShx/7bTA7Z\nxY0T+aWrxHfvdc1NDRwXUz5GBAjl7RDNzbM2ur4K0TB3rGJbw+2KNy8ts+Nx\nVE2V2Y0lVVexuA7om+CCPgVFmw7rR/PanLXtOUN3RN9IYhcoAtZl9twJSGgR\nWULycGbeSYR0zy14oirwkUk+4K8RkQKdQN8HhLzhBJeFiCQUfSAgKEW3QJNU\nMfziwF2Wkk5A2mBs+QmUPkbXznL7r1ydl+pNm5IlRZ9dQcH+tZtFvDLlaqBm\nukLe4umSn3G+NEUt47BpUKqx5EEz0w+2APLuCx/RBkqjD1fEcMJWPeWuC3Hi\n10ioma7s8Ze5NBFPN7szn1MKpoqKNudSvhxI9TL/1imbYqPHVPw8+hydQSGY\nEqAK\r\n=JnNT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCvC3BkK8zuHAufHBtmJdLuN4qzDtdAIWT/viRbnBqiQQIhAI1/M37kJzMNrysB3G+cPO4ARtxJ4cOxjP4ssbR2FA+y"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.7_1601498250287_0.21722402377152328"},"_hasShrinkwrap":false},"1.15.0-beta.6":{"name":"kafkajs","version":"1.15.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f9d7dfec0f4d3735d6ba459795582116bd6567f6","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...f9d7dfec0f4d3735d6ba459795582116bd6567f6"},"gitHead":"f9d7dfec0f4d3735d6ba459795582116bd6567f6","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.6","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-Cz+KIZeWWleRAbTBQjv/ZfmsnYJjU2IQIZx/43JAW/8zS6DNof/a0atLuArEGwH0lmqPuiRl2vmMaNpNyk4ZEw==","shasum":"c7dfb9d957b84c1edb266931042d8c7e9d53cc56","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.6.tgz","fileCount":328,"unpackedSize":601434,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdLWMCRA9TVsSAnZWagAACrEP/23IeFwWTNhkzQlCTKLA\n/VHugxYGlm69OLyQ/5sjWKL54+TTR0UhBsm0+nBqEIMPyXW5uio0c+shXPdA\n6TiYZaxAJpKXdGe3aeG320EF9+0qVke0DVZxBbipl76u3e/LjycWVxq+Z74d\nhriAcy8qp8qi5i4WgHP7214TBdiK25kFt1q4Z0pI1NJNJVCKYwYdLPqfgMiX\n+5jfyf/pUSylI2s7xhB0yyzWKaKB4fT3LyJO++A3wlu1BgdjtAJkbMKQvT1n\nwmDdU5IrlgNo/+7fNZh0OeJPDe0oavHveVH1tcGmXMoZQYUG0gJ9lJXmVlWN\nigBytcJEEu3wXfwk8FipS2QIO6vYXQdgdBnIR/Gm1ON3IN5M17wpG23Bvhi6\nthkYNRHe+UIxHYCPH6XgVAf+zuu1YmdUNqc5ZC1xs/C8Idl3+sDQCmHUsf8D\naBVxXOEHVtICDLj0d6wmp5+0wUnafHBPnpFn/rqfIpudTXo3ipRKg4MGkYh2\neubLxAI7zc1N3ithhY7ZntUHJHY437LCmt4ylekw3iFHWNC5Zb1orWNjaIBq\n653S3DW2jNc3g3mBeitfmLb6NktsNwmD+B8ygndNDwEkOzm8vhitNNeVmk/H\n+DKJcN87a+QSsPzLHI6N4nxRtgc63X/waVhdE85quojNIcwJUHNYVr31jNdX\nyBSK\r\n=ru1b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDGUHzoUSWPyOpyPdzoBARFaE/XXFzpgTgfoahV14lPTwIgH6UXfPHfq0EByprBu7A0hnrtt9RcFLi52n6knRRpAQY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.6_1601484171876_0.4810223716015143"},"_hasShrinkwrap":false},"1.15.0-beta.5":{"name":"kafkajs","version":"1.15.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"0cf924200380b81ab266e6b5c08ad951052c15a7","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...0cf924200380b81ab266e6b5c08ad951052c15a7"},"gitHead":"0cf924200380b81ab266e6b5c08ad951052c15a7","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.5","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-9AlLzZSQyGKi+EhWjnZLKpmAXbLHkdWprEOSr+bPgcIly/0i4n7UVq9ooluDmcwN71vW1N9QwkZQNLeWzS49SA==","shasum":"ce30388bc962dc95b9e0571c5d710b4e8afeef91","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.5.tgz","fileCount":326,"unpackedSize":598178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdBfMCRA9TVsSAnZWagAAl5cQAJpCHsH1QNPhEDyyZRVn\nZtyzSbhS8VHSGiBwZjBtY1aEjsApgWvjtQcpB4tUaKu3VwS/Irtr76WL/Gqx\nl1AeAm0Sc+AE0WKWPH/Lf7DpBt0PbuPPdiZXrFtZHcUgkqKlJ1aNugeN1ewm\nKzJATwlwQhoHvzK4+5LK86yfu4lPoFLsNR65o3xjNPjzURxmBdZNisSbXYCE\ndJYhR9ul8kb9XEfCPcIHA3bQ/udHppfVp6jYyNVQGuiof9eosCoR04qsXq2u\noB+YC66li3ow8B3FuBpPOrfycW6e3tFi2CaLfanyysoIncrnZi+ZmlKV7k5X\ngzlzINwEIWV/j2wlhm68vwELEG2k0jX/H5S4Qpoej8lgFrCErbCtT9ZKQjEH\nCqe7chToaOXHaAO1eEm3we1V00VjZIqEhzu4rctT4SgZ3ZWc77rjR/Zi8N4b\nSaTq8GwVkP858rmigmfMzY5ZPULLyCj0yiw59qRj8D6mH8f1V82xLEeXyQKD\ns9izwSmP59VO1bSHpe8iO81hIPmuilskTjKy+GUTQENtpLW2hYy1rEi2WWsS\nCN2N/jG31YaZpnd2H5ml8JxoATNi/lTrs+jFsfACZRRfUezYyIelYBB/+i+J\nshvVGcCW+mqG2WqfSD3HgeXN5h+5346Jua5pYkBsBhHEd/eqIwdr3WIsWIKX\nHi6W\r\n=/oZI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICwGZTVMUk3EprjSJ36nY7myUsJQ98Mfvdwk+37i4mBdAiBIjPr3OJ6t4U8IrYaaKHrEjBd3W5bgFSWgeBZSS0MrBQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.5_1601443787557_0.7009758455078337"},"_hasShrinkwrap":false},"1.15.0-beta.4":{"name":"kafkajs","version":"1.15.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7df9cee482829118f21d524246b492773b1718ae","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...7df9cee482829118f21d524246b492773b1718ae"},"gitHead":"7df9cee482829118f21d524246b492773b1718ae","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.4","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-r43IBBXjjU5XiibIVFY9aV0tQCFtny39BFuEF4R7NZmS/VmbWRd6c+qxKkwWHZj7Tu9f7yuUdwc6mwp/a4XVjg==","shasum":"64bbcfc43060052dda8cca57146f72b7e4e08479","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.4.tgz","fileCount":326,"unpackedSize":597049,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfc4MgCRA9TVsSAnZWagAAVVkQAIXVh8Qmd66et1cfdgfg\nQFpOwfW5y+HUacJ89nE+bNEwVeH5bT91UcZYWp64BPMR5qyIZl2zH1fxxQgb\nFIh4uGo8I1ve2f8moWwI5QAYGtm1JJ6OJpmjBepm6Y3vlZf20qxtlBIUWlc4\ndKiQIwWHvCX9YkeVt6hvexHhQjlygM35QDsHh3jIYRqImmHS5SH353NnuFmB\n7Y+D0yxvAwPoupD2CRdxVYW+08p+fkiLLnqgYzTzxY/eKsjQmoHmbEBFB3zu\nY1R63fcTr1f8xFI4gTeoAW4PyQrkjuvz1kMAgNfPkDzzoQg6Actbb6YqA7e+\nZ5q2pDPc1VxHtQcSZlrWWwy27Evqv1UN7pBej+pm3BhbDd/qpzBu/L5OefEy\neeejAh3HCd9+Ic/Y0Vz6UwsD3wnWcXhmgYo4xTu0ZoQMd8zSstUgL75UsZkm\nkI7rQXGbqHvBTRDkB9iKBfaYFe7TKq3O/jYN8c5p+3PiYkpEWl1h9trI/Otp\nLFaUfUGA3fDSTAmA2tbdDCC5BpknW+kW9pLvl+XdVY+LbxVtSjMFjqdFTWwO\nNvBbuhW2RhLvV823qYZ2Cio0c9jXBo3u5PC1Q4HrhAWYvLJ1sljhD4bYnjvJ\ni0lw3ltIMXEByOgC8FOqSHY0KyCcspqsAiKZgl1aAhU1SRc/3uSAb+EXqLj9\nJYli\r\n=KLOW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA2NhLV4wVk9NEM7WuX4scEZrZYSleOCs03KMbjIH+RcAiEAkPkdU0k+kQDHaMWFZNUWfBpDann+X4sH8jmVIpfk9Q0="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.4_1601405727881_0.31325897801139146"},"_hasShrinkwrap":false},"1.13.0-beta.51":{"name":"kafkajs","version":"1.13.0-beta.51","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"6b2d7235c84256a28149bc25c0e69d853b8f14b5","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...6b2d7235c84256a28149bc25c0e69d853b8f14b5"},"gitHead":"6b2d7235c84256a28149bc25c0e69d853b8f14b5","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.51","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-6LCGApVfMU1rJnoQrCptbGAtOPa8Bbe+tFxaOl7S3sAP4zuNqPDtQhExpJ9wAD4g5voqEhkmaxomVIRFbB6KOw==","shasum":"9739668ff4e2403451ca3e4e38b03d3edea2087a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.51.tgz","fileCount":287,"unpackedSize":521235,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFZtUCRA9TVsSAnZWagAAyWYQAJEO+hLYPqVfHCJ5ZWO+\nFHcWyDE4nbibIMxfXYnpOsZA35Sozbci6CJNmxl84PvXboxBbNFC1csY4aqI\na2nsfkrWQbui7SbZew9hbGavZt0itUllh/X+VTACSBfHVgjznir3YQOn28gJ\n5yYGcb/DKM3AKMHFxyEx752Uk9TaLcABqxY83gpDwA+nS7igLocrcztF4+/r\n0nPf2jCT1w3oSSzHkVFvaxyFjvwtjpLCUw3QhNy9VSMEiqTNBwNfHxMX/4tF\nfNRw2SRU/hyxLAaB3sfoZibORQmUdxqZZVAVHl2Fv3X9144ynuB4t4I1xoZu\nZ6pmICqyb7//wVC9tdPZ1gtckrpj0adAx69Nfo0rVzh+NUXwuxcSlf+b0vig\ncfD5N/nyfqGstptxi1W3mgO6Q0447zMascJEihG8T9Pp+SrZSg/jzbauzJ5V\nnH7bjKLv/0v6aH2MayvHzmf7poEqocMla6mWeh1tZUu7fO8imHVdoJcwM/Tf\nsqAZ8SipaZ7Hxlric/8UoXQK+5u4gqGYruKdnrVIdxEGHfAuYNn5bzkxEx1T\noNt2l5XTFLKTxp6VImOo5f9H7OVzhsFjX8wlFRWybdSiuMUHCgkVzNN5S2ZB\nikcwvT6q9SBCpRdnGgVM2nPT5kh2JvAy2LBe4jCep/mtJu9wU7BqJgzdnQCz\nLQs8\r\n=iDcJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4RdnLVt9EmxqL3KCCvD1XoxPwXFJrz2ZKIY+jIVVdcAIhAObbfzxLLSBjHH1BaoJwW0s5IRMIkeTY2wDdnFBIEb1W"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.51_1595251540050_0.6947285890054806"},"_hasShrinkwrap":false},"1.16.0-beta.18":{"name":"kafkajs","version":"1.16.0-beta.18","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7292734c7e42bbf0b39cdac5332125cbc741ccc8","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...7292734c7e42bbf0b39cdac5332125cbc741ccc8"},"gitHead":"7292734c7e42bbf0b39cdac5332125cbc741ccc8","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.18","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-KoRn+gb63iRibBlNqAjP8/v5m7h/J/yb3Hak5qWLkePdqWs+DgnUaxsMfK0LZfuKIGUva+xrxChH9zr9ENBQig==","shasum":"a98e2dbe312a4b5d3e06ce9eae9f0e58f3773f1f","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.18.tgz","fileCount":380,"unpackedSize":691056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq3w8CRA9TVsSAnZWagAAyB4P/jVdw/FfNN2wKamSDmMz\nMfxqQcD90U3Y6bepJCiOLKjxEiY2cfcK/YsVS+oEBcqVG+FcR4gZvZhgncVH\nvTK7kakg3RywFwL7rB2uDxOlH3/WK6zV5E6SJR4PZoilmKDU1CRvoJCqYrwB\n3Gr8W+KmkFxN2RhyP8WyHknZOFuEGyzJ4Gn11rSLCIDc+D77bjNuqtEJXamV\n6ep5sfBvJH3BWqr8/T9YsE3hhy5Ceqm57FAQkMBOYjH3NHV+Q5nKQUKzQT3G\nKc7IIm55WWn8g1EiPjc95u72Atal3dBX0e9QU5nJpXzs58r8PSlEwcVZMk9K\n0I6FY7u+u/MeqEjWYD7/HMLz7aEqu2PXF2yLhqYyaH0AB0GrL5Fy+7DqWF5k\n/oUrUHCEiByqBrXyv7fupCKPlR1GlCnazvWAfulQi8JkAA3wvLiPUKjTlz7C\nGHABBC9fnKiiCSVB/InDtO+dzT2CF1a6xG2RJ4lp/I8qC/dglcCAgKp9gWXq\nxyMXxiTUSx4dGZTvPpDwaK3KbD8Iz6Nvadimv34Z0ooigzGXnlUovIk1NADZ\nTomM0Wh+K2flIhtAwptFpU1RXULCdVHr8qfRqlKJKoh42gL740cNpQIDB6n+\nbpCwCO+i9t46mLrVJz1KrcIW1ZjO+U9SzpmnqhV2w9X1GBKAYeY4i2l4Yhx5\nOSgi\r\n=UXvJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTqRvt+EqHU7rlwakG45/InUeIRvlXnOfxJs8AP4L3YQIhAJHkE0PC50D8RuQ7Tc0Je+16qT2DeFzJxV/2+p8FmiPi"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.18_1621851195447_0.18676732962760179"},"_hasShrinkwrap":false},"1.13.0-beta.52":{"name":"kafkajs","version":"1.13.0-beta.52","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f8d13b98bbe42af456346cec52358e87aad0a256","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...f8d13b98bbe42af456346cec52358e87aad0a256"},"gitHead":"f8d13b98bbe42af456346cec52358e87aad0a256","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.52","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-eeo3lm7cgpJlG5Dl+U7UbG7v3tvbX9b1omxyIvMWFnqfhT2B/dTPuTMG8QTg/tkp7QyBeB8ytq4S0puwm2fPww==","shasum":"4a955fae95e8d9080a36104a226e402b39175d0e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.52.tgz","fileCount":291,"unpackedSize":526021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFawHCRA9TVsSAnZWagAApYMQAJARCY2zxk/ziz8fTzI3\n11nhL0eotX9PNisRNjjdRYNzoV1qJZHgvcOW6K/1vAUvboUb650/pyP19lGZ\n+0I+jZA8ChTdc3TFuSVGhZD6vOoxhrNcjiXotVlZFpNKB2wQjekYGGIOWSvV\nwbSsX6Drz4LJu2eef+V6qhMDe28wb5CxoSOdvzC+1fFUnY9QHdmxgjmFuvrr\nvRdCAPz2KFBtwn3/+peUJQDvWTZ3b8ZRA6DkFlVlGLnzLF9UX97bcx46WE3p\nO4uqAnUFx7GR3CmzMBdLSTU3uHDCpANhHVq8v5hO/XoszsJa0F4Ling7DDYg\nnRYYkCtTtiP7V7b4MlxK3yPye3D07UFd37cOzxNSUKiIeSRXZd4c9NJEiVC8\nvNmyDqlu93maJR9Z+lYp+XbTS6bnj5I/CvmDApARoYVl8GuF6wilqrJZJmOD\nMH0CxSaMfXLucFdIGYlhqLh1//ClfN4v4i69OyUtxTYay6s0+oq36c+10hIG\ny2HAi67KWVbokdvRvUmSdjdj2DvxcO6QseoNkYEcMGVz7KML61ZtuMAMQlLr\nIt8ANn+4khPI5rLaJl8y6jmqROn2To0qG4NI5IRDLdtLy1vPs+dsZhU+C7NF\nBxaqbONB8NTLJKxrM4hXowGxdOGnvuSVn3VYWZzOqI8Ok/LsJDqkkL8DJuHi\nNb2z\r\n=defO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDKW8wttTAUXQwIh+KVfPiAe4WBWib2WoiYmsLvDnd+QAiABGtmCvPZaJhkOjhOf+AL5hkIB9nKvjXiuS6zHGLlEeA=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.52_1595255814467_0.5211197611647249"},"_hasShrinkwrap":false},"1.16.0-beta.19":{"name":"kafkajs","version":"1.16.0-beta.19","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a98877625e6ad787b5b9e2526ba34b9a0d267ce3","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...a98877625e6ad787b5b9e2526ba34b9a0d267ce3"},"gitHead":"a98877625e6ad787b5b9e2526ba34b9a0d267ce3","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.19","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-RELphFpOU6S/+JY5XQSsbSA//l41tl6qL59bCvlkofcuK7O66rjEKBz7UEEPx7xfItQ5MOmzWV61ffX7Orig1A==","shasum":"215f385f5cfd762deb8430371a84298c29ec9479","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.19.tgz","fileCount":380,"unpackedSize":691055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgt3TRCRA9TVsSAnZWagAAcvMP/314qvdzJE2+Eu/lo3AQ\nUz7CLFORxtcU98U+xO1e+dUbIH9OXe0nWldX0gWReZ4yiWXCrWy8K9OB61o2\nLRNq+0QpsW4fUWTwqrZPW6x2mBPNYdN0xM1u7plKcT/bgi+ufXsujM1kP1uW\nL9ZbwiqS0yQI5RMK2+UayG9bcMUkVYR4FHybfvty74bGozrhfoqXmtzgOdDU\nOIPVGT339IE6vqL6XXeAOZ0OzjrAfoa2wZ1OFByUh01pJFDqwv2JAsrglgIK\n+UxllmyLmLAzsxy+kXfsKnj1dMIyvZ3lqa0u9YWYv9187XYEHq/z5Gq6TVRo\noD0QTDscsF4TGzu3RZxEH6qr72ZCfou0B83FU9Uc8iR6eHRc5jyFIoqWJXM+\nXb7UHit2fbYVtsDaTF8FDpGt7R8tMlZDSpjlCneVz0LU0QSI6v6mipbYHuyR\n8aWov1scC7BvB+JpY82jCVBVKFyW39BNhIc9OxEMkHxi4MxpbIBgraHTPsE4\n0c7NykjTb7jaIi4iR/OxItxva69nFoegnpQle+1USd0kTdrz6H9W4F9X0ac8\n1Lrkri+h2JKnfa5NDAwPTC+vMocywd2MaszkZS+OJTU9JZnAXSZRdZJ+IG/y\n3yIY29u3CHPGRwT6yrqiIGb3Jkx7oWzViX9HaiTztiypmhXZirnsL5m3oW/g\nv607\r\n=/+Sp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD35HRb00SusrsEFePyOpCdtV6ezp8zKR4W0wExkq6KnQIhAKfuNHkwEb41kbAbLtV9xBYK9Wbtqn/e5ojyCseUqZWr"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.19_1622635728707_0.6010592415635703"},"_hasShrinkwrap":false},"1.13.0-beta.50":{"name":"kafkajs","version":"1.13.0-beta.50","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"af684ba10ccecec7c23e812cdb742090971ba74b","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...af684ba10ccecec7c23e812cdb742090971ba74b"},"gitHead":"af684ba10ccecec7c23e812cdb742090971ba74b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"./logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.50","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-4/D/Cj2/M8ePYvFz9Bv8Qis5UuTSg+FMmvC9+kyFZ5XEk/KcFKxr8XOD71/Ap+vjlprj1wMsv1E9RL1+lalbNQ==","shasum":"f793f63f178683af6198e15f6200533ce693c612","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.50.tgz","fileCount":287,"unpackedSize":520604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFYHvCRA9TVsSAnZWagAAThQP/0+6D1yC1twpEe8BnjRO\n1YOnPtWScO6ZNIIn0k9/kJHXxIcdpxV5XlXKio6dEWJoXTMdCJe7OQVVfVH9\nafJJwXbreLMkwT4yuioYJbp+lmf324TTZkkKwamH3cMyQU4fTtJGjPsbKDEc\nxSOZ04QjuuvqCRfxJ8suhf0DoG9y8F+WXZyak3s3AOv5wlI1xigxKFmWsvbt\nHlVnDdtk6NQbspnADAH2df6kt7fNQrvKQdfML32kYURHVr1qGA0LVGFSOJ6m\nR3CY202eISfX60+2ANuDD7hFa5d8l7ORFiYVjPE/pXVyOn73lTbnpPazcCe8\nIfirUM8Kh0/oiTF10fUz1gBedXotm/lKnjcj01ssJr2/7X7uLP2wnk/V0bFC\nukldL44oAYHFTo8haPgMMm27nReiURQHhM19cen7dXBokpLoD9UtGTFMdt46\nvmETXyiiUJQKXt+3A+0+6q4/5RFI4es6ZuZg9rG7mN2FaBOF/thVc4+xHAmO\ne64pCHDV6Mnj3b21trqzrvXsot96IZIaw7/jzwm2cihBbc2+iFcVsTXLZjzu\nQ5xBPsC5geP15z3e0poXeAGOwrKCsrnS9pneo1eiZVJ8XIzCRTbuad0ZHlA+\nk7lAPF1C0Whh2wbXxJeurx/66YKH754O7ujo81Z4D1eMfl/hmsSHGmlSHp54\nC2Pg\r\n=3ZKp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDWqFwxeMgX0R7sq/H/bTNK/vrlMieVoaVugxPCPmGuswIhAJICqBB0s6Pnm+DgmH/ypFGelsnomKVmiOT8sqZDmrZP"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.50_1595245038765_0.905509026129689"},"_hasShrinkwrap":false},"1.16.0-beta.14":{"name":"kafkajs","version":"1.16.0-beta.14","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"aaf9b74b5a54ff2ba1c64eb8e9f8e544341775d1","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...aaf9b74b5a54ff2ba1c64eb8e9f8e544341775d1"},"gitHead":"aaf9b74b5a54ff2ba1c64eb8e9f8e544341775d1","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.14","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-mZdZBy+biyIu8+E73Dj70swFqI5uyecT0lrsO4jk7MbbU1IRwnuuBdfYuC7X7EY12q4sIqHaSFpTbj2+ZPaYhA==","shasum":"deed0d64f5e7371bb07fc4c6bf5c0c47ef2cd826","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.14.tgz","fileCount":380,"unpackedSize":689933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgevTHCRA9TVsSAnZWagAAwvUP/i0faENTwgDxhVYlX9x+\nSI+RzP3pRjUrUJIPV+Zb47L9sMmXY/aItPLPE+vJkWdo6wOq9dmQ1P4XY7Z+\n93AGzZjUx9BSI+Md70ZSpBPUDDe/+JczI6kBTkvPpTwcv7LkV0t+OYBTIGiB\nRye3qlWhXfPxlYGj+2D3jPdKWl2AMurfH2QvAsvp3p+6q5Hvv45R9myL3TDI\nojBP5qSDBlciO9T6lSsl0geLhQfIi/0IK//fvOwsfR3F3ge088ThFtc+JQc8\nh/fkublONwOh62efFoaf11aAWph64Fuf/ze2Ih7Gmz6mm/+xRQxlzYHIyglg\niyu7Rx1Wk6AL5c6wvzcahkBEcZENWzfh9lSryiDkMerRtNcMfHDXml0+4HPL\nTq6jaqUBNpqj9njYtE5v43zQYzGZ8kE51aygBWrZlHGzy/3kgiRcKm9nzJha\nZ9q2Y4Q6cytddCUUuCvUzSK2qEuZZLRP+70PzhNzo6UuGuIhArC5jNVo9iNl\nSvPd2Pl/5AW05reBM7yiP2a9Q8vN+LpqZQilzinEwiNUy08vHAu1/dE2k7x2\nKvNwTKEUdxFO2FmjY7XyKUV4DPplHCLiTNgk9ugtjPxGB1mOi0FqiC4HB/RF\nb4CuSKKLRf8El5Phx34giL53d9S0p1Ql9KwvtI92C1JcFbXKFEhDYbSUKC1l\nuIC2\r\n=6Ds6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF/CtGo/4tL05XZlQguFW4zc4rYsRq/N5dM900IcofTgAiEA1+KQ2qXyMYSSqAmXhFQwbcMTdjCWh9HH7U3ZLO5I1fs="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.14_1618670791254_0.5056558322203537"},"_hasShrinkwrap":false},"1.16.0-beta.15":{"name":"kafkajs","version":"1.16.0-beta.15","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f71d1f63f0ab699c8e698c27d48e36f24e344647","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...f71d1f63f0ab699c8e698c27d48e36f24e344647"},"gitHead":"f71d1f63f0ab699c8e698c27d48e36f24e344647","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.15","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-+NETB+0Frfd/aRnx1Qjdy78s+YD/MEWqTy2NzWlxwslIIS+ASTT0fIkftr3E3d1R0v1oKyFJdpGUDVR4YhlADQ==","shasum":"7b858c903375e225d0ed379c7d0b0da6ae00038b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.15.tgz","fileCount":380,"unpackedSize":689935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfbEBCRA9TVsSAnZWagAA5UEP/3Ftwa501siHQ/BOvij5\ni86PkHn2E6WkzEToTOoYLd5OB4ZGT5mDdaVnamQhptpM63fE5FloE+fJyFjv\nT45QqN9PYcLePg9ShdhVnUI0uLx8CDzYnJQZNTUgQuR6w719qFKNbZoYCs/T\n3TuRthGcZRyXzLE5oRoxvRvnuCAV/AgRiHWEBjVIMiPeVzCnpC1xY/ILcjYx\n50uIKQP4TI1KkmfQ1mX5wmCFN9QPM49olAWRvuFyuPxIXpfPLpSO2qmNPaFO\np383V4rRUnCboug0/ZxitkvLDjcjFGG5cOHIBy5UYHGRRk5rEhmP7/UZPEyU\n8R7u44DdKXsipCU5aue2QR8noaqMS2HW2MGBWzARGbsHhBLbldzo5GnnUeQn\ni0M0tJJagn/TZ6dwbU42DonxKN+CyamoRjYJ0zEsrvvLhjABauFF2dIMXlb2\nmKzvT2m80YEVkN4XaNHNu1NNJSETcvXhrk19VYOVmbfKc4SSy2mViGu/Kyqy\nhGGnuVkDkWsls3RUBRBBIF/b6hIZwlz15Ejg1LRSG8LV0J3vcZFwjJVwXLJ1\nqV//aAAm06SttgkxHHESVSl7KDIyW/JtpdOXEY6nA0MSwk9drMNwQIJsuYAI\nno45I1qlk+OENT6QTDXTZKY0driJxoqnR/+uX1egDeeR3hEzxMFcC1iX1DwE\nVqB+\r\n=u6up\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuiAEgHyhHPDD3XJMRUizJLu9cop9CSGR92W+L6lBQ0AIhAPwY/05c9RQ9yWu9VfaKBkgXeHmiOCipbVKQR2P/McSu"}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.15_1618850048615_0.7897027267372279"},"_hasShrinkwrap":false},"1.16.0-beta.16":{"name":"kafkajs","version":"1.16.0-beta.16","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"76c32f37f8e10fca299554edb443af5eaa383a31","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...76c32f37f8e10fca299554edb443af5eaa383a31"},"gitHead":"76c32f37f8e10fca299554edb443af5eaa383a31","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and\nhas been licensed for use by KafkaJS. KafkaJS has no\naffiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.16","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-/u/VhVLPUPHyE/UUS2OdiRfffecIJCFyntg48L31wJW13okMeKRoyorsW49rjfH0iA+TAi5pkpqvaTRWwwYK8w==","shasum":"9e35824ec21fb8740daabc0a8ffa640b95e780d1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.16.tgz","fileCount":380,"unpackedSize":689935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnQeyCRA9TVsSAnZWagAAI64P/iVt8RK5Pu5aUkM2oz17\ntgwHEqzn12Dg3pfpN+p6lVYx501bU/SbtxaogQQB7NmxTIh42gRSlGawypTX\npqRtggyz2R5C2kP7/tMK7Qb419AY7v/QhTxsw7fZtSnkMydZd5p54fpkIg2h\nfgDCcbwK2KJ4Pc4py8S7B3K1iMbmPkH/VWDAE9gQtBF4qReTJsE98Ltzl9gM\nb7UGL9DeYx7wstFcbFn0D9ClyRBV7TmmWGO6dFoIKIubgF9rjeIT1f1xmB2M\n19B24XrewFwx24SLqOFDm6Y4Q6vrvfdObIINA+4B+dXMiag5irkBHZPl5piq\nH3M/0Q6RHmAUqYZkqCi8+xXMcnzPAY9RQl4yH1iBb0NZg9pz6hdwDZz0nlZz\nUn4+sc7i2S9MxvFq0pXXhNFlzeTjBGcqoalBF7bGFMbvzI0wDGjnP3h9GzHj\njLFII0gtK7tFT6REfVt9ny5qbnMYU57s+jSkmBSrV9qKiNsJSZNqCkTEqStl\nqH1FlOCRNMK2/ckv32/gME/yVeCsM4GcfmR3ooSXyQecgjre8khOvhxonsS2\nLw76+9TIlqRmK9TFHcmutwIewpu61ANKf4VzUOKOfNm+Bq3TA5uiab2gGubn\nDAxZiJ53TFI4d1E7hvsnOY82iS5cKYB1I7kCn5UxRujc5zu5sj3u4n1dsa7J\n1JRw\r\n=fVqr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA+Y0LOf7RamA76prFginDpZjSlL44MdkABztiDkeabHAiEAv4anMRLIa1dcBma7mnNggaG/v9P5a2OPXbp2k6c2vro="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.16_1620903857588_0.8006268880799656"},"_hasShrinkwrap":false},"1.16.0-beta.17":{"name":"kafkajs","version":"1.16.0-beta.17","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"906668d25d7303fb4d602af71a9bd6c374355e18","compare":"https://github.com/tulios/kafkajs/compare/v1.15.0...906668d25d7303fb4d602af71a9bd6c374355e18"},"gitHead":"906668d25d7303fb4d602af71a9bd6c374355e18","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsorship)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<table>\n  <thead>\n    <tr>\n      <td>\n        \uD83E\uDD1D &nbsp; <b>Get help directly from a KafkaJS developer</b>\n      </td>\n    </tr>\n  </thead>\n\n  <tbody>\n    <tr>\n      <td>\n        <p>Become a Github Sponsor to have a video call with one of the KafkaJS developers. Receive personalized support, validate ideas or accelerate your learning, either one-on-one or with whole teams. Save time and get productive sooner, while supporting KafkaJS!</p>\n        <p><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options</a></b></p>\n      </td>\n    </tr>\n  </tbody>\n</table>\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.16.0-beta.17","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-4ojv3jVLcq3KXJTnpFiNzEHNjpr9O0zOq2WF4HSeLFgsc0B+az6uhfHQ+Cxaf77VEbzD5a1annb6kZ1GQLKfcA==","shasum":"965ec10561dc6478bbf64f0e3386e4669053c3bd","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.16.0-beta.17.tgz","fileCount":380,"unpackedSize":690545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqTVZCRA9TVsSAnZWagAA0vMP/1/mfPVdO6w9SvyIXTxR\n1XgwnjQq+YBdJRWbnMUmWAd9bPWp733yEsL8ToriXFo6JbfGScBSwT+WF5jQ\nU9w5F/Sf8y4i24559qz2S2QCsXOLs5YEPw6WbgqWhizGnylXnM9XEaoaczKF\nS4BZtkXNjcxvJ+/n/RmLUiFKNCxMQdm0onD0c8+8qD2KnzDKcmWvLi2xCrB5\n+LYxJg4kjAV9eR3VuVb5Va28BGgKUah2dCvVZShK524jUaaGhfUvrU/srjyU\nxqWg0J9WNpTx/A9nf7advqpSm/0Q0R7Xw9psdYCR8DMLhmcH0g7sUzUTewnS\nTdUOewIOOo5JYRMFh9SskrYGhoG9bte8QyiT5hV8OJWWl/Od2cOXQalk1yZl\ns+6eQ51aX4T5r3TfDuwDtatLQR80MUJ8a0TlFe+JiBU6reVr/oaLpRkmZ53G\nLYOgmULH42Z20fH88pmT6aNkNf6OEjuLgU9SUn9DtO5D1kXQrgnyu3rhyd+n\n8ILMr4eGAy7RE95PzzrpHfSPaZr1T0nuLLCfwAhw0YI1ddABqQ2u2nS8bCiE\n8ZQq2Kg75RUCovusPXMXSIVDUfuo98pkHf0EkUDmAeU7PiHqqHktSUz5BFQG\nzylQBcSUg2uvDgIvAOrI4NHjbjyqeuCxMGpQsk0lomQx5ld91hd5TJQEK8aV\nkAkD\r\n=klrw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAVJh8u0VBQENOOTlIrlfvKFUt3NsCNLqPiWaBiHhz6+AiBg9Au4XP9Gsmrb/txXfADQZQ9oQzqtylmb+fXKHnRObQ=="}]},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.16.0-beta.17_1621701977004_0.9582247986019423"},"_hasShrinkwrap":false},"0.7.0":{"name":"kafkajs","version":"0.7.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"jest --watch","test:local":"jest --forceExit","test:debug":"node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --coverage --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^20.0.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"923f69781e7d2716a50fcd5dd80096fedf856c43","_id":"kafkajs@0.7.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-JcRC8vomG/eXTZ+9bBSlybneLs+iR8me0FoRgM+Z7lbx831wwqKGHbKjaq7ZcgOMM7VPRor5NHdEX+/Eai46kw==","shasum":"db69a1bd1f1d91461f991e9b468696bb6b5bf79e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.7.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBIL8S//BcB1BCXf7dcR+T2fztB+1IBkz5QqHtwFo2MLAiBD6YUBwJFhsSwrf5vQlh15oUK2egIHfBfQWFX5ue4WMQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.7.0.tgz_1516370066561_0.39668251224793494"},"directories":{}},"1.12.0-beta.0":{"name":"kafkajs","version":"1.12.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"fcf64350d16bb8af09b1e16706dea85901417cbd","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...fcf64350d16bb8af09b1e16706dea85901417cbd"},"gitHead":"fcf64350d16bb8af09b1e16706dea85901417cbd","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.0","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-rV4Z22YLt5FAme3JtwvJ5/7ENsvHiuTz7g/YpGkOH2sqLaKB5IBAEOJrGH6uzqD9/eb8SFL61bNPNA13j8gUpQ==","shasum":"3b2a6a652bb336070d03eba07f34451e611f67ed","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.0.tgz","fileCount":266,"unpackedSize":478355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdk1gpCRA9TVsSAnZWagAAwlEP/RqqZeNQBZ0sqxuNxvBo\njFhuBIZcSAo4PQ0f3FiYsJidkbWxit76NhmchfAonFgxWMLGVeImgmQ0e3Eu\nzppJADvLB5Zpdxp2zWJXsC3JYv7Dxf8tUhOZ8ffbxPeKLNW5xClc2wB0UsAj\nEVeqknrSpjfEIP9/d25DHDdixH9UnAT5hAamuryb7o0lg0uBWaVb3ALxTvhf\n+xJsMhHRpNjbFHi/MsdYk0bHkDQnvZEt1Ci7pm88olJSgoHHpwmAYzmRX/V8\n3u4doD1RwMhsQwiJRn7B/3DiwfUtm/ls+1j5Jjl9NQdYrQfqMB9Ak56yqxhT\nns2j+1oHz+RQN8U3rChMfWPffQ/HqwioeOrzwiCVMEH3AGM4ayT3cB735l5w\n4VhVz98mrY8Gy4eIBH6IkH6MExJAbyfpQCRO/I2yt+PLiSMpmbyBAj/hhOOg\nP2BCNoFmL3XP1Rgggc2Rau3k5vsgUNUoRj5WqF+ikS5AWvDbwbVuDfWFgbTA\nBTgEpZghYc/Cmffkzed61wpil2fI+HlFWKA4gX2WOpYwhfFXKn0GeIRe/OIZ\nZiKqkqawBM0j+jTec7tyjcquLC1zcxcJQ/fUEpvgWDWfN+l1MHasC/qopoiB\njLA7H8XIM7V5LeMeWsYL+TooxzY6N7GP5dS4NgxDWE4APYA03N0lbpgadJf8\nrLVY\r\n=H9T5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSWRoRmKgtiprvqOuYeMaIcZUSzZ1I7rP5/rA8qPtmhAIgf9FjXsT5QP3DKIswqIw2s8HhPU4bpj5/MtRZ+xhUi60="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.0_1569937448406_0.3179386861030522"},"_hasShrinkwrap":false},"0.7.1":{"name":"kafkajs","version":"0.7.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka"],"engines":{"node":">=8.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://github.com/tulios/kafkajs","scripts":{"test:local:watch":"NODE_ENV=test ./node_modules/.bin/jest --watch","test:local":"NODE_ENV=test ./node_modules/.bin/jest --forceExit","test:debug":"NODE_ENV=test  node --inspect-brk node_modules/.bin/jest --runInBand --watch","test":"NODE_ENV=test yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh './node_modules/.bin/jest --maxWorkers=4 --no-watchman --coverage --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged"},"devDependencies":{"eslint":"^4.7.0","eslint-config-prettier":"^2.5.0","eslint-config-standard":"^10.2.1","eslint-plugin-import":"^2.7.0","eslint-plugin-node":"^5.1.1","eslint-plugin-prettier":"^2.3.0","eslint-plugin-promise":"^3.5.0","eslint-plugin-standard":"^3.0.1","execa":"^0.8.0","husky":"^0.14.3","ip":"^1.1.5","jest":"^22.1.4","jest-junit":"^1.5.1","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.7.0"},"dependencies":{"long":"^3.2.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"72ea7f38f9f9c996de345c91e6218374fe1fc942","_id":"kafkajs@0.7.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-MB1mkYqpr8q58TsuMmRh8nX7Pne/IzuB1Epp/kSIvhxGWLY6nSXhwGt1MuuZL4zPVakJs5a1Oom32rsVOQLr9g==","shasum":"dc0d94ab99ec03fe3279b068c50d442ab971e027","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-0.7.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA6ciAbNC/DP2LEozXMuHnzGq00FgKpzMHPCQAsWOyxOAiEA1/89j0hKThX0yerVNXBnA/ZfLWA6G7vN1IkPnFt3R04="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs-0.7.1.tgz_1516698433999_0.30563571699894965"},"directories":{}},"1.15.0-beta.3":{"name":"kafkajs","version":"1.15.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"be820c2b2da1ea0297ab173c91ead9c23fd5eef6","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...be820c2b2da1ea0297ab173c91ead9c23fd5eef6"},"gitHead":"be820c2b2da1ea0297ab173c91ead9c23fd5eef6","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.3","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-PCPNuVo/KZuYrhgIWX3AzAgHCv8lzDccvtNzSIOI/1ogSY5UMVQOJ2sSyWZgIkvrGntg/d5SkqhVWWCr22PViw==","shasum":"1cb38a2f5a892863f66de6ba5377448778506301","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.3.tgz","fileCount":326,"unpackedSize":596510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfblhxCRA9TVsSAnZWagAA4VgP/iqWV/S7cWXU+xUVJDys\nzchzDsjl6KgDSjXIlXPuEWdKGy3rMBbiU8mhASUXU6fkByxtB1n8Ug3dPhwl\nKUlNbXRts2Pki3RpsyFkEaQ6Esw3xQy7+2zt6jexRYDNR9XVKrYxQA+F5agK\nr36FLJe98jc83xhpejsvDT5McM5peLzoCv8zjRDdhoW8xVExyjDU3E5VIebI\n2h1+tnZUY18X72VSmDjtH+8ekulPwfGB+PzmitSaI2HQYqAv2uc7rrA9swP7\nvBtwUOSClSZLWctw/pTFgoooaQATC8HvWn8eu1djd8a4qxbL+kbyx3aMCCSC\n3kLcXXS9GVNxWfuyJD0VE2h7NrtBFns1OzhGOkDa/MXD1FCxum44sMZYtbIp\n/ixvcayfFoF0zY6NUqOl+3hafRD9Ted9wXKcwdty8cPqltk9sJ27s/bUbUV4\ntekQkfvWJurrE1bQllUSYioLa1otXDv4mM4dw0kwcOS8LIOAeU9GbVVawLvm\njF50TTYjrEL5YetZcsPZ5zNm6KXFw4IIm0zTVqgbqk2tbzgUk3pWk5vmgpTN\n0pjy4VZFvTQHbhWAAI2CaWynmABGo3LOQqXPOM7p72PO/gAiWhTQTGz81rx5\n7AxF0EQj8ftqeEm1likkzBDTfxuQEIIyMq8RZx+KVmaPtE/GmTtUVUDfpK2A\nSn89\r\n=3Thc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqIrvXrlvgfDbdIwkMND32H5C0PSJTiLdvQuDOdFZMygIgS4Umi2PosXNJMNUWZHm5+PrytcW8RaGLbUiBPAPllsc="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.3_1601067120333_0.6810054109178798"},"_hasShrinkwrap":false},"1.15.0-beta.2":{"name":"kafkajs","version":"1.15.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c83d3e3cbbe2e0b6b84bd2cf998c2f202389a9ed","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...c83d3e3cbbe2e0b6b84bd2cf998c2f202389a9ed"},"gitHead":"c83d3e3cbbe2e0b6b84bd2cf998c2f202389a9ed","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.2","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-btYCFpx6kqZaqlCZqUhX6v971imQKVQk4AbInf8d10IOH292XTWQJXGNdxBrDkEP7ETD0ObFGkJjVuEaEjMMaA==","shasum":"d0b1664207998c183164f492c1f72e5690305b5a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.2.tgz","fileCount":308,"unpackedSize":578945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbkuiCRA9TVsSAnZWagAAr7oP/2Pe3y0QvE1PuSbmMSrM\nTY5aCuT4D92j5qQKxBk7dyU0ZbKrxpeKTk23AQ1o6xSvXeI3BrUmuaxnmgHk\nTEawsdA5ihLVNIS2f62TAoUyWNu4rpJlKOc2TA+mV5m+knpTKhBIV3zhpNJW\n/wPxAfYYdr5AyzX119tlGDYu/V3QBPvG1GOMkEqANoLUGi7K07qzjJXFiRtu\nKhCYi8xmY/Ye23N1tCHnalNDYkTjkZe/fD9XoowC+zaawCenWGaEtXMnybiS\n6/Oj20p3S0zo78Bkm/+OLZLl76+zZP3pNHAPqBmjuzu7AQ47E3T33wgRG8tq\nBfAjDfxg5U97zTEA+9ePB8ajEEu1l4MEBk8k6uk1MWzF3M4YeGiaqcJVIK8G\n7UyvZklOlTrntpyLAsLkfbOX8pHQ3O9DJc27/izHn1wMpH3cQ1msTsEkzbhH\nVv3+utpqEfX22DoieqYud8qqm5aOxJbU0VtD/AOSASpwTkYyLm7B9Cot4PJ7\nWxiOnrG889P4k6bztSUHlhGjbQeRSQWDvMJXoPebwv3nk9QtCFAEm4NPDZdG\nJ/3vw8OalMwG7X0xQx6K3xY55yJeJ+XytsaRpg8H5M36PRzAIUOXJ3FLHDmw\nPfQuSaSbPkqCD3mjH91GKu4+SubeVtpDlqW2xog1sDkcjguoHDufpanUAPoj\nth7K\r\n=DPfG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFasSfFgThNxTgDdC7Nvk7GnoU3ZxmxPBCxkkzSEroqIAiEAqzNBSOxEfZwG5xLMXE9cKJu77Vx50HdJxdHW9kEB1Vs="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.2_1601063841478_0.09306963832505244"},"_hasShrinkwrap":false},"1.15.0-beta.1":{"name":"kafkajs","version":"1.15.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"930bd2458ebe695658939e129d5a0fa48bdcfc02","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...930bd2458ebe695658939e129d5a0fa48bdcfc02"},"gitHead":"930bd2458ebe695658939e129d5a0fa48bdcfc02","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.1","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-K06XRGxKNvlPClLbvW7rquBhgwR/PR7+dbm29cMCf9TU2IfmJ7UXR3owCkHYOzAF7sL8bXYmUe6ia5Q0ryIPKA==","shasum":"abbbf2dfe792319be967c7baf251ab49bcf16954","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.1.tgz","fileCount":308,"unpackedSize":578945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbkGkCRA9TVsSAnZWagAArUIQAIY7AV5qhP2iYw7sqq/C\n792ZlE6eT2oAlKw65nMObS62sNW5htP2AqJbgREGoTS6quRDPZuq4aYyTsdg\nqV6AuMIhzLXsSWdiSMkZgwCdF0vvBQscxmCmSa0yu0N2CKKlvwxy3OzFhjv7\nj2cU6TBuLt3sFUsYn29408d7J609OKBqm+aVFx1XjgHFawnwxXKpnaNfR1g5\nDMaun0agtDu8SMM25j6FaFZAgpchWDwSIayu+6+7FjRgr5LYB09as/1XrTW8\nzyWJM6lk5gc8g2Ul7ZYE24mSr44PmnWgXu4QkkTJykuycQpo/C+m7y23HaYD\nsr+cQQPJUavSR3rvmNqyuTl276PBR32kxS46hnu+xkA0xT6WPRKY6F/BKnzQ\nlHJFsvKfgYovfV6eDQly4G1R1tHurzCxGbF2KsB+cDl/k2LBicTXAJSuIADF\n3xNwz87QFPukS1mMTxZ+M57jnCsX02HH80bowADhqvRj+S3txFjjoZoat4Oo\nAvRPpTH0v0MVz1RjgyUECzkD3lEg8mt9Ee5iVey2F5D2i5Oz201uv7One51t\nQI97tTC1Z8qVv7HB1JZ4a0YufJ/34RbXMy1JtsVoQMHx2tHMT/WqM2CtwuhA\n8zQNNWtmRfztdhG18hOGQOQibVtxKZMZGeZ/s6YXyDLnwB8FF+oiuvb6nXQA\n4dL3\r\n=LsF8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2dIQJdCjmsG1CltCz6uXSfotOmceKfpK4wWxJ6uXSmwIgYKYlsLkpu+RwXy+MCrKZIjjE3gSEfeObtawIkhqpjCo="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.1_1601061284108_0.9108456071977424"},"_hasShrinkwrap":false},"1.15.0-beta.0":{"name":"kafkajs","version":"1.15.0-beta.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7acda2785ac0ead9b26bd04c471ea4520ac0e150","compare":"https://github.com/tulios/kafkajs/compare/v1.14.0...7acda2785ac0ead9b26bd04c471ea4520ac0e150"},"gitHead":"7acda2785ac0ead9b26bd04c471ea4520ac0e150","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.15.0-beta.0","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-Pl/PsuT4uWe/pyNzcAri6Cyu+Gr9Q8fuSw2mauUzrfcYVgxWZobbSCpKMhSD0tQQT/5w4RIzFsq1I/Ky7RJc/g==","shasum":"c69bcb62b166e1c138e6a65c6c004cad965576f2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.15.0-beta.0.tgz","fileCount":308,"unpackedSize":578925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbKHtCRA9TVsSAnZWagAAdTEP/3NO1ECdOVX95s0fmfxX\ncsNztJYy+pvRKnT1ACuldb6KkovT5F4+/aMjoA4Lcqi+K/HWOrcf0bUvVNdS\nd9VR6A6MJksp/z8paBnhV3oc32Cfs5NHuyw9YxX67EvuoS2bh9G1RieYXutg\n9ZzA2cG8+4Txbsf1u8Y3wOGZs+qJuak4siozoXmS6QVTSeWJQYnmmHaNK3/m\n/d+AakBkUt8mjg4cB1zlL1IK+BWZjosCEUdsBQrtznvzNOVqXtdBT/Wp8WjT\nfD8cQPH1uYoR3+tKkW8CpNXeEWj5aa6TyRvIzU/iaepQZ2rjDprYakcc0lh7\nw4bYZwWva2DS874tsPZIbEoiRK6dVat3oZGhvELpYpjPnbja78imcyXXake9\nB331XIiysftW2mSXQYqX0ZE4v37GHDmxeLF/r1t9WWLJLXymK0pM2SXvyESP\nSAHb5KIkaPONC3QLeLlR1rZyV9t5xFPvSGcLPrBkAzf254mWM1mgHdFTWqtl\nJILMr2OxeQzG1Xt6SQm3WXpuoXMGMmTpRThHdjRf5W25fFB93NXIFBTBFAlT\nmVY81967e9d4DAaOONIZneD97hnztkCZwRikqR/84Sq5S5O3RRgozBy9aOir\n9r1IWkLw4WHdvnUP7Eh/+rgg35W4ooMly5V8p7l5b6XxG7fAxBESpO3rRr4R\nIQsr\r\n=gVmO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXMFf1d5WWNfUYN6V9jRE9geWk6LDfBAWzRiYydPg8CwIhAKplu0SDOilCAoxi1/kblY3ZbKLVKvIa4rDPCAtYlifb"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.15.0-beta.0_1600954860514_0.7666344137908427"},"_hasShrinkwrap":false},"1.17.0-beta.14":{"name":"kafkajs","version":"1.17.0-beta.14","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"a2c445f43f75c4bcd98c1fe1a2a3b55798cffe35","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...a2c445f43f75c4bcd98c1fe1a2a3b55798cffe35"},"gitHead":"a2c445f43f75c4bcd98c1fe1a2a3b55798cffe35","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.14","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-h4rxFRwQcpNUBaVyfymWyyCaRwgr2M6yPCSuiR3cGxveWSlcsVTJmJRUu0MsCJZtzjEyoUDgGRdsG2MvHpGa4g==","shasum":"02511bac463253f93ce523b10eb3bf68d494d8b2","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.14.tgz","fileCount":387,"unpackedSize":709132,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFSAp9Ga4nZiphlzk4sA679k+Ihpzv83blcAq/hcUzXkAiBUhl3VoW+VoKIjrCc55ISZ6R3wqzJAsctdKgboxevyaA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib9U7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrY4Q/9Ey3Ss0w6qyFTsO+Ey+7jKT94DNaB5wKVO5F+Z+zGUWC6ieL8\r\ngjxhX5hUv+eu5oj/ltmk6kcdj3+izNnnoURU7mekqH9xpKyudM6Z2f/BrM4Y\r\nECEWtsoQSVUjePQ2wIEfXwFd4oM6ARPrLsdyRFy2pBJVmHpzTRl76ZGSV1Ar\r\nwIKQibMpNGeptHITsWbbycWxHf4IeV5B1K+6MPuUy1o7iJ3GZ225KEfiayrN\r\nfNAdFVcktVLLK+iSf8cvPpUbntmG3AFmtNyi/N5O2F3FRo2UptYD8PWw8Eo9\r\nkiGc03SZp1tcM0fpB9p84AVGEfcu5VPDGqI1Pm5sAjnOqMOHYudDu2hCt79V\r\nIrNB5KGKoLfwGUCZavva167bRToDykNFtzVkggnNX3x6blScnOBVK6MfVJYx\r\nAAEXQpz/vEtr8kQfG5XReLOlA9BVRKKRETjAp/ly0sMDeOE0wmiPajSzCeLR\r\nkqkez6ILfJEjVMpurp4pTwp9OMFtGEaSJ5lw63vCqkUkhH2m7L6zSiB97n4D\r\n4ULNeBY8X3SfNp9YD4eXIpHKnh6KzkIML/ObQveaxAthvs0dnBAQUE0MG2xI\r\nnPQm7jmmGV6i/3qmpOwc1VG7vRBQe//BdzCzrFQq0qSt9HzHjQRNoda9w/Qv\r\nRdVA4BDl3Ys2YgQKxmC1jZrc7MgaNQ5DlDM=\r\n=3Hr5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.14_1651496251646_0.8807022667124857"},"_hasShrinkwrap":false},"1.17.0-beta.13":{"name":"kafkajs","version":"1.17.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"83581725d855183e1bb50e716a857bca0c5c894c","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...83581725d855183e1bb50e716a857bca0c5c894c"},"gitHead":"83581725d855183e1bb50e716a857bca0c5c894c","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.13","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-bXRKmCNaZx9s7N8XesWCavFH/lvwGt0za45Q4tJea9n53dJ1p1Zj0NSyBIubw/NBQAUAL+uhiDlqL2tI3wZlLg==","shasum":"e6c4011868628e7c8ac020002f57640db8b4dbf7","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.13.tgz","fileCount":387,"unpackedSize":709066,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMLkLEW+OrlHaajviznQyqkGpLlbv/o62PKSZrGmtPdAIgCy2HIIjzzWXJbeMFmoE6tywGM11ojGqNtqiTTkb1ZUM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib6UYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmphIA/8DlWuKRc5J78quSAXxChndLlDCrQFZAU+dp9n+h6qTJcyfHaF\r\nDCDKcDvn2GHDRJ+MpSiFDlgx3I8h7U5UNJFvKfMyr7m/YfVnQ3Oyd6gNxkal\r\n8dkRbnTfP4nUieVF6Xqsi1pIH/CUHNQSYTiVZKMk8+7i3ABRqLB5rRGhR07O\r\nQNKT17SzrGENib0l5YCUebcwsDyLHwOQ6g1gHT7SNooa94aa70bCE5yvEH7r\r\n6DoYPRhjfRHqdj3oR6LpTXmf+VWjcbzGo3xRZfvz3ruEnJmpNzOoVTqQuuRt\r\nPncvpvmGvIS7Mgctw5DTjs+8nKYf1S0bVxXMhG8ETE1bXg5zbD+iO8rxFt+l\r\nnroRq+sgI84LsezClD4AnJwyStXBWOqW0+8MRIJlyEEGtTmovJ3FqUUDoUZU\r\neRnXfPDmJxd9IEIUwhkpupd0Vq0y08k5m2vxHRHpqPuYUqmD/DQlUmSrcHqz\r\nde8Zn2rGtGKnJwHFX8Cx1jqArlvEjkHfKJSX9RUtm0286+2kKafBlVhUFrjy\r\n8GhB45jBNf8ld2s3cnwkPVALCX0iWkXZpMJbaZO4PDYyeAWCP+MoGVySdPxc\r\nbJS5r85Y9kx5pE/8TyPRKmq5U4rhQTx9nHL7VOcZ0en5Yyyz7m0w3wlBYwXF\r\nuqsCvecpAis5grFcElu3ZDrXCYlUsj3fXK4=\r\n=5MIo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.13_1651483927813_0.4472522542060404"},"_hasShrinkwrap":false},"1.17.0-beta.16":{"name":"kafkajs","version":"1.17.0-beta.16","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"74f8c6a87ab5bccb089b8a040c8899be3a2c1965","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...74f8c6a87ab5bccb089b8a040c8899be3a2c1965"},"gitHead":"74f8c6a87ab5bccb089b8a040c8899be3a2c1965","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.16","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-6IYuz5SATfhkmfElTTeyfEpv6o4TLdcz1eXW1F3mN8ym5uDzfTcLihoG/dw4J74RVBfiIb7h9NYoScafjAPo7w==","shasum":"acf715fbb5e16b5eeec2b3503a071eeb716e8461","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.16.tgz","fileCount":387,"unpackedSize":709697,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE7Twj8hxNU2HYVUSyrWmOWGidjXFjOuCu1HvEsVfauUAiEA1OIUnkH7+tFRf9VYBIj68s1i9EvwCmv6vG6kK4qYtlo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib+5xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmomvA/6AhqyV8pXGbELD3Lqs1vAtpS1bLEgOh4O7Q59Bfo9EYjTSQb+\r\nCxLfYWSX0FleAeLjaDU4ebOQneEAuf+sWQDXCUSIxqf+bik7xTtEeajMMHcs\r\nQHS4IDT48NNnZYKfsBnm/OlitiZ4o8ZnXP7r5yvbFa4Nf9RniqWIza4PsTSJ\r\ns26lHDFf+NY5TEiV1B3mVybSq1FGSvUV8Ep4QrLbIh0da6vDGM5hbzJBs84h\r\njMeSD2Cs7/j6v0B8Ds7WWwCxlbe6Tbld7gtKn3pDkvCK1SnaU69SNW7q8t/e\r\nLuC+q+DkwMKXV4mFahCnEUr5sXu3r2m3Qz8KApOviEBO95Ix56AixIgaXyoG\r\nnjF1cPXIN89Q196N6eJ8mqcTi5/D3m8L14aL2nXZDsIYs5i5dVt8M52DS44J\r\nyXln2L9QH2p08f70MSWuymnJ9h4NivuowvAivQBF8l1lxI50jmDwFf2Vh5LA\r\nyKKEdIWd1BA9AbHspeMNJ1aAMsFSRPNrhH7fMOSYMpXz9Wtu7cSb6Kbzc4FS\r\njll0hrerYpzAo3zvOlPmSF4etcCWjQ+b7agU9SKm3rnFgdsuTLoaMlSF3egG\r\nSH+deOVkq5En3OQ4EmmXZBF5jx532V0A+1deV/wzaabpFpJZN2sT2nqM+ck+\r\nrSolxGADgStSZrikFKR1lidwvZtPv9C/Kd0=\r\n=qrWm\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.16_1651502705156_0.8811674330189994"},"_hasShrinkwrap":false},"1.17.0-beta.15":{"name":"kafkajs","version":"1.17.0-beta.15","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d86a8d1146a3ac0815ff1e2755d49573909a96e0","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...d86a8d1146a3ac0815ff1e2755d49573909a96e0"},"gitHead":"d86a8d1146a3ac0815ff1e2755d49573909a96e0","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.15","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-n2nz2AQR0HiCBnhxCdpX+9+PpCtWfbdoVqbDfMb9uZYyugA3/ZV39DVUY7mdpD3v89tG9ddUsioYFtLq8IMuBg==","shasum":"25fa2a574e9fda812d90adbbb1908279fb886b72","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.15.tgz","fileCount":387,"unpackedSize":709659,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLvxTH2sq1bWdQN7HfdHWBzIJEBzo8ui0dJ9EmfCaI4wIge9sDGE0LEXeRmitPUwJFuLLLN733no/NvA0gOw+A0bk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib9gFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqO+Q/7BXADSKaB8Gr+y1hATOk+SvXyZ/P1HKVIhhadWf0zZyo/2yxK\r\n3WNjnkO+2mFhDS6fOj64I4TdhTC1SxSeHX+urEv1Iv84AQBUBSVWAeVY4pVK\r\n2zfI7R0vIUFJGa6k4uqsaJPMJL6Xcd5F+Qb6hs4ZRyaobl09Iq3+P6Z+qNOZ\r\nagaiUOCzdtz0M+oB0i3mnJoh/UnhRY3GbhF53VoT+fnc5vKLkrLTx9blGLpz\r\nr7TGgl89RcF0gH48PpgbOWGSJvz/ldGZD3SRg+oB5kngQaStePguM5Xhem5F\r\nQSY6NtZ2Hu1tnc9Vx2GkZmqNquXrG3DV5xnHIRLLJ9IPMRKZIHaOvTTfch0f\r\n9X70mpteWFvDynuWg8ug9rR71pu/ZB5tGsoOKY1wTJU5KkfBmHMjoMaK6Rq2\r\n0y/MmM+SFO7qeL5m8MXjbr7Xuic8KcratilmoY44myjwkz8FUFUb0ab5dja1\r\nan8P02EzVIOzM254N3GrMo5xzu1v/amCuCB1eUohNDvDMiBT6Jh3tt3d4Qa8\r\n9LTWgYi+rnY+VYlgQzgkS4keyUOGyW9uPIN2HANwkzgYj3AhHwNkWKd/Pf5N\r\n9p7n6/2mk2OjeQDusPfR6waydPD1ZAzow1qdFszQ4fhfMgb15YWcyyrbn2BJ\r\niLOHF/DE6uwDLRDId20Qok6M9bPm96e/sbk=\r\n=7Mgu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.15_1651496965305_0.272964198990874"},"_hasShrinkwrap":false},"1.17.0-beta.18":{"name":"kafkajs","version":"1.17.0-beta.18","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"332314577685f505d794d7cc36d5f6af0ff1a583","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...332314577685f505d794d7cc36d5f6af0ff1a583"},"gitHead":"332314577685f505d794d7cc36d5f6af0ff1a583","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.18","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-wqhW8X8z5Apf6OJurCHBd8UZgyT7ec1qQ3XNyl0tm5Mohcwd082SWU7QqHS4QdFXBWtLB45UQKuFl1HS7D78PA==","shasum":"6b0eaf0cc6f5834615ef132586a7cbb8eb88dc4d","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.18.tgz","fileCount":388,"unpackedSize":710912,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICNQoZ6kevtc2/l4rj4JthbOQVAwe6DD4E+gHvSbq7LdAiBQ/zwa1XdgrpkWVMekR4tUHy1+jo4Pc9ea9sTDvQ7+qA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJic7YbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVpA//fEyBimln9SqCLktE7okUu4t6X+rfIwjnMx7jtk7uGxHY2yrN\r\n90Eg0Kt6uhD+SyZYMT1lRPvfe5rQNunbULm2UnCtQr/s1riG2+ddqC+ogISh\r\ndflrh6HF1VCGR/YGdKgjKMLafO1bQb3ki8v6DAOHqruE6+3PUjisBM4WgaU+\r\nSNnQDYWVa8KWzyhiGG4WpFlUwiglGWd0FDbGgsxVI80w7X2rNu+CQn8+77+d\r\nvguXXfK/n1/ecFSftZrivczAqA4zFy5IOmMp8KbhgQl/5CLh1zYCBXBqNU9P\r\nkizYCUL8k4offvtWv+WdcA0Kd6WQoF+vmOMvVKsqnbgsh0BkdBmtJI7cjzxI\r\ndywg5sMa5mhYOGnwhaaXZxAReLo5JnRwhXfigQ4Djja/FPJwAnSgcFFaI35k\r\n+g/8LEupCaVSAzmTpNwjDrqmfgRXoMfiAVOSCsWO0nTRDTVT8XoVGE83ivow\r\nZ4dUOxecMWkkTSJMJMhthteaKbF+vmDDvDcE5kR4zZZYF3Apw7nZQJqtPXkQ\r\ndjb3rOeAx2632pUOob7H6PxG5W5pzFb8dvb3Nhr6sn7D9M9F/2ErlyWKeEoG\r\naQoJLnIb2Gq/GVtaKVj9tNLu3LxXMuBUHAwcEZZAT4VqwRKsSAivj7cs9bPK\r\nFn2CfZA9YcopW7ubFjx94zHSD7+0I3LSlf4=\r\n=vUsJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.18_1651750426918_0.5446668761376705"},"_hasShrinkwrap":false},"1.17.0-beta.17":{"name":"kafkajs","version":"1.17.0-beta.17","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c834b54775bd80340f13d028f3c3612c6b17f183","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...c834b54775bd80340f13d028f3c3612c6b17f183"},"gitHead":"c834b54775bd80340f13d028f3c3612c6b17f183","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.17","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-qLKzipd1Z5NXUfbn3BIe5E2KIn6/Hsj9odRxOs2rBCWXQPVs8QwrO9XbjoPMf2ggo7BRuo9YkryNPpJfalh5Cw==","shasum":"ee7de0d21d5024318a3ecc191706fa70da038e01","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.17.tgz","fileCount":387,"unpackedSize":709436,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwBgWzl72JeP/an+ydvhpzj6Cv/XgFbUNSh3IYhaAysQIhAMSLAApGcsYyQPqHeXRNreFF+7wMxE/XgMnw3e5HGWyq"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicOP/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3wQ/+K89TopWicsU6ygAKokpUdvvCW+QQpnw5e9jBXY3Bh+tra5lr\r\n9qgErCwZpetyiRdsjvHg9UbjGDweFC+8Y/0nJJKZLXLP+mXtNorzOX/X/9f7\r\nUo81nGPqKf17tRkhM7Q0/8AyKrwZiOpLfQvFoHHkL+5lkEWQPfUjWKRtYL14\r\nAfH+3ez2e1a9yKskdE9s8cplu5xDJy2ffZYlsdPKuiacWB7l7bbvnJpc02zV\r\n4sAokSroyt7YbQES3n8PmuN5kHTUJHkRjvW/Br5P6FmBTsTnosda31FysiHy\r\nPmXuQdJl2Uk80gr8j9KQcEMIkM3dvvT/KwBsrifQ+sOOEAvEfenKx7K/W5+x\r\n3Ubn8ECW3ghZEtFQcZTdhO54peQITEQiTaeR0PwY0ACU1Oy1/DoEiOe9sKmu\r\no/mL26VcNW6FpAn0hN73QWzoT646iCvvjDaK+rrUXV1mlTtpf/JjLpT8o+xO\r\nnZrt1PsEK0jppy6tPFeOOXWjHi986MVwL8hd0zCLbUpSETBKM321XZnwuhva\r\nV8MznNl381PCfIHqI2WhTDHNflx08C8e+g8v4CXxgl9zbVYag8qWanubBkNV\r\n5BeBK4sM/W86ExLc9920AKugnUL/4KnOCl9OOIlUomzrJcCM7sRMemPC39g4\r\nyeGNY/JTxBwIMip/o8CpMAPM62diVT/6dlM=\r\n=mVOG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.17_1651565567654_0.7767567077708069"},"_hasShrinkwrap":false},"1.17.0-beta.19":{"name":"kafkajs","version":"1.17.0-beta.19","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"7f70dea79bfb59d6e2dfa1dc5d0637d3cf2fc87c","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...7f70dea79bfb59d6e2dfa1dc5d0637d3cf2fc87c"},"gitHead":"7f70dea79bfb59d6e2dfa1dc5d0637d3cf2fc87c","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.19","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-dnUg4lANaQTt9O2jQRh3SLuKt6E9e7FyBFHJaKxRL8yegNsJpaEDzOd05QnnGzFVmUryNQfLFn9Ml7ke1NlB8g==","shasum":"f51ec4fd712be1dca22eb73c96992e4ab6878b3a","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.19.tgz","fileCount":388,"unpackedSize":712544,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC5hwsPLEJZKBl8d5K/m0qAklP6gkCTrt04Eg2sgvc6GAiADDGMtS875sf/zKh8SblwDc4ISNcmd6GKjTiMpbm1Nfg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidOkSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJ8g/7Bn0bL+C8tLNMGAd01efIqp4oR1NpOV40psN/IajHGCOScdvC\r\niz3KpsDvisGOw8SEPcEd3lIz9a97+I5PDB6MfIK2fwa6MDkxApHhZFProWoV\r\nqgl56H980KDMt3rXIYoechREANbeYLx6GarglqKBR/ptEot2QVq0s1Lztb/d\r\nXTBKWnFiZKunUoULckzxvLwxR8XysdDUA6KrGSUa88izBPIyuKhbQGwACRwr\r\nJPAMrtiBEzoMZRigzz/MY8/2v6W+xcl/VSLCux2pxMcgIkmScks1wAhbp9LV\r\nvOsD9/pE+AIzf//y4s2M56QroHBPbQp9vdqeZTrwUhoqmZ7WbbAQSr3Q3OsR\r\nNCQMz/XeCvSiZT16+/AMZRsUkuwNf3KKoysfF21TdqwBE6BoBQWpdB8QmoVL\r\naroqZO/tdBoVhfC6dmOtC8kNmCEJ1f1YdXSMc353MsbvungP8Z3kv5Gp6vDk\r\nAnmc2Dl6kPLLvPaJe2jO+5yH5zSRPLCwsJ897FaDsTN+EJ4tO1Dgtpw/gzHx\r\naeFreCuEtol9EehBxf+m6ySk08cjt1X1IHHYDoodMiQC59FRvgxXHG1JN8k7\r\nYUfZVcwcSqvyjJCwwyleqaJQYKWYgbmEwikPuEPaR/GrcaRdDkq1v0WA9sHo\r\nUmBRu5IoE4roUTnj15Xmfwc2bPfbXwIJFfI=\r\n=vuii\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.19_1651829009955_0.06494213082012035"},"_hasShrinkwrap":false},"1.17.0-beta.10":{"name":"kafkajs","version":"1.17.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"dd6ce4d789004d48e3a881611db8b3c5a8943a83","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...dd6ce4d789004d48e3a881611db8b3c5a8943a83"},"gitHead":"dd6ce4d789004d48e3a881611db8b3c5a8943a83","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.10","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-dvj9tsXN5C0m1iItrVEpDWBlqKGCb/kmlNqS2mPjKiSx3ECMngLSEtAJ0Xi9CzMiBSaCTN5nVE7OMOciFTKTqA==","shasum":"7eef790e47d3110b504d8e36ed2b452c207f80cc","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.10.tgz","fileCount":387,"unpackedSize":708852,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDfIAUBlKnfOq1AKlt93/Ok6HTlSDD77PFVKlFbdHIpaAiEAottJcqOZUv2lDcrudBkfR8mbmF8ayAnrzbV/Rbyring="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib48HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmppLw//f+yBcO/aLCNV2cUXm6Z0KOAT67vZ8Mpg1iZbJOw7J8dBxb8Q\r\nTvsVpQCx1GfUIhw6Z162nzTr9El/8yZbtqiHDxzjE4PTEYpJ0hhYnam0/qtA\r\nElS8pOlYCOdrs6gQu8WMNZ+hcyDy6DRtk6X93i6rb0Vzp1pv6IWxNy3TbEW4\r\nI5zImfx9VOhMPfdssYyp/MfCX+WgVIm+3PVqbcz3vD51ebCAN/cLNj0VRqd0\r\nd1OYJYPnbXIdsEw7430paZRLsLcu0ZLDGXOjEOmGyqshb29ptLJZipfXX3HQ\r\nYkg+m38eTeO3x20FfcKxX795XqMhzshsr+CCoimXWhcTEY0Fg5IqnLH9CUIW\r\nknTPMjXk+P1ee36BjiBhns0ESwP9TOGs1CLyGiAMvRAp3gkJ0NlOcRPcz5a0\r\ny1DQkxilSb1Z//GBZrc1dwkbpqxUcHN55Iv2xNp5ajULOzI8lsmpcZzzs6AA\r\nxXqf+wHau1NXUzDhLhsKb8YHjJZMJrJv5KSEOFA4FTNPuSI4dQqyEb71J7OX\r\nwu0K2pc3uR9opNqopQMIgANUwsoeks92fNRoeRHo2gQuvoqpuZpX7fkCB8CZ\r\n6Pf82lXz/n9MCzHDLvgoapLjrERp9R+p0StPzCHi+gNllxAA4i728pp0MS7S\r\nt/4SqJ58NKSChPnVGAksTZ5weoLVoIA2VXM=\r\n=YvJo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.10_1651478279214_0.4582014112242696"},"_hasShrinkwrap":false},"1.17.0-beta.12":{"name":"kafkajs","version":"1.17.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9cc9db149da5a6f9732e04d15b2d86866e3c2602","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...9cc9db149da5a6f9732e04d15b2d86866e3c2602"},"gitHead":"9cc9db149da5a6f9732e04d15b2d86866e3c2602","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.12","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-J4/ZRsouUso77gsCHaa6OGt0ewwLeOfrHfNK87mRunzyGkskcVjItTGAGNl0N1s0gpG9ulPaMZnISI3vj8SOaQ==","shasum":"97e2f5b5dcb41f00115cfccf5cd96b659d0a8170","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.12.tgz","fileCount":387,"unpackedSize":708748,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBUukshDlZm904/a1HFLDRqKrZxuKzenQ35iIOKyedXAAiEAqpkxeHuVdms/2TN9DMAXEMds41yttDm5WjcueNyL3b8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib5wTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqurw//Youn3Lr+nsuKyIBAtgqu3inJQS8oR79wPOMC87mm5nyg/HLt\r\nLmuNousxCeD+kVj0cfEqqhSKkQ9vgVBj/vDFtIu3Jvu06PkhZukuyNM88mgW\r\nM3jpvls6m6fIyaCENzOkPWxDRqAOgrXw0LaNDPeR6UIyULpRb5O16HFNbYbD\r\npHnObIzbYheAnprIm1KTa9zh6MJgZ/gsFixG0ttB58tdOrZjTuEOvsAEgvpR\r\nMrScFRMA5BlDdUoueVZyhzEGgxZETV6yAY/DAnifn4+L+fVbhaGSsBmutbgf\r\n/NGPYW9/Ad2OFbcS2WI1XceeLqhLPXu7aJEvQWok3ZQLrW0MPO0YhfObLzPI\r\nkanQbHwWn9O8IkJcK1PVHtk3ys5Z+2XyalyPqBbaUGFrQWD1TK5rSZM1QZ3p\r\n005kD2GUK1qKt94uz75x7rKS0imWuqNI5gFe5AoVMqM893VT68dd+EUk7SiJ\r\nIggc9pR5f4vvoblVqiVNMivx/iWDnE1IpKDiU6eh4CfgXNoNNAa9eA+O3Eqz\r\nYIcpbr9SqQliOXXEheXlp+jPrd2RrIqMVY2ft+Ag2U1CySVdeWcLBEl6Wb7m\r\nqK3eOKF+2rrtoJ3HN+5QmHcjDhFnzXD7+r3uHsuSbyTm4QMYlx/t5TDC3iyG\r\nAYAHJyVyK8NWKxHrB6kJvtev2258FawAUEU=\r\n=j3g8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.12_1651481619255_0.7280073737408661"},"_hasShrinkwrap":false},"1.17.0-beta.11":{"name":"kafkajs","version":"1.17.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"f3d6728d07fb915b3ed199429554063cee94ebdf","compare":"https://github.com/tulios/kafkajs/compare/v1.16.0...f3d6728d07fb915b3ed199429554063cee94ebdf"},"gitHead":"f3d6728d07fb915b3ed199429554063cee94ebdf","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@1.17.0-beta.11","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-2Qy6lKlrCjRl5n/DC9d9Ar+juFvOw1qg221g7iff2zC99Cmw/tDW9M6Py5AceuXSwXR3MM7OD0+iIW2TpL0uhw==","shasum":"0a550b5c6b5acdcc8e861cab7a2e8648a267d77e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.17.0-beta.11.tgz","fileCount":387,"unpackedSize":708850,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFWGpCLbf8ECSxIHViMmGhpsNJ75jsmKf9KUTOKVxbq+AiEAk3AALHAMiCxB5hIXb+/5sdT9akDKuwLVbz7jxvBJJTc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib5nFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4JQ//cWo6XF9L3MixrnlVB87XoO3HGKalSMXgr8Z2BuBANV1WVt/2\r\nndVy5zK3dletsegAG01UwxGuqjhMCDwjDSALcZU0dv/DI3FYQtXTVfgwM8XD\r\nK//InjR+/hcZ9ODejg0m4PPtCez4S6Sp3rLj8Sn3xLfoesFdLIq1A0ISVnUq\r\nQhgHVDacHIa0x9w6waLmW5795mtDOAtrYizgsoME1yC4oPgBNNJa7meUqefr\r\n/e1gVvHWK8pX27DQwMq53dbYvtwdoMeQW4bVShi95XgfUbXMg4ZmsDnqMLtu\r\nflypy5uPcm/lbdhAfkLRlcuFZhLmpn8wyPBJkOaBQNNrs9BTnSV8WO/aD9lY\r\nrSDGdzWhrzphkP+1J/oufxUBkbGpc8AnUt1j66LkFNcfaYIicZpHwA2Im5qb\r\nnAnfMFVPG2Mqz576XRx4Y0pqsrjKPYARcZF8c57+Tq4EG/RB8YQ5MygQ89c+\r\nbyN9wtWGXhwgkU5N5Drm76PbVozGofSIadeJMW/vr8zFYFG+pimnLbPjFTKi\r\nmVdOhaI8S5iaCVQjvbGno+OGSpknDWS9tJRVfyVQMrhPG6fG9OuXQ2EUcagk\r\ngrFa6nc7kJtdoFkleqBR2L4rXU2d00FiMGmuC2eT/DczmQwIONKorP5y5qfI\r\nc158jnpgBk8fukU0MoPd3m0NOLAPq9lWZGE=\r\n=Iyzi\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.17.0-beta.11_1651481029294_0.9926251956455845"},"_hasShrinkwrap":false},"1.11.0-beta.10":{"name":"kafkajs","version":"1.11.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"80af9dba13da9e1e588753b02053478eecb32605","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...80af9dba13da9e1e588753b02053478eecb32605"},"gitHead":"80af9dba13da9e1e588753b02053478eecb32605","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.10","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-z25BaPr3UyfrwtmyRAG0cGFvZ0WV7etjei8jJPDcfahATUnh3ZaHM05LrYiYEEoG9wTv7iy2fMfWYT7PKPXkvQ==","shasum":"5371d348b3ebe0d6ce03e53ea173caacc521385e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.10.tgz","fileCount":264,"unpackedSize":471292,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdX5a0CRA9TVsSAnZWagAA0LsP/RgLxHLWNyObd1Rn2uVg\nzG8hnVTxW6Ajlz783xj9Z2pUOZo77nQ8B9yRxiWs/0fiE4R9UQXCTqFePhr0\n5NQLgfbJie0fOXUhghwmlmJwVWzWrNh91XoeHN2dJD+vndNIiV57l5eZHhHQ\nszSJG5Gry/Gqs7M1NgS0lFuqky3z12EP3gXCiEjuPGrkwGoKe5b7npI0aph6\n7vG9YXUNUAp2aibY2+/TIMKgs22zLBtbOR0u0+kWPhEf6ug59znVnUU9qYAI\nGQj9Ywv5Y8AFey+wSCFkl0hucDovelCg9HyFGDzPIOTMVhGF0G63OnDm/bag\nXM/nnx1VFP72ElRiYExnszaP2Rv97m4v5WlZ5eXAZv9VA84HfbAoYkPexRit\n93++7Af5tuU7Kua/yrLDpG2AUjmO7jNRcpAb927RbvxH3w/eLxkgDj/b6qfp\nlgNU63U/GOa60EPVZrVKQPbHP99UUH8n9axZkrPFmOzC4ydTwS519wK8fNKd\nM58UzS3mE5nI9UtdjNmOMv7+RavuGnbOvTNFEM7JWuAnitdud1Ytb7UMmu3l\n9AtG0Khvzry/GMAgplmSDPi+/71oGVxNeDSD4+P2IzcX7xK6CAPgctIPkEef\ndtND3A6egGvbxZdEM2LUPZdPfdd2koSlPXe5nqH9ltUgo1lDO6aAK4CbTeJr\naYcn\r\n=pnId\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFFq+UjYNnr87fOTrY0/Oj0mW5OTfpOuFRQLEa6EAr+SAiBZ2ImZ0xt5tUb9iH11X70G14r1c9NalMJLFAUJejYwYA=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.10_1566545587648_0.9054217605988402"},"_hasShrinkwrap":false},"1.6.0":{"name":"kafkajs","version":"1.6.0","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"test:local":"export KAFKA_VERSION=${KAFKA_VERSION:='1.1'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest --forceExit --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn test:local --ci --maxWorkers=4 --no-watchman'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn test:local --testPathPattern 'src/broker/.*'","test:group:admin":"yarn test:local --testPathPattern 'src/admin/.*'","test:group:producer":"yarn test:local --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn test:local --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn test:local --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\""},"devDependencies":{"eslint":"^5.9.0","eslint-config-prettier":"^3.3.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^8.0.0","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","execa":"^0.8.0","glob":"^7.1.2","husky":"^0.14.3","ip":"^1.1.5","jest":"^24.0.0","jest-extended":"^0.11.0","jest-junit":"^5.1.0","lint-staged":"^6.0.0","mockdate":"^2.0.2","prettier":"^1.15.2","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"gitHead":"1bc6e09be6c567be089e3cb63ace8c9b819f6e0d","_id":"kafkajs@1.6.0","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ZNe/3gsSIXuINMEzOBWlENlEh5HOo6dWdyUvriVpfPEABZLeTaVZClIvNX51qwC88gackjN13G/KunvAxpZOWg==","shasum":"42677a5e45ca7084ad5f43dd3acf903c9519632e","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.6.0.tgz","fileCount":219,"unpackedSize":388148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcoc1oCRA9TVsSAnZWagAAb+cP/jAPXk84rMNN9gZrtYAG\nETwN+Nzxo8VBQGPnZuuy7LZqKsBNkA5YXmf1vPrnoCOcb+/HqWJGvLKsqO08\niRm0F1RZ968makckWNaX/WuG+5XXNs0v4lLaZ1rkZkG7AKcPxKInlQrHPg2G\nlmSo0Y1ynVmgZedhucs3/Xz9d+FcN3MMU1EQfB2tAXfUmZy1hIAddrYQRti+\njc9RaLPMZfGstMds0Lzsb8tdMMvEbNhU6v8cqUYrlaaCgf13cqMwUStOJNVU\nvusGQC3/cJX/kT6WgZ4ktTinTvQ/NXOtxaBae0lDNkjYVnmtn5erh9SKUKDy\niXKcfn0GIwbnvslBt1t0LxATcGhaRZ79jzrPVQfJtsEH+9KhBrfZkos1RIVP\njwzAQ3wnNct1o/gETswQmMKBFuwggsgea9e2E2mWdbJndHzXArce0D2Z04qq\n0ui9IIjRwa+/zWB1KHSaDYTEP9/thN3uU20f3dYp2+Ba9ERPfmaGX6jcih66\nywJ6MfhxKAfSRvKUgXVI4DtG1swKry9KEQpoDUPZlgXhCYdRsmmUhNrabPg0\nUg3QRnsqRYaGbiq59JpuRvlzBZZRSG42964l3/JTHjOFCvTwcms9rj71WjqP\nQFb73h3vodczihpIludVmydbIEAE2oRsyskNjlX/ArFpCXzDMDeS9LvufyhS\ncyPY\r\n=Z8TE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCCAP9aU3V4oqGudUKYteNI+EZWf0lHTqn0MNB8W6pulQIhAMxWPu4DqsNC96IMb2cgpcrL7nBOrXepW+lFnYKB6tdV"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.6.0_1554107751821_0.7402461815946937"},"_hasShrinkwrap":false},"1.12.0-beta.9":{"name":"kafkajs","version":"1.12.0-beta.9","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"baabae3e52a34cf77910d47c547ea9f4d5a5de8f","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...baabae3e52a34cf77910d47c547ea9f4d5a5de8f"},"gitHead":"baabae3e52a34cf77910d47c547ea9f4d5a5de8f","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.9","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-VG3X7F/SF2jZ7qmKVqs9Ab3Pu11xkoH1r1na54yPHZt2wrfhqM0lP6T1ViYg8EAbkVufhpfQPFeYAyDc7TdEzg==","shasum":"26e5b00f22a90a3b4ee4960a6c0fce10120f45f8","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.9.tgz","fileCount":266,"unpackedSize":478863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5TT3CRA9TVsSAnZWagAAG6cP+QFRYwoOrRCvT1L8FsaD\nqepToM8zjD9GO5jbSOZecwUwnp07AEoMwp+zSmfDMLR7Ce80ywMeHqzhds5O\neVvl5bsYBngQaBxmIiBeM3wNjHksekWZI+1zF4QEG8JaD9mbAA03qQao/RNy\nzbm5eTcm7/lY6eqViKm1nJe5Mr9NZcm2sla4TdaS3LQGlaHmRZ6WrFdKGxmO\neGjjjTbnVtg0qR6Aazq8MzF/tUPzfxK+M3f8osZSVrbD4KBXIeFVhv/9rdU1\njz3hsgvGuyR2QckGPOCn/KDvtmWzmkXEekSwo/yMP9qxsRHhXKpxEVA9SqOR\nT22LcEnTKuiNgm0V9LtekFmEaQk4S997oR2TAoTuPJSIsATLKKCe1CUVeSKO\nQ9WwsG3xv8tSn5mdaQnx/t/TNV7A0MwO/LJePO1f8BVZFvBSZkCNZwXO5/tv\no1hMtILa74ev77biinDNpu6A4EkZ8ZiZ6JFhwDKGns20YjcWRLMe+s1txlzo\nnBTFz1zFZlqjVsuDV81Z1NtxfzWvkPwG5hSNTcfsLSXez6mNKdmE22EhWJcn\nMocydsjokjYCgFHDGkp+oWVjO++jppMSlxs8hDDoYKLPy2Z6Rc4eZnZnY7NA\nAk22A8cIbnxwPleWiyP4x4Pm0uuCSm5/Ia3c5Ky6TnO6ugR1xBxd0eQihxdX\n4V0I\r\n=5lYo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDCgQQFo/4Mrkl36FIgP9rh35x2VwaUUX8FSNu0rEVQcAiB5r+xDj/WPZNZYacH4w/rHffaMu9Fvj6TzH89foXQG4A=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.9_1575302390681_0.7115887178085603"},"_hasShrinkwrap":false},"2.1.0-beta.10":{"name":"kafkajs","version":"2.1.0-beta.10","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=14.0.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit src/producer/index.spec.js src/broker/__tests__/connect.spec.js src/consumer/__tests__/connection.spec.js src/broker/__tests__/disconnect.spec.js src/admin/__tests__/connection.spec.js src/broker/__tests__/reauthenticate.spec.js","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/jest":"^27.4.0","@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-jest":"^26.1.0","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.8.3","uuid":"^3.3.2"},"dependencies":{},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"48b8bc72512d94331790712c22382b449e906445","compare":"https://github.com/tulios/kafkajs/compare/v2.0.2...48b8bc72512d94331790712c22382b449e906445"},"gitHead":"48b8bc72512d94331790712c22382b449e906445","readme":"[![npm version](https://img.shields.io/npm/v/kafkajs?color=%2344cc11&label=stable)](https://www.npmjs.com/package/kafkajs) [![npm pre-release version](https://img.shields.io/npm/v/kafkajs/beta?label=pre-release)](https://www.npmjs.com/package/kafkajs) [![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Sponsors](#sponsorship)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n<small>KAFKA is a registered trademark of The Apache Software Foundation and has been licensed for use by KafkaJS. KafkaJS has no affiliation with and is not endorsed by The Apache Software Foundation.</small>\n\n## <a name=\"sponsorship\"></a> Sponsors ❤️\n\n<p id=\"banner\" align=\"center\">\n  <table>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/upstash.png\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Upstash: Serverless Kafka</h3>\n        <ul>\n          <li>True Serverless Kafka with per-request-pricing</li>\n          <li>Managed Apache Kafka, works with all Kafka clients</li>\n          <li>Built-in REST API designed for serverless and edge functions</li>\n          <li><b><a href=\"https://upstash.com/?utm_source=kafkajs\">Start for free in 30 seconds!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n    <tr>\n      <td>\n        <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/sponsors/kafkajs-devs.png\" alt=\"Logo\" width=\"220\" height=\"185\" align=\"left\" />\n        <h3>Get help directly from a KafkaJS developer</h3>\n        <ul>\n          <li>Become a Github Sponsor to have a video call with a KafkaJS developer</li>\n          <li>Receive personalized support, validate ideas or accelerate your learning</li>\n          <li>Save time and get productive sooner, while supporting KafkaJS!</li>\n          <li><b><a href=\"https://github.com/sponsors/Nevon?frequency=one-time&sponsor=Nevon\">See support options!</a></b></li>\n        </ul>\n        <img width=\"1000\" height=\"0\">\n      </td>\n    </tr>\n  </table>\n</p>\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"[Sponsor this project](https://github.com/tulios/kafkajs#sponsors)\" in the sidebar.*\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy, LZ4 and ZSTD compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>\n","readmeFilename":"README.md","_id":"kafkajs@2.1.0-beta.10","_nodeVersion":"14.19.3","_npmVersion":"6.14.17","dist":{"integrity":"sha512-j0XpjgA4NVyT2D6PnqvNV43me+WzZjli/66mP45/BIecHuD7SVwBBAr6uSz7rVQFLquI3ArvVgmOp5hZtqKU4A==","shasum":"1a34d6c6da762a0023f960cca9a52e2fefc668df","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-2.1.0-beta.10.tgz","fileCount":385,"unpackedSize":713201,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAISh4yz3fCxeBw3LXnX1aJz2B3kta7xCYQ+ZLeUChwGAiEAi0wa6g1hOuGuwsNrs3v76c7lPpL9JCI6SUSqXsms7sc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJius15ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNzw/+IqW6sspsEtubpmEDA5KK7TWANpGzLcnJYMe+fHtvtK+c0pJC\r\n6OXMD43wojv42D3g14WN5zX568+nbGkT2PAMJG6gkEbso/NVDdx2yxGAlLtr\r\nxp69uDd4jY31VZYlk98vabw3d2QJnw5gCViyDuqtAIuV8KKWWQH3S+jlsZzh\r\nynRoLkZJRo4BOcVeGIlOCh8PrvlHY1Qa8CTH571hbiQvsfkMBoTph4dXmvWh\r\nCq5CgE26XlESbYdxb1Fl1rhwHAFOitzlUBUYmnXXQDdIskWGuebJXjHxaBIG\r\nnf5/UbCarYQ7L0O8d7n+DDEchaY4KSOerGKfz9FtDzzHJJWJ/qVLffi9f0Eo\r\ndb5DWElpgVZiYl67ZY5x3+SDabLtCx+ipIsxxIDmgd0m3OJfRG7qimPfsdz0\r\nczwORojnRBMt4L/Y9olwODUoKCpqgXmE3fGvHB3IcYpFiNjCd+CDuRF+l/67\r\niBOcbI2Jp//9o32sY1+71yQlfAWJ51qeQZ8YYBRw+IwpfRE2aZKZIbKawrun\r\nZgS2//qlFPz6MkPuzy9Y9Si7/mV3NbMxfbzzOESf9WVqrKggALb9D0LXbydl\r\nftyBlyJkJhOD/xxSGigYEG7e5oOi1RVTKQ/0mVdepOfvM9iUM8UW0LmMjZHA\r\n0JPkx4hIq1bCiDmrwDr1EnDHScDPIn3/q6M=\r\n=6L2I\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_2.1.0-beta.10_1656409465280_0.8833644734310704"},"_hasShrinkwrap":false},"1.12.0-beta.4":{"name":"kafkajs","version":"1.12.0-beta.4","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"1a894d5e217b99187f512ba264f75b3037da3c4b","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...1a894d5e217b99187f512ba264f75b3037da3c4b"},"gitHead":"1a894d5e217b99187f512ba264f75b3037da3c4b","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.4","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-KIOfJCZq6rrAjfyD5awedrG7CgjlbsCpW99CdKtotZg/ftMwbkakApNJGH7xFKZlOVPj+T6E2+IlX2brUVu9AA==","shasum":"60fa5471ef64fe2ef2e453b90bd8f49af00aa3c3","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.4.tgz","fileCount":266,"unpackedSize":478416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxZFlCRA9TVsSAnZWagAAu9UP/0r4z3YH0ueFKXMMBLA7\nIeXdo03M3F8weCEA/uNEppL+o9aFUmaVbzzgdXr81hiLtGMeTfMpsTh/vZEA\nNICm0P7AqESb4jSQMj23w9kwyRaIwAVuYpN8bE0EW/SlArJPqweANPq+dRkk\nbZbsOYsuoPPzFvT/mS1Czr3elulQaimK7Vb/Vk0ogCm2hD5mt6e7unihQk25\nF5FTpihGVYA7gwwY5Kdp1v5mz+osevKGOEW2YAnq/uZ5Z4WLbMJMZKhZ7hdM\nrEOy0SUY6MARifcSakXZX0+YnXgbfM+qhukWbBtW6WP+kVxGidMS2XgRptxQ\n+RzDUrno0cEhD9qCsPKOmudXc36M3mUn+CMu29xBBIIWEn+NpTAz/+TJjCvc\nSg+hwdyhoMT0mKm91SbYellxYNQx2RSKJ0zl63S9WM2Hu7dT5wEG1tLFgjMf\n8TIoQ/D+Fu2wMDbLdLbjIO4nkLAV8DYZcGufby8mwYyZ1WtVXmz86ZbQbMFv\n/11QIMMhNxcnFWpyxUY3kotVnO7QVkLgCMcwkPNEvRNjazfkFn9BJXp7iaY3\nKFAJbQyV/n4fBwqFdt48VmbruBoPzByxZeeRkz070Kr6XnA91vjzRIq1tHbv\nH1hq3skr+Ovv+0f200PvnAbCqJQ0EL19b5Ke07131fU9hC0SGpyNpzl81bZd\na+WH\r\n=ELWh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRryd49yi3Ou4D40+Lhs9GhLQAD4HY7KAlXtLRtd+oUAiEAo97nC/4OB1mCDAAW8Wm/TBlgcu3XcnI6sQS+8fdUHhs="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.4_1573228900691_0.3278734163071957"},"_hasShrinkwrap":false},"1.12.0-beta.3":{"name":"kafkajs","version":"1.12.0-beta.3","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"34824cbcb2d9721441518ad6875e48f604fd3864","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...34824cbcb2d9721441518ad6875e48f604fd3864"},"gitHead":"34824cbcb2d9721441518ad6875e48f604fd3864","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.3","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-j/qjTDHkXYaG/5B9/EWQDCFk88rBVdyQt6wVpeQqUGj5kLaKHx7jPWgQCqJdzUZi6agezdGBc6EOmSWYwB1QVw==","shasum":"b59b61c08e25e6c4d2021504457f21d2f0d9ab64","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.3.tgz","fileCount":266,"unpackedSize":478407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduwR7CRA9TVsSAnZWagAAyuQP/i3pkvzvccnPGoAO2ydO\nND46xwDQTgLrSYLBM29UdBnQKLTrs/82VFBRCF3C2B76nUbOunlktW/PPgpj\n89NKQGpHjrvFmHO1Fp9+cukt8T3r/O6UHj63XMw8f4ekh7nnD+xTIzu6Gcsx\nMNIRhdwPQ6ujB6jaF0LAbXNuYS8Mxd43VKZeDGE7Qz7int8+YRbK6nVrhU5J\n7FP3KrMBjUhTCYuq9BuDFOmIvRoHr3rTXxy9Vjxk8MMsf46FZ6iLbkEkrwsY\nsIXHwsODTkh8zkLI5qE+aqgAI8PMf29DszZ2wpHN3y7q13lNt6Xm5vQLV5k1\nRhOy0RUmhZ/8cdT4fw0ugkBDSEatlXxWyXeCFZEXVtIbiujWfzObFG7xetiB\npXRj1cO5aH2xMIaSPvZRZqpTQQgSU4g/laWzYM1uNxBqf1Njo8uV1YrXl6uw\nHZdYkW6sxdM5iQLVHXXM5tb/WlJTpEZfaGw5sbKoFPHggWbTEcNzibsHwkk/\nwCcF4Icmfu8sQbwRbvda3ib/25w/TCPX4svV4u+dAWfKsHv1fz3AxVBygvgm\n/tlUexdo7A9E5W3yGT3kZp1TXzfPSCEoXQY8RlExBGVTHms9/B/YoUIi9S1V\nzn0eyeXQMRdU8psH2nObWvJabOlW7AAM4O4/kUBXGtbscrihppoyI3S0mWWz\nFUEy\r\n=/oUI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAEHMe/mFgPDq3D9qpWfTfvwEmKnjvatPeLT/uLKbPRQAiAfyedLGgOjGeeBkCmm8e/YbL6c3rwVNqmhHKhIDBPzDQ=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.3_1572537467067_0.6714748748679642"},"_hasShrinkwrap":false},"1.12.0-beta.2":{"name":"kafkajs","version":"1.12.0-beta.2","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"297b8b35f3c5b6ffb09ff6a278c25ead389e5bbb","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...297b8b35f3c5b6ffb09ff6a278c25ead389e5bbb"},"gitHead":"297b8b35f3c5b6ffb09ff6a278c25ead389e5bbb","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.2","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-/ytZJCtJqwCclR7GVTckPDjbAFXFjyL2TMN5KoxXuTeAusFyIUawr4tCTWYge8YLFrKO9ejUa++TqLh0uhbhvw==","shasum":"0b26c118ccf1e912589c2f1f59d747e88caf7810","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.2.tgz","fileCount":266,"unpackedSize":478405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnKnZCRA9TVsSAnZWagAAvScP/iKds1l+40H/rkfPAL/u\ngVKgxSdG16zEwuMudBCCxhd5vVa7SuvGNydrDKJfoyq2EFWYEXKJD/YHL2TI\n7Xhr3NLJlJYhjcP+tRzUWDdDDsnV0E01fgopd/GMZoIqLMJDPPmV4AVfWgpR\nIhnJfuK5SduNlnCF2drlce2ATkNhdYuUL/I5CwZvjTlCbxftr6wj5Cou/LYC\ngCimdD38GDZOiNabp0worcNA5S6n3yXwUKM4E8Iz1Bd0r1BYpAYoBVcFyBOI\nm8eNKRnby2hJFoNdcAvKLvozIooGtev+HuxFRtpGrOMKNFNslrpsa92LV1k/\nmyc1LHgwLp1FJkjD2bccPHb4eaQOIMG68iAw1JPmlGNz2aA0d31KKbtRTKSZ\nqzIvDmB8VIB9xkTOQcOMra3EcUO9c6kM2ux4Npvvw+1OuY21NO8IWhpn4ZAo\nN6zulh9tqLUokeCVMoIGHCZTusemA9NRr2VcNONhNrn8pRaHaPNfKnYSTFBD\nEfVoAkAUrnrhD9oVkr9F05k7tU+IHLTBdH+Vaz4UDsRUjsG8RlSJY7MBEf+g\nssyGjHizbHdyy5W2mghaMe3sUcF3CbMcerYwJ2VIOJXu8IvvCjBITMWQhFTE\nGQloIjht4b1WBxpN+mwWCuPKPAz51xoQSOl6FJGPfJIMs5S361yKpPHy6E/U\niYom\r\n=JxFu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAM6p6i3OIQTaZiBelpI+T6BE2BjwUGqCHqFWN+9cxF7AiA1QN51VoqSXug4gyoh0ZoroSUO0IvcsUO+074HRyZ6Fg=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.2_1570548184413_0.45592845292451845"},"_hasShrinkwrap":false},"1.13.0-beta.71":{"name":"kafkajs","version":"1.13.0-beta.71","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"dca6481b9debda9035bbd2eff75c49768c6d7257","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...dca6481b9debda9035bbd2eff75c49768c6d7257"},"gitHead":"dca6481b9debda9035bbd2eff75c49768c6d7257","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.71","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-iVnwiVZ1NwRgS1jdrsuDVNKPc4uTs6WNSHF6pISEfwwg0Df53rimETwSl5hucnQlZXtVEndL+z9KsThXQLdobw==","shasum":"cf1461f71eac5b8be75e781d49ce447c3210293b","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.71.tgz","fileCount":302,"unpackedSize":556680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWPVRCRA9TVsSAnZWagAAkHcP+QDitVXPfOwxpnImeHnv\nMJ/qn8Ygz50xXwEtMggdhdE9cNTjmqEaA9Zdy2ftbxirBah9pxNu+YKuKIia\ntBx/GxOSsUiozY+Kw3k1DruUY4jzDAH/UMHkNd8MTsyrFiCb3FnRXb2s83nI\nSRA3Nn9rRzHVqxwl5Y6aXsl3KhJqhhIa+WjLST04BojHkD1W5yQTi8re04lv\naniIJZba3AEIN1rCAmqcJpZgga87H4/SPMxAykusMCUzaWIJh3RddOHAUlFA\n/iEX71KVCOhpHoEfFC1Y2UN19sV47hr2pfGfSDTPk3JGUTQyYJ1RgEBz28Ff\nDtuEZ/vNKoJ6C6RXnbT+ilVyJTryww2em9YfkvkeHrb0EAfqk5Itk//BBGL6\nZqY0tLjtl0ZDiNYkHe3Dk9jSFcth451Kml28gLXxyZyrqhF24of6jOj37XfT\niBgZXJHtwe9CZDnOm9+dbQp97y+h5bFdYV4pE/KO1R18pLPwvvWbODjIOWWB\nBoqiRPYJtRpyKGdXqnvogfpge/Jpl7Q8RbqGgcB4esDT3QpTVoVDtRNme8Xt\nmq7qRz1Z1SyQmEYPWlZZFqX/9MdWE8vQEpelkgRrirE3+ZoMPdXcSiHBcjkd\nvT+hoqfpnRbcyaPfvObMUUmTOgpcfNBF2AQjlf/CqDqmb4yelOcK0o3jZjW+\nzJWa\r\n=9F/2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuiwgwxYvq4EiohqH2u3vnqjk1NnuEXQ4BY8T1mjsr+gIga3YXRIFrDdiWc9SdLlubsvnI4pxCipeTk1E8Ab+hbC4="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.71_1599665488692_0.22672836634206828"},"_hasShrinkwrap":false},"1.12.0-beta.1":{"name":"kafkajs","version":"1.12.0-beta.1","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"871f75c9a378a84f731958357adcb35266615b26","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...871f75c9a378a84f731958357adcb35266615b26"},"gitHead":"871f75c9a378a84f731958357adcb35266615b26","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.1","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-bL/sUhVLljYQVgZpDkWoqtUQnd3uIGfFkt7yrgyjdYkBupGaqrDNVBJnbTq6r5yBgM9o0rON8BPqJAaquQPZnw==","shasum":"878d725863aa2cc451940d0d8b5016f02727fccb","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.1.tgz","fileCount":266,"unpackedSize":478405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlEjECRA9TVsSAnZWagAA0s8P/1x5PQcTTk+bAucJCzpl\nucLk0B3CJGT/KKgPEBVZCQVWPZXz5uE0q5KRwCuO7wPotOffx10l3BZRwMeh\nb5M2DaKdl9RwBOWSuQBOSgJIc+VbtFRyln7b+KlsPH+qQD77xi1Xocda/Q1L\n67/fjSP46oMxCwxnwqKGr3UaKiAbVgnS4wwrnlDAz/XqSI84JT8c9K0g9YqT\noASGF3yMCVOqV5hoiaG6WM2eQ09RIU4VG8e4Qqqm99Bf/vVfYE2sKr9CCIt8\nxMas5lshxBouv76RTVXhDEnrbrMppKjUHkw1bK08RgDZktxT9xJpqpGXfNOY\nqzgZabc2bpXjxnJDUiCB+iURyJUB5z4vz1buPCirRQgPiJjsx7lCf5z/fauU\nGNtMcYhK3GFQVt4zDJ5PFWpSTEeYgF5rZxB6IrTcD7/otJnBDrUwjyLCNE6S\nwhFFQkzy8/SK+uyg0VEyfj1pwzVvYaH0dKaCep78Y31uUI6Z1ysUC/EZF2ph\n6jzCkJ+38WaUowAy+SdGvRzc19vz5gl7tgV+egFj29LTSTn/liZO7vpY++0x\nGWkqBBlFydhME/3p51r/0+81o09UNXdiXz5WW6KJhW26LCMQ0pSXGFE3jcp3\nHzTdzlUp+c36cMdGu+/6tiRsF+ttaNDqdxzGHtU/6SA4jH0m/NXi8baYjzwQ\n9kTe\r\n=/qtG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYm0rWM1PLLBiRNNGivBEXoCvXQRbBfr/ItR5xBsjQ4gIgVhK68cNXxg0lphre44Cwm2grGWZPYdtYJA9gQg3L1wQ="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.1_1569999043424_0.1110228755345215"},"_hasShrinkwrap":false},"1.11.0-beta.12":{"name":"kafkajs","version":"1.11.0-beta.12","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"19ae967d25229b901f6f246f475339b5ea9d9d4a","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...19ae967d25229b901f6f246f475339b5ea9d9d4a"},"gitHead":"19ae967d25229b901f6f246f475339b5ea9d9d4a","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.12","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-ZsCbC3pkbO4w801cS2a6SWUvpXK2AYOGO+XW2seKPQR/IN92YS6JzkZfMhqs0eIZAGHfYWlXjft5+LIqP9S2QQ==","shasum":"64b848d4d62d47413b0f9f0ce8bdf4286f16c5df","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.12.tgz","fileCount":266,"unpackedSize":475217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf5VkCRA9TVsSAnZWagAAaHUP/0yCuYaaRQQD7fNu7HS8\nsA/ebyNeIt1nifvU2MLaRRBsgbwgUHoY4x3QifJL+HnNtLANA7zhstD1RQdg\nLlzY6XI+j5xzYtgBo1BBwrtli8++iK0a8iI6KhMqroDppzIp0H9OzkW8oISJ\ngGS+xlijL5rc3MvfVfVlb/OixuPqsDNeMf29BhELzPF95EGlJbo0gRNXSA8h\n8BBHmbpOIjRh365wk8RVeOfMqgSrrVaRLN/e+fQEuqCv7NSukJ48QSnBEj06\nWbWd1HvnXKRPFJmJSa5FdoFJRqPSKulz0i/DK2TY1ctImCaYJ2SitGlSyPpr\nSPdRhlZ99hU6UX399Jl2T4jxqaly9sfr+8w8sx9WB0NuIvZYKlpjg6hL2gLF\nbp815gkZud2jbeZ2eC0xF8T5IucVEQkBUD81DwK8NbMnynO4zqJHqVxu9YAU\nRTCnMhNZHf97M5Vli5tfKN3H8It/naLrfMZaQVM5iUEF7LmNSn4WRd3NzSZT\nysBG7pkDrrf+QMfYyX8KMETn3Axc6VzeijQggtQUbMY+CrY5e1LFUqPzIsDY\nRW++DNndnSxgEgChxtH+IFjxeKyearw43H//5T6bYH7TERfZdGreZUl6JUCA\n6jDZ50j4dmLydULeHHoUPMknAY07slqSUFtRzG+vR5OZn3a7s3Cy91GOVMdD\n8QTA\r\n=fMXC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDun8DAXvm0qcAXYd4IXRFV5SmKQ3LDnx7hkjZnQ59HQIgPeK0z4LE63viZTbP/rF554MSOwHTGRQHyEwKBMyWJlY="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.12_1568642403597_0.18651429740159764"},"_hasShrinkwrap":false},"1.12.0-beta.8":{"name":"kafkajs","version":"1.12.0-beta.8","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"e39768924b92161f79a7d91411192ab42a4954b8","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...e39768924b92161f79a7d91411192ab42a4954b8"},"gitHead":"e39768924b92161f79a7d91411192ab42a4954b8","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.8","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-wW1y5I4eEUcKb2eVirj4oUouPT4NmPa6HeIKBU2CKB/3bPHj1RRlpihlsjFvx5bODxy4oD2yQmbH8xuKv4dtug==","shasum":"56f82095149df83801787bddecf620ab93a8bd48","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.8.tgz","fileCount":266,"unpackedSize":478808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5NqkCRA9TVsSAnZWagAA0McP/j6xjQMX5+UbA17y4yDH\n1cOTTz+zk2DsZ0Jg7zTTkqJr7oYxes/TN+P9LxSwv1MiKIz0bc6ZEcpkzbGw\nmx42cgBmn5f0Y7Cntt0xMP+FdQ1qR6uQlAcHpLaUUeP3nP6qtYcfx+aaxDWR\nPD8nNs/HXZj5XM64vV9egkBunBaH2vGuo4BpotdkqzucvMV4LeVpBo2NgnYI\nxDHSoJWNjsDlEw1zXltxo7O2vdVF1G6qec1eVQWeVMgewzmWAXLgmSpzTIaf\nHbxtsivzrowIYA5g3CNifkCqbIu/eScivJx8evejlNNNyFvzoP8JtnlU+m+5\nO6v3uB+Ucjht5MutylKBh2/8FplNQD5hlDEkcQ/AAfsqc7G0YQvrNHCD4HGZ\nfHJHlt665BCtxQj7lF1Nv32ZUliiB0TrdDumwpQjHi2GxaF0Vl2Ynfw0Ak54\nnWjZHTFCcYBfwdM+YJYV9TI+q1VFOvpxLyu5yXPsdlerMNmQmsU0lYmTwt+y\nN64CfUv8n177cLkRaaTfMjCQpbol1NrWzWL1trWRGdJcU10RiwFSIl9jodGt\nIct/H7CKSjFSNKScnXPwbzmPIxfvI3iA8rKAJ7izjo6v5cvpbhGEzno7PjC2\nvWDCmFi5sJtn2DjdlJsThBLucSDvVoEHdnbjPEWg4xOjmvlPqu83uxUwtvp2\nvrPt\r\n=13GH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCH4CkVKu3d8+RD4R9wmE2+0sCLBGAA0oxS9YElxobvqQIgbhBtxp2Z4JKiSCP1Cx/6scAYIWcUt7e53LXuUYwIS6o="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.8_1575279268078_0.19751654057558476"},"_hasShrinkwrap":false},"1.11.0-beta.11":{"name":"kafkajs","version":"1.11.0-beta.11","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"c3a38ead41d49c3b216e09aa278a1bdd8b250cd6","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...c3a38ead41d49c3b216e09aa278a1bdd8b250cd6"},"gitHead":"c3a38ead41d49c3b216e09aa278a1bdd8b250cd6","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - Seamless integration with the schema registry to encode and decode AVRO\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.11","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-MAOLjjL2HfPNnnzmiPtuXhkVoDsxuJRMb4jl+9sJPcz62xfzFxDBXMpXcXEEdSvoCqDSGi9Qv2DQMeC/QMkdJQ==","shasum":"53dcf467c80579003e91b2d742f5d911ccac0caf","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.11.tgz","fileCount":264,"unpackedSize":471706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdel7vCRA9TVsSAnZWagAAVNAP/1ef5030jx2HJ1MUIvW5\nVwdUONHes8h1zNEUjLpUs9UZhWEuQZVDqFgBakr+tnr9oiCt/+V5P3Ven+c+\n4yRUwUApZuaC3ViEw1ttAkC6LT2XwvF/jJbjedqYObLgfnFRIhkciErCSv7K\nGumC3/O+tnHdS3eof4XVaa0PuaOpZjpI2Hk/DRSSlawReX6If9ILgqdQtGTp\n4utdIzKlkI0YCkHpCs7262OGRTZhFVMCzBt8+f8ThN/w+KkJlXWJ3nvWrLC0\nqj3RaUdVFOVGAgO4iLWp6EF9VbD62Rl8ifotTmQHleLFDl+jwt1UiyZlHUfS\nHPexWbsueKKKCDwBwA0g42xWqJBKuTDlIPQAJ06lIecVykMfvSQITzJQ+zmw\nJk+BodfxvqoPFRbiEcf+gwCWaF+Tz+8SCGz/m2VCGam4oDQ1rmtd+NpjOyAe\n9e9we3eYqu1rXoEnFkcAK58L7NpVICAV9wpLmpyTTCRAY8QyBSnF3cOixJgi\nSbpeLim6nwoH1DIU8TkavYPubHZLxfAZepnWzs61HVo/JAEehmx1a/+87kw/\ntLSnm3DS8fTkTHThF1SOROvi+pPyzDY7fwSjyH/Zq3UlKx8GGsHW3iUmUx/Q\nxEv37jbZxJ5CpM2VgSkPH8ui83oSVx78GVM6pAGToxTQVfHStdsdYFN4eTNJ\n9YRT\r\n=Q652\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICU8UrBt4C/4IuWfe4XGJ0G0JxoeeIaeX5P5fhua6+PmAiALFmbewU6XnAjuRlXKDjvxE13lLAH4AfOXdUu8ddyy+w=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.11_1568300782741_0.6988506503124181"},"_hasShrinkwrap":false},"1.12.0-beta.7":{"name":"kafkajs","version":"1.12.0-beta.7","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"247280236b6b1bf35a67cc59d7969fc1cb72e2d3","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...247280236b6b1bf35a67cc59d7969fc1cb72e2d3"},"gitHead":"247280236b6b1bf35a67cc59d7969fc1cb72e2d3","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.7","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-E468kpq+1WkZvmgq6v5py91eeIWGzaj9nqII25xyAuoCFudEQlP9gHY25QNLAP4VsgbeTGi9t5xhq6aCH70BZQ==","shasum":"e6c1311fbdb855f5a9b4f5795e8aafc2adac80c1","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.7.tgz","fileCount":266,"unpackedSize":478808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4PL0CRA9TVsSAnZWagAAYDMQAInoxJ8licSskVs61XnT\n+hhGcuyL0xuYoad2aReTiXD0K8qh317Z2J58wRolZL1ca06EMRFtpgMT2v+a\nxYaCCVuuYJlyk2N2Y07Fou7czchmRpcfSry4Sw4MVX13eyxzlDaDt1DZWbjw\ncdN7qgnRT1dlSwEULOcLwzhNtsymmzMvWBl/hx/2EPIhOJi5G880HzfYGmcI\nrK8SIw4LtSruv0+S728oXsjuz45nKoxaygPlSNna4Qz2ORYZWjLKoBdzJHbe\nHpM3UVCflmpkwzqDZ/AzJU1x24Jc45gbv4+bEb9Sd3m8lPVG3mubPgCw0hVT\nFZthZDyWmNtrIa2kdjPVYu+h7Z0VkCnJ1LzDFa1LVi7xJplMVNi7zO4w/7Jt\n8QuKCBTls8d6J0vxnwOq+AKYhAA/PHg5VTg6NofcvmVCa0UL3aPGRn7Dc4ts\nXKCHXlvVcd72RISpl3Q6D/NBgq8ZBS8OOYZyBGaY4i9jMeRQ2Y0plAgbi/dC\nlVzUNUUI7lPGQu3JBqxsHh6QsQ0tI8efSJZDka+WDvOLlELLLvQB11hN0DQX\nmB3VMiDvRRAf5212dep6cFhFHWZf83VjUsr8XVvcQd6jlUmytu3krXmAt6CB\nwG31uze2/oGSw7L3fxYkgwjYB6ThhucXWcwjDLqxIfxfGpwCsYreeg95RSEk\nfcWc\r\n=PlAG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHvwvMZg8bsDx5tXvFT1ZzLqN/7HGgsaHMUKPDshHtigIga0O37snoTCg5QHCCNLIGJYAaSI6eRBpYuwwdCNZbEJg="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.7_1575023348421_0.15567975034419157"},"_hasShrinkwrap":false},"1.13.0-beta.70":{"name":"kafkajs","version":"1.13.0-beta.70","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=10.13.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.4'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk $(yarn bin 2>/dev/null)/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:oauthbearer":"OAUTHBEARER_ENABLED=1 yarn jest --forceExit --testNamePattern 'SASL OAUTHBEARER'","test:group:broker:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:group:oauthbearer:ci":"JEST_JUNIT_OUTPUT_NAME=test-report.xml COMPOSE_FILE='docker-compose.2_4_oauthbearer.yml' ./scripts/testWithKafka.sh \"yarn test:group:oauthbearer --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^25.1.0","jest-circus":"^25.1.0","jest-extended":"^0.11.2","jest-junit":"^10.0.0","jsonwebtoken":"^8.5.1","lint-staged":"^9.2.0","mockdate":"^2.0.5","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"9e05fa9129b551daf1005febdf60d4c3276a8eb0","compare":"https://github.com/tulios/kafkajs/compare/v1.12.0...9e05fa9129b551daf1005febdf60d4c3276a8eb0"},"gitHead":"9e05fa9129b551daf1005febdf60d4c3276a8eb0","readme":"[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master) [![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs) [![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n<br />\n<p align=\"center\">\n  <a href=\"https://kafka.js.org\">\n      <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/v2/kafkajs_circle.svg\" alt=\"Logo\" width=\"125\" height=\"125\">\n  </a>\n\n  <h3 align=\"center\">KafkaJS</h3>\n\n  <p align=\"center\">\n    A modern Apache Kafka® client for Node.js\n    <br />\n    <a href=\"https://kafka.js.org/\"><strong>Get Started »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://kafka.js.org/docs/getting-started\" target=\"_blank\">Read the Docs</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=bug_report.md&title=\">Report Bug</a>\n    ·\n    <a href=\"https://github.com/tulios/kafkajs/issues/new?assignees=&labels=&template=feature_request.md&title=\">Request Feature</a>\n  </p>\n</p>\n\n## Table of Contents\n\n- [About the project](#about)\n  - [Features](#features)\n  - [Getting Started](#getting-started)\n    - [Usage](#usage)\n- [Contributing](#contributing)\n  - [Help Wanted](#help-wanted)\n  - [Contact](#contact)\n- [Sponsors](#sponsors)\n- [License](#license)\n  - [Acknowledgements](#acknowledgements)\n\n## <a name=\"about\"></a> About the Project\n\nKafkaJS is a modern [Apache Kafka](https://kafka.apache.org/) client for Node.js. It is compatible with Kafka 0.10+ and offers native support for 0.11 features.\n\n### <a name=\"features\"></a> Features\n\n* Producer\n* Consumer groups with pause, resume, and seek\n* Transactional support for producers and consumers\n* Message headers\n* GZIP compression\n  * Snappy and LZ4 compression through pluggable codecs\n* Plain, SSL and SASL_SSL implementations\n* Support for SCRAM-SHA-256 and SCRAM-SHA-512\n* Support for AWS IAM authentication\n* Admin client\n\n### <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n#### <a name=\"usage\"></a> Usage\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n> _Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bug fixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* ✅ [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n### <a name=\"contact\"></a> Contact \uD83D\uDCAC\n\n[Join our Slack community](https://kafkajs-slackin.herokuapp.com/)\n\n## <a name=\"sponsors\"></a> Sponsors ❤️\n\n*To become a sponsor, [reach out in our Slack community](https://kafkajs-slackin.herokuapp.com/) to get in touch with one of the maintainers. Also consider becoming a Github Sponsor by following any of the links under \"Sponsor this project\" in the sidebar.*\n\n<a href=\"https://www.confluent.io/confluent-cloud/?utm_source=kafkajs&utm_medium=opensource&utm_campaign=referral\">\n  <img src=\"https://raw.githubusercontent.com/tulios/kafkajs/master/logo/confluent/logo.png\" width=\"830px\">\n</a>\n\n## <a name=\"license\"></a> License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n\n### <a name=\"acknowledgements\"></a> Acknowledgements\n\n* Thanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n* Thanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n<small>Apache Kafka and Kafka are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries. KafkaJS has no affiliation with the Apache Software Foundation.</small>","readmeFilename":"README.md","_id":"kafkajs@1.13.0-beta.70","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-/YAgiegmUZQLZuRcZJ5WdxFyhk9ArsJRAH2Z4teK7IGCO2p9y+W27yYsuw2bkFkCVkhOezhNHAV8uxD6d/S0EQ==","shasum":"e6fe8fa92aef5572fe38260acd0cb7d9a39a6d6c","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.13.0-beta.70.tgz","fileCount":302,"unpackedSize":556318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfV5YUCRA9TVsSAnZWagAAensP+QBwpjSh45/P/qCjySuq\n56VjyjNxsGEMluVabHJgDeMrjUErAJyj61pDGUzEF6CNjP0Je3dMM0UPWRA6\n+xjeoP1v1q1h5Cnxt2PV4FvNI03gPKItj90JtCYy0DIaYKszwJvL5eQvqQ8F\n/BcotbcE6Q6sjus9BxW5wfS25Z2TGzUbSjcRVglLoL671uhz97gvo8t4w5mh\nxz0fCv5zLVW9sbADd8x59yMKydNkKUdd8eEdxdNO/pYK/3q7WTypBKJJq4W9\n0B2TqDSpxWFdxfuhAh/GZf8KI913MtJozQmLGRuCldX0yJZhkZvqt5xkfsvZ\nFrw4DVodL5JlFgZoqgVh6/KFxMxaBTrmhr6FafAzux95kqdVTm2bFvdX7oQH\nt8IVNbVIo6wapsxKfpM/HbRKI0xvkev77vJWyQc5c8M+Ok6SpqBxnHSe2AdN\nKaFhXzwxJWlQccqyftcs63FE76QLnYzxv8JxdVPmL2W3iDcqr9EfKMjkuLj2\nB2WpdWnYacuIOqejJRiPof4pgcDzf9l4a6DHUzLrRjFjHadF8rIN1j9Kkcf8\nngBtcn3XaEx/KlsYH2SjOUp+McBFrS1I2AsSLTXi7wPMVkYPDvq4Pu16jbUu\nphrrq9eE9wRyKvLLk6Ehi31xtMxUcqcV1eqnF0/hvP3uhW0WMoU5inkNwtyQ\nf0dd\r\n=CZss\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICF9XAPOWaL3oh/oNn9j+AdBPvZ6qW//s4q80s2XkBzsAiEA9kKnUYg7wCekKqCz66ptXUp+R2Iwg2JYcs7V82EYzks="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.13.0-beta.70_1599575571787_0.5731162085103896"},"_hasShrinkwrap":false},"1.12.0-beta.6":{"name":"kafkajs","version":"1.12.0-beta.6","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"8c5cadf7eb3409e1030f43b078b2351f9c7dc7d2","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...8c5cadf7eb3409e1030f43b078b2351f9c7dc7d2"},"gitHead":"8c5cadf7eb3409e1030f43b078b2351f9c7dc7d2","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.6","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-nzlXbEE2f/j6HdK8Iyf/WWs6/DI2IsfBkTTR/s1BXgLgMFlcFfuDNB4l+S77Rd8z/7OFHcCDR8lytf2hkehAvw==","shasum":"1ed8b1b689f630ca604d309e932c8286bc4e5fbe","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.6.tgz","fileCount":266,"unpackedSize":478483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0lU9CRA9TVsSAnZWagAAmx0P/A3byhfEnv1/98V7dq8C\nrIIaOlK/yWa/63kNtDEexbnYokc9oOCwGb23Zh62qcs2GJQpgayKoAwWxphE\nlA/6dFM7w/McSnCGPLFZSdOaIlp12PfZlnP2+vwJUaiMWPhOyKZ1D2ewpUMA\n5rJyVpebjtNuQ/4sCYwoe6jyt61nHqPfDYLG3B5pUBIr4mbN2n/sBCrDwLqa\n3EUzd9hSBjjsd2jjC7oZCT2uf00phNwa4ypPeJKVOVH7zxOY38vI0TxXjiz/\nGCUvjom+mtw6iIg0gqt1MuI5/pL4VHCurzSHtxf2VE1/tjyJ/9TmVKv+nNEF\n/nSkuSJtF1AU21WcoiIPIstymS6E/aYrOosZ/KtaQ3/E2d9NUnEJm4Deti7W\nEMLOXoxDnOCclATqz15rGWbZclyWTk1hmnr7B91KR4nh7xF1Kq1ziNgOH06k\n148xYHzrQZEAHAfT07tE4ihpInUvwq02tFNn4R2N+vaWcnvqdwb1sSQG4hvv\nFfWuC1iFQhUvM6BuVazfQkAE79y12XIk+I/fExEp9p8LP3ZHjBhXhPmSGhx2\nIGj0l5+kPqyPMnUzrviB+dkxbJBt/vUsHPdakytybu9rbgsQdp5dJJ6wtcqU\n7fG8PwBgs7WGAzu0JqymHQtjFgii3JZjAch1Jy6S0JnlGuuP9KJcMMpj2RlT\nctYe\r\n=UV4Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD367fCiUhwDvSt7gZ3UQeql8DQK2Ad0TYLCa4MqVMvEQIhAM2Uz++vGHHdXGLOOTZe/ZtfknaWyDr/4jgTksxSkn2S"}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.6_1574065468589_0.6559899495772306"},"_hasShrinkwrap":false},"1.11.0-beta.13":{"name":"kafkajs","version":"1.11.0-beta.13","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"eeb8b9fd0ee68e76fea1dcd5e8f0cdd3f0eb5b86","compare":"https://github.com/tulios/kafkajs/compare/v1.10.0...eeb8b9fd0ee68e76fea1dcd5e8f0cdd3f0eb5b86"},"gitHead":"eeb8b9fd0ee68e76fea1dcd5e8f0cdd3f0eb5b86","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.11.0-beta.13","_npmVersion":"6.4.1","_nodeVersion":"8.16.1","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-TJ18XVm66TztdV3rj+0XsOKAw+I6u5+JEhmhaghRJM7fElAB9lhdmJeY8slUInDOix+e2fD70XOJ2ppmwnF2Vg==","shasum":"f760a0c3d8e25cd0648518d08e0eabc0ca481dab","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.11.0-beta.13.tgz","fileCount":266,"unpackedSize":475195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdiHQuCRA9TVsSAnZWagAAbTEP/2Dx7ssCzQQodykL+lSz\nuspP2nQuLxiaypgQvo+p0FJi2QC1boajpcItceBJTpqHZzG7Dx+RBHzz/pBk\nT8WSfqY3XaTJznQIm1qFgtdxpnCKCuqvpXUqrVd7LsiYx3OCH2Exd43zCRvR\ncKXlP1jQZJJeVz/2vWgy3tESvTB0E/J1SiR5nmQ6zhc7cYS5CoZ33z9GrPIQ\nn9QTFclru48+8lKMzAvZDnrX4gCGI8vAD80ft8yF6iKoXdaTGf439xa5aWSd\nGJgMBxz6B3D09l0kfLdjmFeDacTExEYz+T7JeAz5WMIkwEVKJxy/mL85pH+T\nCoOKAcb8zFmSbiueIVCwWqABarUfqDHROs2iku4zpjLq8THZGRF5S+VhgpoC\n1LslfxgEyK5juxfNcfoOxlcWVVahe8VLX9D0iHfqx4fRKzLT0Bd3+b2TbcWT\nJ2p7LEoZFgfIHrIPas/8wpBKVz4RlO6FK+vWyYtx/XFGr2KHpGmaCOA0eIRA\nFgdx45ZetY4aH7CMdOl186VBgaCA/KMa6a5W4jamB9EXz5w/pWmNQeyfSPxn\n+HUYs1FjBAMIdwLYo9HH+oO3aH4gIOM6hNMjAVOW53kAwtNS7QmQsmYD5I/l\n9Bhuv6Y/rFU6N5f0bbPyKQoqtoBjQLY+OYoA99o+OBY0Mzr0IW1fN1Cp3S2c\nti6Q\r\n=QhR1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHxp5Xog3S7sTupg+J6sfN7Znvj49Mv9oX9ZeOwXhKxAiB63u8BIF4he/eHiF/9jq24TByWTu1+S0vQC0LcaJuh1Q=="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.11.0-beta.13_1569223725281_0.012571117586436475"},"_hasShrinkwrap":false},"1.12.0-beta.5":{"name":"kafkajs","version":"1.12.0-beta.5","description":"A modern Apache Kafka client for node.js","author":{"name":"Tulio Ornelas","email":"ornelas.tulio@gmail.com"},"main":"index.js","types":"types/index.d.ts","license":"MIT","keywords":["kafka","sasl","scram"],"engines":{"node":">=8.6.0"},"repository":{"type":"git","url":"git+https://github.com/tulios/kafkajs.git"},"bugs":{"url":"https://github.com/tulios/kafkajs/issues"},"homepage":"https://kafka.js.org","scripts":{"jest":"export KAFKA_VERSION=${KAFKA_VERSION:='2.2'} && NODE_ENV=test echo \"KAFKA_VERSION: ${KAFKA_VERSION}\" && KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 ./node_modules/.bin/jest","test:local":"yarn jest --detectOpenHandles","test:debug":"NODE_ENV=test KAFKAJS_DEBUG_PROTOCOL_BUFFERS=1 node --inspect-brk node_modules/.bin/jest --detectOpenHandles --runInBand --watch","test:local:watch":"yarn test:local --watch","test":"yarn lint && JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh 'yarn jest --ci --maxWorkers=4 --no-watchman --forceExit'","lint":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/eslint","format":"find . -path ./node_modules -prune -o -path ./coverage -prune -o -path ./website -prune -o -name '*.js' -print0 | xargs -0 ./node_modules/.bin/prettier --write","precommit":"lint-staged","test:group:broker":"yarn jest --forceExit --testPathPattern 'src/broker/.*'","test:group:admin":"yarn jest --forceExit --testPathPattern 'src/admin/.*'","test:group:producer":"yarn jest --forceExit --testPathPattern 'src/producer/.*'","test:group:consumer":"yarn jest --forceExit --testPathPattern 'src/consumer/.*.spec.js'","test:group:others":"yarn jest --forceExit --testPathPattern 'src/(?!(broker|admin|producer|consumer)/).*'","test:group:broker:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:broker --ci --maxWorkers=4 --no-watchman\"","test:group:admin:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:admin --ci --maxWorkers=4 --no-watchman\"","test:group:producer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:producer --ci --maxWorkers=4 --no-watchman\"","test:group:consumer:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:consumer --ci --maxWorkers=4 --no-watchman\"","test:group:others:ci":"JEST_JUNIT_OUTPUT=test-report.xml ./scripts/testWithKafka.sh \"yarn test:group:others --ci --maxWorkers=4 --no-watchman\"","test:types":"tsc -p types/"},"devDependencies":{"@types/node":"^12.0.8","@typescript-eslint/typescript-estree":"^1.10.2","eslint":"^6.1.0","eslint-config-prettier":"^6.0.0","eslint-config-standard":"^13.0.1","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^9.1.0","eslint-plugin-prettier":"^3.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^4.0.0","execa":"^2.0.3","glob":"^7.1.4","husky":"^3.0.1","ip":"^1.1.5","jest":"^24.8.0","jest-extended":"^0.11.2","jest-junit":"^6.4.0","lint-staged":"^9.2.0","mockdate":"^2.0.3","prettier":"^1.18.2","semver":"^6.2.0","typescript":"^3.5.3","uuid":"^3.3.2"},"dependencies":{"long":"^4.0.0"},"lint-staged":{"*.js":["prettier --write","git add"]},"kafkajs":{"sha":"d6e2533f7b2fdc448c3c449c2abc02747c5d4e16","compare":"https://github.com/tulios/kafkajs/compare/v1.11.0...d6e2533f7b2fdc448c3c449c2abc02747c5d4e16"},"gitHead":"d6e2533f7b2fdc448c3c449c2abc02747c5d4e16","readme":"# <a href='https://kafka.js.org'><img src='https://raw.githubusercontent.com/tulios/kafkajs/master/logoV2.png' height='60' alt='KafkaJS' aria-label='kafka.js.org' /></a>\n\nA modern Apache Kafka client for node.js. This library is compatible with Kafka `0.10+`.  \nNative support for Kafka `0.11` features.\n\nKafkaJS is battle-tested and ready for production.\n\n[![Build Status](https://dev.azure.com/tulios/kafkajs/_apis/build/status/tulios.kafkajs?branchName=master)](https://dev.azure.com/tulios/kafkajs/_build/latest?definitionId=2&branchName=master)\n[![npm version](https://badge.fury.io/js/kafkajs.svg)](https://badge.fury.io/js/kafkajs)\n[![Slack Channel](https://kafkajs-slackin.herokuapp.com/badge.svg)](https://kafkajs-slackin.herokuapp.com/)\n\n## Features\n\n- Producer\n- Consumer groups with pause, resume, and seek\n- Transactional support for producers and consumers\n- Message headers\n- GZIP compression\n- Snappy and LZ4 compression through plugins\n- Plain, SSL and SASL_SSL implementations\n- Support for SCRAM-SHA-256 and SCRAM-SHA-512\n- Support for AWS IAM authentication\n- Admin client\n\n_Read something on the website that didn't work with the latest stable version?_  \n[Check the pre-release versions](https://kafka.js.org/docs/pre-releases) - the website is updated on every merge to master.\n\n## <a name=\"getting-started\"></a> Getting Started\n\n```sh\nnpm install kafkajs\n# yarn add kafkajs\n```\n\n```javascript\nconst { Kafka } = require('kafkajs')\n\nconst kafka = new Kafka({\n  clientId: 'my-app',\n  brokers: ['kafka1:9092', 'kafka2:9092']\n})\n\nconst producer = kafka.producer()\nconst consumer = kafka.consumer({ groupId: 'test-group' })\n\nconst run = async () => {\n  // Producing\n  await producer.connect()\n  await producer.send({\n    topic: 'test-topic',\n    messages: [\n      { value: 'Hello KafkaJS user!' },\n    ],\n  })\n\n  // Consuming\n  await consumer.connect()\n  await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })\n\n  await consumer.run({\n    eachMessage: async ({ topic, partition, message }) => {\n      console.log({\n        partition,\n        offset: message.offset,\n        value: message.value.toString(),\n      })\n    },\n  })\n}\n\nrun().catch(console.error)\n```\n\n## Documentation\n\nLearn more about using [KafkaJS on the official site!](https://kafka.js.org)\n\n- [Getting Started](https://kafka.js.org/docs/getting-started)\n- [A Brief Intro to Kafka](https://kafka.js.org/docs/introduction)\n- [Configuring KafkaJS](https://kafka.js.org/docs/configuration)\n- [Example Producer](https://kafka.js.org/docs/producer-example)\n- [Example Consumer](https://kafka.js.org/docs/consumer-example)\n\n## <a name=\"contributing\"></a> Contributing\n\nKafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.\n\nSee [Developing KafkaJS](https://kafka.js.org/docs/contribution-guide) for information on how to run and develop KafkaJS.\n\n### <a name=\"help-wanted\"></a> Help wanted \uD83E\uDD1D\n\nWe welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, [please get in touch](https://kafkajs-slackin.herokuapp.com/) and we'd be happy to provide feedback and support.\n\nHere are some projects that we would like to build, but haven't yet been able to prioritize:\n\n* [Dead Letter Queue](https://eng.uber.com/reliable-reprocessing/) - Automatically reprocess messages\n* [Schema Registry](https://www.confluent.io/confluent-schema-registry/) - ~~Seamless integration with the schema registry to encode and decode AVRO~~ **[Now available!](https://www.npmjs.com/package/@kafkajs/confluent-schema-registry)** thanks to [@erikengervall](https://github.com/erikengervall)\n* [Metrics](https://prometheus.io/) - Integrate with the [instrumentation events](https://kafka.js.org/docs/instrumentation-events) to expose commonly used metrics\n\n## Acknowledgements\n\nThanks to [Sebastian Norde](https://github.com/sebastiannorde) for the V1 logo ❤️\n\nThanks to [Tracy (Tan Yun)](https://medium.com/@tanyuntracy) for the V2 logo ❤️\n\n### Sponsored by:\n\n<a href=\"https://www.digitalocean.com/?refcode=9ee868b06152&utm_campaign=Referral_Invite&utm_medium=opensource&utm_source=kafkajs\">\n  <img src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\">\n</a>\n\n## License\n\nSee [LICENSE](https://github.com/tulios/kafkajs/blob/master/LICENSE) for more details.\n","readmeFilename":"README.md","_id":"kafkajs@1.12.0-beta.5","_npmVersion":"6.4.1","_nodeVersion":"8.16.2","_npmUser":{"name":"tulios","email":"ornelas.tulio@gmail.com"},"dist":{"integrity":"sha512-0BSduTzx80E64JS19x47LzI3qI0NRlZso71LlulgeJfDFtm2SF4bipcj0mY0+GhoCXlUHx839oRL8huxsShydA==","shasum":"c18db647496c70d72f8c4534f6e9e8b57dbc9861","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/kafkajs/-/kafkajs-1.12.0-beta.5.tgz","fileCount":266,"unpackedSize":478473,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyE3aCRA9TVsSAnZWagAA7RsQAKO2GkUqkkfyBAfSK93Z\nQ4ut8O0L1RLYYtcXhuFU7Mx14qD2nXq0bW4ocjylmvS8M4sxvCxSGG6/cfun\njQj7XZH2kMayQffsxv4QPfS6u8g/m1EUq+PVOC6iQ35PeyvqWc+jQSFi9Ki+\naF3fWQvX7qP+o/VNm9hEG8sFqjNC+PBiFA2Rn0XG/EFpd8fr77jx6ya5um1n\nyxbFYdgdHpkfEmKoem5Zrk5ryWlef8+KsH8r4FYmxtTJnQOrEoWlOTK01KRN\nuJjYz4jY69CRbmm6Kd3uhHSi16bJ7Q/7Fyj/Gl4PFd9plyS3utTPr+HeEoMy\nyWWukIW9hywMEBNvwwppx4TPNaUctW2/B4JrDtiK64YAnyOikCFnqOxgyP2C\nmffGx+micU0SVJhvz+2OFf0jaWRimNcWeDZUFVG9HpDml2XWHGUKvoCl3bph\nrJhKZU3IDMy+L4tdbE4+zEYGnkpVQhaYN/AZADmhyjW00nih34JyTq5VLMRI\nVz7DkTcZnVvUXGSTSRBF/KKOW2qGeAZI2+5Ew+LH72CG7ov4IN7Lm+utFBOG\nEocW/QV6hZ4SvmBYAw8JAUNLGEhDWAoeu5VRXakiFPXjOSm7cFUuNi1Kj6Bn\nvVZ4zEzN4cxpUdG5esmNGYwrL3rWE51uSmntRHurnsi26JO6m4h60iIox+kq\n6c0F\r\n=bQts\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHD4R8KoElitQ6IO2NEOodaGFuCtWUYL/ST8J0SZaPGUAiEAzg1hF/gKaZqtkP104y03S9mt50RfAkwjTmtVoGVdoJg="}]},"maintainers":[{"name":"nevon","email":"tommy.brunn@gmail.com"},{"name":"tulios","email":"ornelas.tulio@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kafkajs_1.12.0-beta.5_1573408218146_0.9368937859122461"},"_hasShrinkwrap":false}},"name":"kafkajs","time":{"1.17.0-beta.8":"2022-05-02T06:48:01.746Z","1.17.0-beta.9":"2022-05-02T07:38:43.275Z","1.17.0-beta.6":"2022-04-08T12:26:01.713Z","1.17.0-beta.7":"2022-05-02T06:35:27.387Z","0.2.0":"2017-11-13T22:52:15.856Z","1.5.0-beta.3":"2019-02-20T10:06:53.638Z","1.5.0-beta.4":"2019-02-28T09:26:27.786Z","1.10.0-beta.0":"2019-07-26T12:32:06.322Z","1.5.0-beta.1":"2019-01-17T13:56:30.540Z","1.5.0-beta.2":"2019-02-13T13:30:13.717Z","1.5.0-beta.0":"2019-01-08T09:21:17.259Z","1.7.0":"2019-04-12T12:13:28.770Z","1.9.2":"2019-06-26T09:30:37.094Z","1.9.3":"2019-06-27T14:50:50.426Z","0.1.1":"2017-10-16T20:25:01.522Z","0.1.2":"2017-10-16T22:10:33.784Z","0.1.0":"2017-10-15T00:17:38.203Z","1.8.0":"2019-05-13T07:31:00.718Z","1.8.1":"2019-06-25T09:04:37.461Z","1.16.0":"2022-02-09T09:56:21.762Z","1.0.0":"2018-05-14T20:15:38.758Z","1.0.1":"2018-05-18T14:57:10.919Z","0.4.0":"2017-11-23T20:24:48.571Z","0.4.1":"2017-11-30T21:56:28.220Z","1.14.0-beta.9":"2020-09-21T07:37:51.359Z","1.14.0-beta.7":"2020-09-17T10:33:33.257Z","1.14.0-beta.8":"2020-09-18T08:45:07.163Z","1.14.0-beta.5":"2020-09-16T15:05:36.007Z","1.14.0-beta.6":"2020-09-16T16:54:06.587Z","1.14.0-beta.3":"2020-09-11T12:42:28.576Z","1.14.0-beta.4":"2020-09-15T14:37:23.723Z","1.15.0-beta.10":"2020-10-08T18:23:47.864Z","1.15.0-beta.11":"2020-10-09T10:23:03.629Z","1.15.0-beta.12":"2020-10-16T07:57:07.442Z","1.15.0-beta.13":"2020-10-16T16:05:20.527Z","1.15.0-beta.14":"2020-10-24T13:31:12.966Z","1.15.0-beta.15":"2020-11-01T17:31:59.963Z","1.15.0-beta.16":"2020-11-02T14:09:21.495Z","1.13.0-beta.0":"2020-01-30T10:07:55.741Z","1.15.0-beta.17":"2020-11-04T07:34:10.819Z","1.13.0-beta.1":"2020-02-05T13:31:57.786Z","1.15.0-beta.18":"2020-11-04T07:47:46.371Z","1.15.0-beta.19":"2020-11-04T17:09:43.816Z","1.14.0-beta.1":"2020-09-10T13:32:41.468Z","1.14.0-beta.2":"2020-09-11T12:39:37.635Z","1.15.0-beta.20":"2020-11-06T09:44:02.213Z","1.14.0-beta.0":"2020-09-10T13:13:07.335Z","1.15.0-beta.21":"2020-11-11T15:13:00.637Z","1.15.0-beta.22":"2020-11-16T07:11:03.191Z","1.15.0-beta.23":"2020-11-16T09:25:18.296Z","1.9.0":"2019-06-25T09:42:16.047Z","1.15.0-beta.24":"2020-11-18T12:21:52.576Z","1.9.1":"2019-06-25T15:31:14.131Z","1.15.0-beta.25":"2020-11-18T15:56:46.647Z","1.15.0-beta.26":"2020-11-19T08:48:20.468Z","1.1.0":"2018-06-14T09:11:07.963Z","1.15.0":"2020-11-24T17:18:49.448Z","0.3.1":"2017-11-20T08:24:36.354Z","0.3.2":"2017-11-23T12:55:52.262Z","1.14.0-beta.10":"2020-09-21T12:29:05.931Z","0.3.0":"2017-11-19T23:59:00.932Z","2.0.0":"2022-05-06T09:24:26.571Z","2.3.0-beta.3":"2023-02-27T12:50:48.028Z","2.0.1":"2022-05-23T06:58:48.805Z","2.3.0-beta.2":"2022-11-21T07:07:59.074Z","2.0.2":"2022-05-31T08:43:33.262Z","2.3.0-beta.1":"2022-10-17T09:33:10.522Z","2.3.0-beta.0":"2022-10-13T06:58:58.646Z","1.17.0-beta.0":"2022-02-09T12:37:05.612Z","1.17.0-beta.1":"2022-02-09T13:24:24.701Z","1.17.0-beta.4":"2022-03-09T10:51:51.631Z","1.17.0-beta.5":"2022-03-15T08:15:46.820Z","1.17.0-beta.2":"2022-03-09T08:01:59.208Z","1.17.0-beta.3":"2022-03-09T09:45:09.060Z","1.14.0":"2020-09-21T13:02:40.889Z","1.2.0":"2018-07-02T08:45:51.391Z","0.6.0":"2017-12-07T09:07:59.965Z","1.12.0-beta.11":"2019-12-09T10:02:47.023Z","1.13.0-beta.26":"2020-06-01T08:32:52.198Z","0.6.1":"2017-12-08T15:05:33.647Z","1.12.0-beta.10":"2019-12-04T15:31:14.605Z","1.13.0-beta.27":"2020-06-01T11:49:28.641Z","1.12.0-beta.13":"2019-12-12T16:24:17.163Z","1.13.0-beta.24":"2020-05-29T15:30:41.927Z","1.12.0-beta.12":"2019-12-12T15:24:06.310Z","1.13.0-beta.25":"2020-05-31T13:12:04.111Z","0.6.4":"2017-12-13T20:07:00.479Z","1.12.0-beta.15":"2019-12-23T09:52:18.332Z","1.13.0-beta.22":"2020-05-29T15:12:03.985Z","0.6.5":"2017-12-14T09:02:56.425Z","1.12.0-beta.14":"2019-12-21T10:30:30.309Z","1.13.0-beta.23":"2020-05-29T15:18:23.189Z","0.6.2":"2017-12-11T09:55:47.496Z","1.12.0-beta.17":"2019-12-23T20:41:12.312Z","1.13.0-beta.20":"2020-05-08T07:45:55.775Z","0.6.3":"2017-12-11T19:52:07.999Z","1.12.0-beta.16":"2019-12-23T20:38:38.272Z","1.13.0-beta.21":"2020-05-13T06:41:39.205Z","1.4.7":"2019-01-17T13:53:22.913Z","1.12.0-beta.19":"2020-01-08T16:46:06.178Z","1.4.8":"2019-02-18T09:48:09.419Z","1.12.0-beta.18":"2020-01-08T13:22:57.071Z","1.13.0-beta.28":"2020-06-02T08:23:17.416Z","1.13.0-beta.29":"2020-06-08T08:22:24.839Z","1.11.0-beta.1":"2019-08-08T11:54:46.111Z","1.11.0-beta.0":"2019-08-08T09:11:43.773Z","1.11.0-beta.3":"2019-08-12T08:00:28.238Z","1.11.0-beta.2":"2019-08-09T17:19:22.675Z","1.11.0-beta.5":"2019-08-18T12:15:35.918Z","1.11.0-beta.4":"2019-08-14T17:10:57.260Z","1.11.0-beta.7":"2019-08-20T12:13:25.516Z","1.11.0-beta.6":"2019-08-19T13:07:14.842Z","1.11.0-beta.9":"2019-08-20T12:50:52.793Z","1.11.0-beta.8":"2019-08-20T12:26:55.975Z","1.16.0-beta.0":"2020-12-03T13:45:01.422Z","1.16.0-beta.2":"2020-12-11T12:34:24.340Z","1.16.0-beta.1":"2020-12-11T08:40:39.020Z","1.16.0-beta.4":"2021-01-05T18:05:07.822Z","1.16.0-beta.3":"2020-12-30T14:36:16.458Z","1.13.0-beta.15":"2020-04-08T17:22:26.666Z","1.16.0-beta.6":"2021-01-08T09:21:29.633Z","1.12.0-beta.21":"2020-01-14T16:31:13.344Z","1.13.0-beta.16":"2020-04-26T15:24:29.240Z","1.16.0-beta.5":"2021-01-07T19:12:43.252Z","2.1.0":"2022-06-28T11:01:46.023Z","1.13.0-beta.13":"2020-03-23T10:35:28.377Z","1.16.0-beta.8":"2021-02-10T16:34:33.728Z","1.13.0-beta.14":"2020-03-24T08:25:02.938Z","1.16.0-beta.7":"2021-02-01T09:36:33.292Z","1.13.0-beta.11":"2020-03-20T13:06:38.326Z","1.13.0-beta.12":"2020-03-20T21:32:45.733Z","1.16.0-beta.9":"2021-02-22T11:52:15.600Z","1.13.0-beta.10":"2020-03-18T10:01:39.773Z","1.13.0-beta.19":"2020-05-07T18:43:03.545Z","1.13.0-beta.17":"2020-04-29T07:15:45.990Z","1.13.0-beta.18":"2020-05-07T11:02:03.671Z","1.3.0":"2018-08-06T09:22:05.779Z","1.3.1":"2018-08-20T07:37:38.888Z","1.13.0":"2020-09-10T12:09:03.061Z","1.12.0-beta.20":"2020-01-09T15:28:29.978Z","1.13.0-beta.48":"2020-06-29T06:26:50.692Z","1.13.0-beta.49":"2020-07-06T09:25:01.490Z","1.13.0-beta.46":"2020-06-27T07:15:16.124Z","0.5.0":"2017-12-04T14:47:31.346Z","1.11.0":"2019-09-30T19:30:53.857Z","1.13.0-beta.47":"2020-06-27T07:20:32.572Z","1.13.0-beta.44":"2020-06-27T07:03:44.719Z","1.13.0-beta.45":"2020-06-27T07:10:40.093Z","1.13.0-beta.42":"2020-06-27T06:46:35.993Z","1.13.0-beta.43":"2020-06-27T06:57:59.221Z","1.13.0-beta.40":"2020-06-25T14:25:50.318Z","1.13.0-beta.41":"2020-06-26T07:53:30.852Z","1.13.0-beta.6":"2020-03-14T09:51:38.339Z","1.13.0-beta.37":"2020-06-24T15:14:31.154Z","1.13.0-beta.7":"2020-03-15T17:14:01.181Z","1.13.0-beta.38":"2020-06-24T15:27:58.429Z","1.13.0-beta.8":"2020-03-15T17:20:47.186Z","1.13.0-beta.35":"2020-06-15T11:24:57.352Z","1.13.0-beta.9":"2020-03-16T13:10:07.040Z","1.13.0-beta.36":"2020-06-23T15:28:31.521Z","1.13.0-beta.2":"2020-02-23T10:47:55.330Z","1.13.0-beta.33":"2020-06-12T06:36:27.723Z","1.13.0-beta.3":"2020-03-10T08:38:21.295Z","1.13.0-beta.34":"2020-06-12T11:31:50.100Z","1.13.0-beta.4":"2020-03-10T09:12:33.885Z","1.13.0-beta.31":"2020-06-10T06:15:25.336Z","1.13.0-beta.5":"2020-03-10T12:31:29.038Z","1.13.0-beta.32":"2020-06-10T11:43:46.764Z","2.2.4":"2023-02-27T13:18:01.377Z","2.2.2":"2022-10-18T07:53:08.595Z","2.2.3":"2022-11-21T09:36:16.279Z","1.13.0-beta.39":"2020-06-25T07:47:23.833Z","2.2.0":"2022-08-16T09:04:18.359Z","2.2.1":"2022-10-13T14:50:39.891Z","1.16.0-beta.32":"2022-01-10T09:26:24.265Z","1.4.0":"2018-10-09T17:39:39.246Z","1.16.0-beta.33":"2022-01-27T07:48:27.697Z","1.4.1":"2018-10-17T11:47:57.368Z","1.16.0-beta.34":"2022-02-03T09:55:57.239Z","2.2.0-beta.6":"2022-08-16T08:52:59.951Z","1.4.2":"2018-10-22T17:48:20.235Z","1.16.0-beta.35":"2022-02-07T08:14:58.871Z","2.2.0-beta.5":"2022-08-16T06:50:53.685Z","1.4.3":"2018-10-22T17:56:18.125Z","2.2.0-beta.4":"2022-07-26T09:03:42.890Z","1.4.4":"2018-10-29T10:32:59.006Z","2.2.0-beta.3":"2022-07-26T08:40:17.685Z","1.4.5":"2018-11-28T10:43:04.618Z","1.16.0-beta.30":"2021-12-17T12:17:56.565Z","2.2.0-beta.2":"2022-07-25T12:58:13.513Z","1.4.6":"2018-12-03T13:54:40.498Z","1.16.0-beta.31":"2021-12-27T10:00:27.561Z","2.2.0-beta.1":"2022-07-25T12:27:09.583Z","0.6.8":"2017-12-27T15:07:03.967Z","2.2.0-beta.0":"2022-07-07T07:01:50.429Z","1.13.0-beta.30":"2020-06-08T11:00:26.736Z","0.6.6":"2017-12-15T14:42:37.578Z","0.6.7":"2017-12-18T16:19:26.777Z","1.12.0":"2020-01-30T09:21:05.531Z","1.16.0-beta.36":"2022-02-08T08:51:08.937Z","1.16.0-beta.37":"2022-02-08T15:10:36.381Z","1.16.0-beta.38":"2022-02-08T15:28:58.319Z","1.16.0-beta.39":"2022-02-08T17:05:27.483Z","1.10.0":"2019-07-31T14:46:27.839Z","1.13.0-beta.68":"2020-08-20T15:10:06.153Z","1.13.0-beta.69":"2020-08-31T11:10:16.662Z","1.13.0-beta.66":"2020-08-20T14:54:58.096Z","1.13.0-beta.67":"2020-08-20T15:02:31.474Z","0.8.0":"2018-04-05T11:56:39.857Z","1.13.0-beta.64":"2020-08-14T16:37:44.569Z","2.1.0-beta.8":"2022-06-28T07:46:38.649Z","0.8.1":"2018-04-11T09:40:41.953Z","1.13.0-beta.65":"2020-08-15T11:07:47.775Z","2.1.0-beta.9":"2022-06-28T08:28:48.578Z","1.16.0-beta.21":"2021-06-29T14:20:41.950Z","1.16.0-beta.22":"2021-09-29T13:50:38.248Z","1.16.0-beta.23":"2021-11-22T11:47:00.233Z","1.16.0-beta.24":"2021-11-22T11:54:54.258Z","1.16.0-beta.20":"2021-06-09T14:38:23.373Z","1.13.0-beta.62":"2020-08-02T08:06:30.616Z","1.16.0-beta.29":"2021-12-08T18:28:33.213Z","2.1.0-beta.6":"2022-06-27T14:00:16.833Z","modified":"2025-05-07T15:16:34.578Z","1.13.0-beta.63":"2020-08-14T12:25:28.309Z","2.1.0-beta.7":"2022-06-27T14:12:59.387Z","1.13.0-beta.60":"2020-08-01T08:17:21.639Z","2.1.0-beta.4":"2022-05-31T08:31:39.013Z","1.13.0-beta.61":"2020-08-01T09:20:57.954Z","2.1.0-beta.5":"2022-06-27T11:05:37.608Z","1.16.0-beta.25":"2021-11-22T12:51:58.161Z","2.1.0-beta.2":"2022-05-17T09:42:16.255Z","1.16.0-beta.26":"2021-11-22T13:07:34.740Z","2.1.0-beta.3":"2022-05-23T07:15:01.226Z","1.16.0-beta.27":"2021-11-22T13:58:28.646Z","2.1.0-beta.0":"2022-05-06T12:27:46.689Z","1.16.0-beta.28":"2021-11-26T18:23:56.803Z","2.1.0-beta.1":"2022-05-11T11:43:58.012Z","1.13.0-beta.59":"2020-07-27T11:23:55.458Z","1.13.0-beta.57":"2020-07-21T12:14:58.225Z","1.13.0-beta.58":"2020-07-24T15:07:12.351Z","1.13.0-beta.55":"2020-07-20T16:22:34.268Z","1.13.0-beta.56":"2020-07-20T16:39:29.826Z","created":"2017-10-15T00:17:38.203Z","1.13.0-beta.53":"2020-07-20T14:48:45.066Z","1.13.0-beta.54":"2020-07-20T15:49:35.802Z","1.16.0-beta.10":"2021-03-03T16:34:01.345Z","1.16.0-beta.11":"2021-03-08T16:58:16.706Z","1.5.0":"2019-03-05T14:15:08.633Z","1.15.0-beta.9":"2020-10-07T07:08:40.973Z","1.16.0-beta.12":"2021-04-01T12:04:01.187Z","1.5.1":"2019-03-14T09:49:36.467Z","1.15.0-beta.8":"2020-10-02T06:42:31.283Z","1.16.0-beta.13":"2021-04-15T17:32:30.826Z","1.5.2":"2019-04-01T08:24:43.932Z","1.15.0-beta.7":"2020-09-30T20:37:30.474Z","1.15.0-beta.6":"2020-09-30T16:42:52.089Z","1.15.0-beta.5":"2020-09-30T05:29:47.831Z","1.15.0-beta.4":"2020-09-29T18:55:28.155Z","1.13.0-beta.51":"2020-07-20T13:25:40.177Z","1.16.0-beta.18":"2021-05-24T10:13:15.637Z","1.13.0-beta.52":"2020-07-20T14:36:55.006Z","1.16.0-beta.19":"2021-06-02T12:08:48.887Z","1.13.0-beta.50":"2020-07-20T11:37:19.016Z","1.16.0-beta.14":"2021-04-17T14:46:31.472Z","1.16.0-beta.15":"2021-04-19T16:34:08.832Z","1.16.0-beta.16":"2021-05-13T11:04:17.839Z","1.16.0-beta.17":"2021-05-22T16:46:17.163Z","0.7.0":"2018-01-19T13:54:26.733Z","1.12.0-beta.0":"2019-10-01T13:44:08.522Z","0.7.1":"2018-01-23T09:07:14.086Z","1.15.0-beta.3":"2020-09-25T20:52:00.658Z","1.15.0-beta.2":"2020-09-25T19:57:21.842Z","1.15.0-beta.1":"2020-09-25T19:14:44.326Z","1.15.0-beta.0":"2020-09-24T13:41:00.746Z","1.17.0-beta.14":"2022-05-02T12:57:31.846Z","1.17.0-beta.13":"2022-05-02T09:32:08.034Z","1.17.0-beta.16":"2022-05-02T14:45:05.615Z","1.17.0-beta.15":"2022-05-02T13:09:25.481Z","1.17.0-beta.18":"2022-05-05T11:33:47.177Z","1.17.0-beta.17":"2022-05-03T08:12:47.864Z","1.17.0-beta.19":"2022-05-06T09:23:30.188Z","1.17.0-beta.10":"2022-05-02T07:57:59.441Z","1.17.0-beta.12":"2022-05-02T08:53:39.506Z","1.17.0-beta.11":"2022-05-02T08:43:49.505Z","1.11.0-beta.10":"2019-08-23T07:33:07.775Z","1.6.0":"2019-04-01T08:35:51.967Z","1.12.0-beta.9":"2019-12-02T15:59:50.839Z","2.1.0-beta.10":"2022-06-28T09:44:25.598Z","1.12.0-beta.4":"2019-11-08T16:01:40.934Z","1.12.0-beta.3":"2019-10-31T15:57:47.212Z","1.12.0-beta.2":"2019-10-08T15:23:04.583Z","1.13.0-beta.71":"2020-09-09T15:31:28.855Z","1.12.0-beta.1":"2019-10-02T06:50:43.597Z","1.11.0-beta.12":"2019-09-16T14:00:03.795Z","1.12.0-beta.8":"2019-12-02T09:34:28.319Z","1.11.0-beta.11":"2019-09-12T15:06:22.879Z","1.12.0-beta.7":"2019-11-29T10:29:08.560Z","1.13.0-beta.70":"2020-09-08T14:32:52.112Z","1.12.0-beta.6":"2019-11-18T08:24:28.873Z","1.11.0-beta.13":"2019-09-23T07:28:45.423Z","1.12.0-beta.5":"2019-11-10T17:50:18.294Z"},"readmeFilename":"README.md","homepage":"https://kafka.js.org"}