Releases: Agash/ObsWebSocket
v0.3.0 - OBS Websocket Protocol 5.7.0
v0.3.0
v0.3.0 updates protocol to 5.7.0 for new Canvas functionality within OBS, v0.2.0 stable release is being skipped
Highlights (from 0.2.0)
- Added generated System.Text.Json serializer context usage across the runtime path.
- Reworked JSON serialization/deserialization paths to use context-backed options consistently.
- Improved AOT safety in request-data serialization paths (especially object-based request payload handling).
- Added/generated MessagePack metadata support for protocol DTOs.
- Reworked MessagePack resolver/serializer flow to avoid hot-path object roundtrips and improve static typing.
I'm not that well versed in MessaegPack so I hope for others to confirm whether or not this works as intended and is implemented in a at least somewhat ok manner.
Serialization & AOT
JSON
- Runtime now relies on generated context options for serializer operations.
- Improved compatibility with trimming and Native AOT scenarios.
- Added stricter error behavior for unsupported runtime object shapes in AOT-sensitive paths.
MessagePack
- Resolver chain and serializer behavior updated to better support AOT constraints.
- Improved handling for envelope/payload flow and stub extension data interoperability.
- Added/expanded tests and transport checks around complex payload shapes.
Example App Improvements
Aligned with all the new changes and added Spectre.Console for better displaying.
CI / Build
- Native AOT smoke publish flow updated to reduce restore/publish mismatch issues.
- Improved handling of known external MessagePack assembly-level analysis warning behavior in CI.
Full Changelog: v0.1.5...v0.3.0
v0.3.0-dev2
Protocol refresh from OBS WebSocket master: Canvas lifecycle events (CanvasCreated, CanvasNameChanged, CanvasRemoved), GetCanvasList response type, optional canvasUuid filtering on scene-scoped requests. All call sites and tests updated for new signatures.
v0.2.0-beta1 — Native AOT Serialization Overhaul (JSON + MsgPack)
v0.2.0-beta1
This beta focuses on making ObsWebSocket substantially more Native AOT-friendly while improving transport
validation, generated protocol coverage, and MessagePack behavior.
Highlights
- Added generated System.Text.Json serializer context usage across the runtime path.
- Reworked JSON serialization/deserialization paths to use context-backed options consistently.
- Improved AOT safety in request-data serialization paths (especially object-based request payload handling).
- Added/generated MessagePack metadata support for protocol DTOs.
- Reworked MessagePack resolver/serializer flow to avoid hot-path object roundtrips and improve static typing.
I'm not that well versed in MessaegPack so I hope for others to confirm whether or not this works as intended and is implemented in a at least somewhat ok manner.
Serialization & AOT
JSON
- Runtime now relies on generated context options for serializer operations.
- Improved compatibility with trimming and Native AOT scenarios.
- Added stricter error behavior for unsupported runtime object shapes in AOT-sensitive paths.
MessagePack
- Resolver chain and serializer behavior updated to better support AOT constraints.
- Improved handling for envelope/payload flow and stub extension data interoperability.
- Added/expanded tests and transport checks around complex payload shapes.
Example App Improvements
Aligned with all the new changes and added Spectre.Console for better displaying.
CI / Build
- Native AOT smoke publish flow updated to reduce restore/publish mismatch issues.
- Improved handling of known external MessagePack assembly-level analysis warning behavior in CI.
Notes
- This is a beta release. APIs and internal behavior may still evolve before stable.
- If you are validating Native AOT, prefer testing with the Example app transport suite in your target runtime
environment.
Feedback Requested
Please report:
- Native AOT publish/runtime issues (including runtime IDs and SDK versions)
- MsgPack payload edge cases (especially extension data / unknown fields)
- Any transport parity differences between JSON and MsgPack
Full Changelog: v0.1.5...v0.2.0-beta1
v0.1.5
Full Changelog: v0.1.4...v0.1.5
v0.1.4
Full Changelog: v0.1.3...v0.1.4