- Register pending requests before sending so fast responses aren't lost
- Fail pending requests with SessionClosedException when the connection
closes or errors, and add onClose(), isOpen() and a request overload
with a timeout
- Serialize text sends: java.net.http.WebSocket allows only one
outstanding send, so concurrent requests could throw
- Reassemble text messages delivered in parts before parsing
- Complete error responses with SessionErrorException carrying the payload
- Answer requests for unknown methods with an error response
- Fix SessionResult.error() producing success responses
- Fix close() using invalid close code 0; send 1000
- Publish as dev.selimaj:session-java to the Gitea package registry;
make Jackson an api dependency and drop unused Tyrus/Jakarta deps
- Replace the empty test with 9 tests against an in-process server
Fixes#1
Co-Authored-By: Claude Opus 5.5 <[email protected]>