You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Selectors that build their own container no longer crash the component with Maximum update depth exceeded. useRoomState(room, (s) => Array.from(s.players.values())) and (s) => ({ message: s.myString }) now hold a stable reference between renders. (#13, reported by @under-undefined, who also contributed the regression tests — thank you!)
Object-literal selectors return plain snapshot data, the way array selectors already did. (s) => ({ player: s.players.get(id) }) previously handed back the live schema node.