`Server.kill_session(name)` kills a session whose name only starts with `name`
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 83/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- python
- Bereich
- backend-api-design
Rechercherichtung
Lies src/libtmux/server.py im Bereich von Server.kill_session (Zeilen 483–500) und vergleiche die Behandlung des Ziels mit has_session(exact=True) im Bereich von Zeile 429. Finde dann die relevanten Tests für kill-session und führe sie aus. Fertig ist die Aufgabe, wenn das Beenden einer nicht vorhandenen exakten Bezeichnung einen Fehler auslöst, während eine Sitzung, deren Bezeichnung nur dieses Präfix teilt, bestehen bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
Server.kill_session("doom") removes a session named doomsday when no doom exists. It passes the bare name to kill-session -t, and tmux resolves a bare target by prefix and fnmatch(3). The docstring says so ("'asdf' will kill 'asdfasd'"), while Server.has_session() already defaults to exact=True. Scripts that kill by name can end someone else's session.
Reproduction
- Create two sessions and kill by the shorter name:
import libtmux
srv = libtmux.Server(socket_name="kill-prefix", config_file="/dev/null")
srv.new_session("probe", window_command="sh")
srv.new_session("doomsday", window_command="sh")
srv.kill_session("doom")
print(sorted(s.name for s in srv.sessions))
srv.kill()
Expected
kill_session("doom") raises because no session named doom exists, and doomsday survives.
Actual
It returns normally and doomsday is gone: ['probe'].
Environment
- libtmux:
masterat886b1cd(v0.62.0 plus 114 commits) - tmux: 3.8 (system build reports 3.8a)
- Python: run with
uv run --frozenfrom the libtmux checkout - OS: Linux (WSL2), private
-Lsocket,-f /dev/null
References
src/libtmux/server.py#L483-L500, docstring at#L489;has_session(exact=True)at#L429- Projects that target
=nameby hand: claude-squad (tmux.go#L470, "-t name does a prefix match, which is wrong"), firstmate (tmux.sh#L53), Qwen Code (ab-drive.ts#L316), NVIDIA IsaacCapture (launcher.py#L388), Microsoft amplifier-bundle-converge (tmux_view.py#L131), OpenAI tunnel-client (session.go#L714) - Ports: .NET kills
=name; Java looks the name up exactly; Go passes the bare name (lifecycle_kill.go#L101)
- Vorherrschende Sprache
- Python
- Sterne
- 1.2k
- Forks
- 127
- Ø Merge
- 2 Std. 37 Min.
- Gemergte PRs (30 T.)
- 33
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus tmux-python/libtmux
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
tmux-python/libtmux#856 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
tmux-python/libtmux#838 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
`show_option` coerces user options, so an `@` option set to `123` or `on` comes back as an int or a boolEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
tmux-python/libtmux#759 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
tmux-python/libtmux#745 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Documentation: how to use internal libtmux loggingEvtl. vergeben @tony hat das vor 84 Tagen übernommen. Offenenhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
tmux-python/libtmux#744 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in tmux-python/libtmux
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
deepchem/deepchem#5289 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 60/100
UKGovernmentBEIS/inspect_evals#2892 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Versioning docs: say that no output from the 0.46 warning check means nothing is affectedEvtl. vergeben @grelinfo hat das heute übernommen. Offendocumentation priority:low size:S
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
alphacrack/readme2demo#293 ·