Return void from McpStatelessSyncServer#closeGracefully instead of Mono (#1019)

Co-authored-by: Dariusz Jędrzejczyk <2554306+chemicL@users.noreply.github.com>
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
This commit is contained in:
Christian Tzolov 2026-06-11 12:02:44 +02:00 • committed by GitHub
commit c42d313975
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -9,6 +9,7 @@ The changes fall into these areas:
- [JSON serialization behaviour](#json-serialization-behaviour) — wire-format changes.
- [Server-side validation](#server-side-validation) — runtime validation of tool arguments and embedded schemas.
- [Transport changes](#transport-changes) — removed methods and the SSE deprecation.
- [Server API changes](#server-api-changes) — sync server method signature corrections.
- [New features](#new-features) — additive, backward-compatible capabilities.
---
@ -220,6 +221,18 @@ The HTTP+SSE client and server transports (and their supporting validator/except
---
## Server API changes
### `McpStatelessSyncServer#closeGracefully` returns `void`
In 1.x, `McpStatelessSyncServer.closeGracefully()` accidentally leaked the reactive signature from the underlying async server and returned `Mono<Void>`. The sync API is intentionally blocking, so returning a `Mono` was an oversight — callers had to call `.block()` themselves to get any actual shutdown behaviour.
In 2.0 the return type is corrected to `void`; the blocking call is performed internally.
**Action:** Remove any `.block()` (or `.subscribe()`) call you had appended to `closeGracefully()`. The method now blocks until the server has shut down and returns normally.
---
## New features
These are additive and backward-compatible.