| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2025-12-14 | 3.0 kB | |
| v1.62.0_ Fix _tmuxp load_ traceback after session kill source code.tar.gz | 2025-12-14 | 943.0 kB | |
| v1.62.0_ Fix _tmuxp load_ traceback after session kill source code.zip | 2025-12-14 | 1.1 MB | |
| Totals: 3 Items | 2.0 MB | 7 | |
Highlights
This release fixes an important bug where users would see a TmuxObjectDoesNotExist traceback after detaching from a session that was killed during use. The fix comes via the libtmux 0.53.0 dependency update.
Bug Fixes
Fixed traceback on session load (#1002, #1003)
Fixed an issue where tmuxp load would display a traceback after users detached from a killed session.
The Problem
After running tmuxp load, users would see this traceback printed to their terminal after detaching:
Traceback (most recent call last):
File "~/.local/bin/tmuxp", line 7, in <module>
sys.exit(cli.cli())
...
File ".../tmuxp/cli/load.py", line 152, in _load_attached
builder.session.attach()
File ".../libtmux/session.py", line 332, in attach
self.refresh()
File ".../libtmux/neo.py", line 242, in fetch_obj
raise exc.TmuxObjectDoesNotExist(...)
libtmux.exc.TmuxObjectDoesNotExist: Could not find object
When It Occurred
Users encountered this when they:
1. Loaded a tmux session via tmuxp load
2. Worked in the session
3. Killed the session (e.g., closed all windows) before detaching
4. Detached from tmux
Root Cause
The issue was in libtmux's Session.attach() method, which called refresh() after the attach-session command returned. Since attach-session is a blocking interactive command, the session state can change arbitrarily during attachment — including being killed entirely. Attempting to refresh a non-existent session caused the exception.
Timeline
- Feb 2024: libtmux added
Session.attach()with therefresh()call - Nov 2025: tmuxp switched from the older
attach_session()toattach() - Users started experiencing the bug
Resolution
Fixed in libtmux 0.53.0 (libtmux#616) by removing the unnecessary refresh() call from Session.attach().
Dependency Updates
libtmux 0.52.1 → 0.53.0
Breaking Change: Minimum libtmux version bumped from 0.52.1 to 0.53.0.
libtmux 0.53.0 includes:
- Fix for Session.attach(): Removes the refresh() call that caused TmuxObjectDoesNotExist exceptions when sessions were killed during attachment
Development Updates
- Bumped development dependencies
- Updated uv from 0.9.16 to 0.9.17
Installation
pip:
:::bash
pip install --upgrade tmuxp
uv:
:::bash
uv add tmuxp
uvx (one-time use):
:::bash
uvx tmuxp load <config>
pipx:
:::bash
pipx upgrade tmuxp
What's Changed
- py(deps) Bump libtmux 0.52.1 -> 0.53.0 by @tony in https://github.com/tmux-python/tmuxp/pull/1003
Full Changelog: https://github.com/tmux-python/tmuxp/compare/v1.61.0...v1.62.0