Skip to content

Commit 0450bb2

Browse files
committed
hooks(fix): remove < 3.0 warning and doctest skips
why: tmux < 3.2 is now deprecated (TMUX_SOFT_MIN_VERSION = "3.2a"). Hook arrays were introduced in tmux 3.0, so the compatibility warning and doctest skips are no longer needed. what: - Remove warnings.warn() block for tmux < 3.0 in set_hooks - Remove # doctest: +SKIP from all set_hooks examples - Doctests now run on all supported tmux versions
1 parent 1a7cd87 commit 0450bb2

File tree

1 file changed

+12
-24
lines changed

1 file changed

+12
-24
lines changed

src/libtmux/hooks.py

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -439,62 +439,50 @@ def set_hooks(
439439
--------
440440
Set hooks with explicit indices:
441441
442-
>>> session.set_hooks('session-renamed', { # doctest: +SKIP
442+
>>> session.set_hooks('session-renamed', {
443443
... 0: 'display-message "hook 0"',
444444
... 1: 'display-message "hook 1"',
445445
... })
446446
Session($...)
447447
448-
>>> hooks = session.show_hook('session-renamed') # doctest: +SKIP
449-
>>> sorted(hooks.keys()) # doctest: +SKIP
448+
>>> hooks = session.show_hook('session-renamed')
449+
>>> sorted(hooks.keys())
450450
[0, 1]
451451
452-
>>> session.unset_hook('session-renamed') # doctest: +SKIP
452+
>>> session.unset_hook('session-renamed')
453453
Session($...)
454454
455455
Set hooks from a list (sequential indices):
456456
457-
>>> session.set_hooks('after-new-window', [ # doctest: +SKIP
457+
>>> session.set_hooks('after-new-window', [
458458
... 'select-pane -t 0',
459459
... 'send-keys "clear" Enter',
460460
... ])
461461
Session($...)
462462
463-
>>> hooks = session.show_hook('after-new-window') # doctest: +SKIP
464-
>>> sorted(hooks.keys()) # doctest: +SKIP
463+
>>> hooks = session.show_hook('after-new-window')
464+
>>> sorted(hooks.keys())
465465
[0, 1]
466466
467467
Replace all existing hooks with ``clear_existing=True``:
468468
469-
>>> session.set_hooks( # doctest: +SKIP
469+
>>> session.set_hooks(
470470
... 'session-renamed',
471471
... {0: 'display-message "new"'},
472472
... clear_existing=True,
473473
... )
474474
Session($...)
475475
476-
>>> hooks = session.show_hook('session-renamed') # doctest: +SKIP
477-
>>> sorted(hooks.keys()) # doctest: +SKIP
476+
>>> hooks = session.show_hook('session-renamed')
477+
>>> sorted(hooks.keys())
478478
[0]
479479
480-
>>> session.unset_hook('session-renamed') # doctest: +SKIP
480+
>>> session.unset_hook('session-renamed')
481481
Session($...)
482482
483-
>>> session.unset_hook('after-new-window') # doctest: +SKIP
483+
>>> session.unset_hook('after-new-window')
484484
Session($...)
485485
"""
486-
# Hook arrays require tmux 3.0+. On older versions, hooks are stored
487-
# by exact name (e.g. "session-renamed[0]" is a literal name, not an
488-
# array index). See tmux commit dfb7bb68 (April 2019).
489-
if has_lt_version("3.0"):
490-
warnings.warn(
491-
"Hook arrays require tmux 3.0+. "
492-
"On older versions, set_hooks creates hooks with literal bracket "
493-
"names (e.g. 'session-renamed[0]') instead of array indices, "
494-
"and clear_existing/unset_hook may not work as expected.",
495-
stacklevel=2,
496-
)
497-
498486
if clear_existing:
499487
self.unset_hook(hook, global_=global_, scope=scope)
500488

0 commit comments

Comments
 (0)