@edgelogistics/kafkajs
v1.0.0
Published
A modern Apache Kafka client for node.js
Readme
@edgelogistics/kafkajs — temporary KafkaJS fork
Based on KafkaJS v2.2.4, commit c08472878724ce5fc62a9a9aa865255d7e7682a6. Original author Túlio Ornelas; MIT license and upstream history retained. Original README: docs/reports/fork-20261014/UPSTREAM-README.md in the source repository. KafkaJS documentation: https://kafka.js.org.
The only runtime difference is an early return in scheduleCheckPendingRequests when the queue has no pending requests and no future throttle. Pending requests still use the original 10 ms interval; future throttles still schedule a timer. This eliminates the idle timer loop introduced in 2.2.4. No Charon changes are included.
API, exports, runtime dependencies (none), Node >=14 requirement, and declarations are unchanged. After a future authorized publication, use const { Kafka } = require('@edgelogistics/kafkajs') instead of kafkajs; application migration is outside this delivery. The package name changes; self imports must use the new name.
This is a temporary bridge until the separately managed Kafka → SQS migration. Retire the fork and its release pipeline once all Kafka consumers/producers migrate and rollback needs expire. No SQS or BullMQ implementation is included.
Development and future release
corepack [email protected] install --frozen-lockfile --ignore-scripts
Run yarn lint, yarn test:types, yarn test:queue, and yarn test:regressions. Run KAFKA_BROKER=kafka:9092 yarn test:functional in the isolated Kafka network, or python3 scripts/fork/docker-lab.py for CPU ABBA and functional validation (Docker required; fixed lab names must be absent before a new run). See docs/reports/fork-20261014/report.md for actual results and limits.
Bitbucket validates pull requests and master before its separate, manually triggered public release step. It uses ESLint and the retained Yarn classic lock, with added release tooling only. NPM_TOKEN must be a secured external pipeline variable with publish rights on the edgelogistics scope. No token is read or stored locally. Git release permissions must be provided by the future repository configuration. No credential URL is generated by the release configuration.
The fork origin is configured locally; public package repository metadata points to https://bitbucket.org/edgelogistics/kafkajs.git. The local SSH host alias is not embedded in the public package. CI Git authentication remains subject to verification. Semantic-release uses master and the independent edge-v${version} tag namespace. Before enabling publication, the user must transfer the local seed edge-v2.2.4 tag along with history; the first fix release is then 2.2.5. This seed records the upstream baseline, not a published scoped package. A release-triggering conventional commit is included locally. Do not enable master publication until these decisions, repository permissions and NPM_TOKEN are reviewed. No push or publication has been executed.
