What's Changed
Bug fixes
- Fix default CLI log level from INFO to WARNING so normal usage is not noisy
- Suppress raw Python tracebacks on workspace build failure; error details available via
--log-level debugwhile the user sees only[Error] <message> - Fix
get_pane()to match sibling methods: widen catch toException, preserve exception chain viafrom e, replace bareprint()with structured debug log - Route
ls --jsonanddebug-info --jsonthroughOutputFormatterfor consistent machine-readable output
Development
Structured logging with extra context across all modules
All modules now use logging.getLogger(__name__) with structured extra keys (tmux_session, tmux_window, tmux_pane, tmux_config_path, etc.) for filtering and aggregation. Library __init__.py adds
NullHandler per Python best practices. A new TmuxpLoggerAdapter provides persistent context for objects with stable identity.
- Remove
coloramaruntime and type-stub dependencies; replace with stdlib ANSI constants - Route all raw
print()calls throughtmuxp_echo()for consistent output channels
Links
Full Changelog: v1.65.0...v1.66.0