stremio-shell-ng/src
Claude 9b057a0030
Bump libmpv2 crate from 4.1.0 to 5.0.3
The 4.x -> 5.x release folded `EventContext` into `Mpv` and made
`wait_event` take `&mut self`, so the previous design (a single
`Arc<Mpv>` shared between the message and event threads, with the event
thread constructing its own `EventContext` from `mpv.ctx`) no longer
compiles.

Migration:
- Build the main `Mpv` (with `wid`, `title`, etc.) and use it from the
  message thread for commands and `set_property`.
- `create_client(None)` a sub-client `Mpv`, owned by the event thread,
  which calls `disable_deprecated_events`/`observe_property`/`wait_event`
  on itself. Global events (`EndFile`, `Shutdown`) and property changes
  observed by this client land in its event queue.
- Replace the old `MpvExt::wake_up` (which woke the main `Mpv`) with an
  `EventClientWakeup` holding the sub-client's `mpv_handle` pointer, so
  the message thread can interrupt the event thread's blocking
  `wait_event` after pushing a new observe request onto the channel.

Also removed the `PropertyData::Node(_)` match arm in
`communication.rs`: 5.0.0 dropped `mpv_node` support, so the variant no
longer exists and the match is exhaustive without it.

https://claude.ai/code/session_01CuGHFREBZFkf8tfaiRV4K6
2026-05-05 07:59:26 +00:00
..
stremio_app Bump libmpv2 crate from 4.1.0 to 5.0.3 2026-05-05 07:59:26 +00:00
main.rs server IPC key 2026-02-02 14:54:41 +02:00