Commit cebe172
authored
py(deps) Bump libtmux 0.52.1 -> 0.53.0 (#1003)
## libtmux 0.52.1 -> 0.53.0
Bug fix for session attaching
## Bug fix for `tmuxp load`
### User Experience
After running `tmuxp load`, users would see this traceback printed to their terminal after detaching:
```
Traceback (most recent call last):
File "/home/d/.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
```
### Root Cause
The issue was caused by libtmux's `Session.attach()` calling `refresh()` after `attach-session` returned. Since `attach-session` is a **blocking interactive command**, the session state can change arbitrarily during attachment - including being killed entirely.
### Timeline
- **Feb 2024**: 9a5147aa - `Session.attach()` was added with the `refresh()` call
- **Nov 2025**: tmuxp fdafdd2b switched from `attach_session()` to `attach()`
- Users started experiencing the bug
### Fix
The fix is in libtmux: tmux-python/libtmux#616
This PR adds a regression test to tmuxp to ensure the behavior is documented and tested.3 files changed
+17
-5
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
34 | 46 | | |
35 | 47 | | |
36 | 48 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
42 | | - | |
| 42 | + | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments