v12.1.1
nestjs/nestv12.1.1Sep 28, 2026by kamilmysliwiec
Upgrading?
AI Summary
This release focuses on stabilizing the NestJS framework by addressing critical bugs in logging, microservices communication protocols (MQTT, NATS, Kafka), and circular dependency detection. It also introduces a new enhancement for deserializer exports and improves platform compatibility.
Key Highlights
- Fixed logger bugs in JSON output, log level changes, and handling of fatal/buffered logs.
- Enhanced microservices reliability by fixing connection retries for MQTT, NATS, Kafka, and RabbitMQ clients.
- Resolved TCP event listener management to prevent incorrect event handling during socket reconnections.
- Improved circular dependency detection to cover scenarios involving more than two providers.
- Fixed Fastify platform to correctly treat JSON content types with parameters as valid JSON.
New Features
- Export deserializers from the package root to improve external access.
Full Release Notes
## v12.1.1 (2026-09-28) #### Bug fixes * `common`, `core`, `microservices`, `testing` * [#17893](https://github.com/nestjs/nest/pull/17893) fix(common): logger bugs in json output, level changes, fatal and buffered logs ([@kamilmysliwiec](https://github.com/kamilmysliwiec)) * `microservices` * [#17891](https://github.com/nestjs/nest/pull/17891) fix(microservices): let the mqtt client retry after a failed connect ([@hktitof](https://github.com/hktitof)) * [#17888](https://github.com/nestjs/nest/pull/17888) fix(microservices): keep tcp event listeners across reconnects ([@KAPUIST](https://github.com/KAPUIST)) * [#17887](https://github.com/nestjs/nest/pull/17887) fix(microservices): ignore events from a replaced tcp client socket ([@KAPUIST](https://github.com/KAPUIST)) * [#17878](https://github.com/nestjs/nest/pull/17878) fix(microservices): keep a newer nats connection when a stale one fails ([@hktitof](https://github.com/hktitof)) * [#17869](https://github.com/nestjs/nest/pull/17869) fix(microservices): keep a newer kafka connection when a stale one fails ([@kamilmysliwiec](https://github.com/kamilmysliwiec)) * [#17865](https://github.com/nestjs/nest/pull/17865) fix(microservices): let the rmq client retry after a failed connect ([@hktitof](https://github.com/hktitof)) * [#17866](https://github.com/nestjs/nest/pull/17866) fix(microservices): reply on the request channel when redis wildcards are enabled ([@fadiroot](https://github.com/fadiroot)) * [#17861](https://github.com/nestjs/nest/pull/17861) fix(microservices): recover the nats client after it gives up reconnecting ([@xia-chao](https://github.com/xia-chao)) * `common` * [#17884](https://github.com/nestjs/nest/pull/17884) fix(common): preserve string enum values matching numeric member names ([@KAPUIST](https://github.com/KAPUIST)) * `core` * [#17871](https://github.com/nestjs/nest/pull/17871) fix(core): detect circular dependencies across more than two providers ([@erezcor](https://github.com/erezcor)) * `platform-fastify` * [#17867](https://github.com/nestjs/nest/pull/17867) fix(fastify): treat a JSON content type with parameters as JSON in reply() ([@fadiroot](https://github.com/fadiroot)) * `core`, `testing` * [#17860](https://github.com/nestjs/nest/pull/17860) fix(core): honor class and factory overrides of value providers ([@lehafari](https://github.com/lehafari)) #### Enhancements * `common` * [#17876](https://github.com/nestjs/nest/pull/17876) fix(common): reject non-numeric items in ParseArrayPipe with items Number ([@SulimanAbdulrazzaq](https://github.com/SulimanAbdulrazzaq)) * `microservices` * [#17863](https://github.com/nestjs/nest/pull/17863) feat(microservices): export deserializers from the package root ([@lazerg](https://github.com/lazerg)) #### Committers: 13 - Abdellatif Anaflous ([@hktitof](https://github.com/hktitof)) - Alejandro ([@lehafari](https://github.com/lehafari)) - Daniel Pinto ([@Cayan](https://github.com/Cayan)) - Dharmik Sondagar ([@DharmikSondagar](https://github.com/DharmikSondagar)) - Kamil Mysliwiec ([@kamilmysliwiec](https://github.com/kamilmysliwiec)) - Lazizbek Ergashev ([@lazerg](https://github.com/lazerg)) - Luke Son ([@KAPUIST](https://github.com/KAPUIST)) - Micael Levi L. Cavalcante ([@micalevisk](https://github.com/micalevisk)) - Roman Khegay ([@thekhegay](https://github.com/thekhegay)) - Suliman Abdulrazzaq ([@SulimanAbdulrazzaq](https://github.com/SulimanAbdulrazzaq)) - Xia Chao ([@xia-chao](https://github.com/xia-chao)) - [@erezcor](https://github.com/erezcor) - fadi romdhan ([@fadiroot](https://github.com/fadiroot))
Related Repositories
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
Reverse engineer anything with agents, from app behavior down to native binaries.
The open source coding agent.
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.