Skip to content

feat(wslink): upgrade to wslink 2 - #187

Merged
BotellaA merged 4 commits into
nextfrom
feat/wslink_2
Oct 16, 2026
Merged

BotellaA merged 4 commits into
nextfrom
feat/wslink_2

Conversation

@BotellaA

Copy link
Copy Markdown
Member

Upgrades wslink from 1.12.4 to 2.6.0. Wslink 2 replaces JSON with msgpack, sent as chunked binary messages, so a 1.x client cannot talk to a 2.x server: this goes together with the OpenGeodeWeb-Front PR on the same feat/wslink_2 branch.

Changes

  • Screenshot: addAttachment is deprecated, binary data now travels inline. take_screenshot returns the image bytes directly (blob is now untyped in the schema, since JSON Schema has no bytes type), and typed_rpc keeps bytes fields as bytes (dataclasses_json would otherwise turn them into a list of ints).
  • Ready message: wslink 2 writes wslink: Starting factory without a trailing newline, so line-based launchers (Front's runScript) never saw it. The viewer now defaults WSLINK_READY_MSG to the same text plus \n.
  • Tests: the test client now speaks msgpack/chunking (reusing wslink.chunking). It waits for specific RPC responses with get_result(rpc) instead of counting messages: the old fixed drain of 5 messages hit 2–3 timeouts of 10 s per test with wslink 2. The full suite now runs in ~5 min.

Testing

  • pytest: 215 passed
  • OpenGeodeWeb-Front unit (182) and integration (166) tests pass against this viewer

🤖 Generated with Claude Code

Wslink 2 replaces JSON with msgpack, sent as chunked binary messages.

- Return the screenshot as bytes: addAttachment is deprecated, binary
  data now travels inline, and typed_rpc keeps bytes fields as bytes
- Terminate the "Starting factory" ready message with a newline,
  wslink 2 writes it without one and line-based launchers miss it
- Port the test client to msgpack/chunking and wait for specific
  responses instead of draining a fixed number of messages

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@BotellaA
BotellaA requested a review from panquez October 16, 2026 08:12
The server never reads the "wslink" message version field.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
VTK.txt is the VTK output log written by the viewer at runtime.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@BotellaA
BotellaA merged commit 1b591a9 into next Oct 16, 2026
29 checks passed
@BotellaA
BotellaA deleted the feat/wslink_2 branch October 16, 2026 13:05
@JulienChampagnol

Copy link
Copy Markdown
Member

🎉 This PR is included in version 1.34.0-rc.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@JulienChampagnol

Copy link
Copy Markdown
Member

🎉 This PR is included in version 1.34.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants