Skip to content

Commit c2ab7d2

Browse files
committed
docs(control-mode): Note env requirements and capture normalization in CHANGES
1 parent 4bbd9f3 commit c2ab7d2

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

CHANGES

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,35 @@ $ uvx --from 'libtmux' --prerelease allow python
3232

3333
<!-- To maintainers and contributors: Please add notes for the forthcoming version below -->
3434

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

3765
## libtmux 0.50.0 (2025-11-30)
3866

0 commit comments

Comments
 (0)