Repository navigation
feat(wslink): upgrade to wslink 2 - #547
Merged
Merged
Conversation
Wslink 2 replaces JSON with msgpack, sent as chunked binary messages. - Port the Node server WebSocket client to msgpack/chunking, reusing wslink's chunking module, and route viewer shutdown through it - Wait for the viewer to close the socket after application.exit: wslink 2 handles messages asynchronously, closing right away drops it - Omit undefined RPC params: msgpack sends them as null where JSON omitted them, which fails the viewer schema validation - Integration tests: register each microservice as soon as it runs and clean up started project folders even when the setup fails Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The server never reads the "wslink" message version field. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
panquez
approved these changes
Oct 16, 2026
oxlint-tsgolint 7.0.2004 reports a multi-line type assertion at its first line, so the disable comment above its last line no longer applied. - Bridge Dexie's liveQuery to rxjs Observable in a liveObservable helper - Move the WidgetHandle cast to an asWidgetHandle helper - Await the WebSocket client before casting it to RpcClient Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
wslink ships chunking.ts next to its compiled chunking.js, and the extension-less import resolved to the TypeScript source, which the Nitro production build cannot parse. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Member
|
🎉 This PR is included in version 10.40.0-rc.1 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Upgrades wslink from 1.12.4 to 2.5.0. Wslink 2 replaces JSON with msgpack, sent as chunked binary messages, so it needs the OpenGeodeWeb-Viewer PR on the same
feat/wslink_2branch.Changes
server/utils/ws_client.ts): encodes with@msgpack/msgpackand reuses wslink's chunking module (typed by a smallwslink_chunking.d.tsshim). Viewer shutdown incleanup.tsnow goes through this client instead of its own raw JSON WebSocket.application.exit, wait for the viewer to close the socket. Wslink 2 handles messages asynchronously, so closing right away dropped the request.undefinedasnullwhere JSON omitted the key, which failed the viewer schema validation (e.g.collection_idon model colors).callClientnow omits undefined values.blobis now the image bytes (aUint8Array); the existingBlobwrapping already handles it.Testing
🤖 Generated with Claude Code