Skip to content

Client Release v0.93.2

Latest

Choose a tag to compare

@ComfyChloe ComfyChloe released this 24 Jun 23:53
· 95 commits to Master since this release
6394d80

ARC-Client — v0.93.2 Patch Notes

Covers changes since v0.93.1 · Released June 2026

This verison covers a few edge-case bugs.


🎛️ OSC Bridge

  • Less aggressive OSC liveness checks — raised the consecutive-failure threshold from 2 to 4 before tearing down a connection. A single dropped UDP packet or a brief adapter wakeup (common on Windows) no longer kills a healthy session mid-flight.

🧩 Addons

OSCQuery

  • Default bind address changed to 0.0.0.0 — the OSCQuery HTTP service now listens on all interfaces by default so remote tools and VRChat can discover it regardless of which network adapter is active. The previous 127.0.0.1 default was too restrictive for LAN discovery.
  • Smart port reuse on startup — OSC and OSCQuery HTTP ports are re-validated via a new _isPortAvailable helper when the service initializes. If a previously-assigned port was released or claimed by another process, a fresh free port is assigned instead of failing with EADDRINUSE. Logs now distinguish reusing from previously assigned port no longer available, reassigning so the cause is obvious.
  • Virtual/tunnel adapter filtering — local IP selection now ignores vEthernet, Docker, Loopback, Pseudo, isatap, 6to4, Teredo, tun/tap, and VPN adapters when picking the IP advertised by OSCQuery. On machines with WSL/Hyper-V, Docker, or VPN interfaces the previously-first IP was often unreachable from VRChat or remote tools. Falls back to any non-loopback IPv4 if every adapter matches the filter.

XSOverlay

  • Notification log now persists to the database — recorded_at was migrated from INTEGER to TEXT with a SQLite default timestamp, so the UI notification log is accessible to all connected users instead of vanishing when the app closes.
  • Renderer reads DB rows through useXSOverlay — the composable maps persisted rows (text timestamps) instead of relying on the in-memory buffer, and formatTime() now handles both SQL datetime strings and legacy numeric timestamps for backward compatibility.

🐛 Bug Fixes

  • Settings UI: OSC port change didn't stick — useOscStatus.ts was writing localOscPort (a nonexistent key) instead of legacyOscPort used by configManager.ts. The user's port choice silently reverted to the default on every reload; the correct field is now used so the saved value persists.