Skip to content

💥 Upgrade to NestJS 12 - #176

Merged
flovouin merged 7 commits into
mainfrom
chore/nestjs12
Sep 4, 2026
Merged

flovouin merged 7 commits into
mainfrom
chore/nestjs12

Conversation

@flovouin

@flovouin flovouin commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

📝 Description of the PR

Upgrades all the dependencies of the package, the most significant ones being NestJS 12 and nestjs-pino 5.

NestJS 12 requires a more recent runtime, such that the minimum supported Node.js version is now 22.12.

@nestjs/terminus 12 removes the HealthIndicator base class, which means the already deprecated BaseHealthIndicatorService had to be removed as well. Health indicators should implement the HealthChecker interface directly, and build their results using the injected HealthIndicatorService. The semantics of health checks also changed slightly: an error thrown by an indicator is now reported as an unexpected failure (HTTP 500), while only a result returned by down() produces an HTTP 503.

Finally, the OutboxEventSender now stops polling and waits for its ongoing operations in beforeApplicationShutdown rather than onApplicationShutdown. NestJS calls beforeApplicationShutdown on every module before shutting down any of them, which ensures in-flight events are published before the resources the sender depends on are closed. This previously depended on the order in which modules happened to be imported, because the outbox, Spanner and Pub/Sub modules are all global and are therefore shut down in the reverse of that order.

📋 Check list

  • 🧪 Unit tests have been written.
  • 📝 Documentation has been updated.

@flovouin
flovouin merged commit 8872b48 into main Sep 4, 2026
2 checks passed
@flovouin
flovouin deleted the chore/nestjs12 branch September 4, 2026 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant