Release Guide
The package follows semantic versioning. Releases are coordinated with the sample tree and the documentation site.
Version Synchronization (Mandatory)
Version drift between packages/kafka and sample/* is a release blocker. When
bumping packages/kafka/package.json:
- Update every
sample/*/package.jsonentry for@nest-native/kafkato the new version in the same change. - Regenerate
package-lock.json. - Run
npm run release:check. - Run
npm run ci.
release:check validates README links, sample-version sync, and the package
tarball, so a drifted version fails the gate before it can be published.
Release Steps
- Land all milestone work on
mainthrough reviewed pull requests. - Bump
packages/kafka/package.jsonand the sample versions together. - Update
CHANGELOG.md: move theUnreleasedentries under the new version. - Run
npm run ciand confirm green on Node 20 and 22. - Tag the release (for
0.1.0, a lightweightv0.1.0tag onmain).
The 0.1.0 Release
The first published version is 0.1.0. The initial 0.x release covers the module,
the producer service, consumer decorators with the full enhancer pipeline, the
parameter decorators, error mapping, batch consumption with per-topic concurrency,
the transactional producer, KafkaTestModule, the migration guide, and this
documentation site.
Tarball Contract
The published package keeps "dependencies": {}. The Confluent client and the
NestJS packages are peers. release:check validates the tarball contents so only
the built dist/ artifacts ship. See Quality and CI.