@@ -34,6 +34,36 @@ $ uvx --from 'libtmux' --prerelease allow python
3434
3535_ Upcoming changes will be written here._
3636
37+ ### Features
38+
39+ - Control-mode–first engine protocol (experimental): adds structured command results,
40+ notification parsing (layout changes, unlinked windows, client detach/session change,
41+ session rename, paste-buffer events), and stats while keeping existing
42+ ` Server/Session/Window/Pane.cmd ` return type (` tmux_cmd ` ) stable. (#605 )
43+ - Control mode engine's internal connection session is now automatically filtered from
44+ ` Server.sessions ` and ` Server.has_session() ` , making engine choice transparent to
45+ users. Advanced users can access all sessions via ` Server._sessions_all() ` . (#605 )
46+ - ` ControlModeEngine ` accepts optional ` internal_session_name ` and ` attach_to `
47+ parameters for advanced session management scenarios. (#605 )
48+ - ` Server.connect() ` : New convenience method for session management. Returns an
49+ existing session if found, otherwise creates a new detached session. Simplifies
50+ common session reuse patterns and works transparently with both subprocess and
51+ control-mode engines.
52+ - Control-mode diagnostics: bounded notification queue with drop counting,
53+ richer exceptions (` ControlModeTimeout ` , ` ControlModeProtocolError ` ,
54+ ` ControlModeConnectionError ` , ` SubprocessTimeout ` ), and documented retry/timeout
55+ behaviour. Control sandbox pytest fixture provides a hermetic control-mode server
56+ for integration tests.
57+
58+ ### Compatibility
59+
60+ - Control mode's internal session is now automatically filtered from user-facing APIs.
61+ Code that previously filtered ` libtmux_control_mode ` manually can be simplified.
62+ APIs remain unchanged for tmux command return objects; new metadata is attached for
63+ advanced users. (#605 )
64+ - Control-mode ` capture-pane ` trims trailing whitespace-only lines to align with
65+ subprocess behaviour; explicit range flags (` -S/-E ` ) remain exact.
66+
3767## libtmux 0.50.1 (2025-12-06)
3868
3969### Documentation (#612 )
0 commit comments