`Server.kill_session(name)` kills a session whose name only starts with `name`
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 83/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- python
- Domínio
- backend-api-design
Direção de pesquisa
Leia src/libtmux/server.py perto de Server.kill_session (linhas 483–500) e compare o tratamento do alvo com has_session(exact=True) perto da linha 429. Em seguida, encontre os testes relevantes de kill-session e execute-os. O trabalho estará concluído quando tentar encerrar um nome exato inexistente gerar um erro, enquanto uma sessão cujo nome compartilha apenas esse prefixo permanecer.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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)
- Linguagem predominante
- Python
- Estrelas
- 1.2k
- Forks
- 127
- Merge médio
- 2h 37min
- PRs com merge (30d)
- 33
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de tmux-python/libtmux
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
tmux-python/libtmux#856 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
tmux-python/libtmux#838 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
`show_option` coerces user options, so an `@` option set to `123` or `on` comes back as an int or a boolTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
tmux-python/libtmux#759 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
tmux-python/libtmux#745 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
Documentation: how to use internal libtmux loggingTalvez já em andamento @tony assumiu há 84 dias. Abertaenhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
tmux-python/libtmux#744 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de tmux-python/libtmux
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
deepchem/deepchem#5289 · 1 comentário ·
Mantenedores costumam responder em até 2 dias
-
Pull Request for pretty_macAberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 60/100
UKGovernmentBEIS/inspect_evals#2892 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Versioning docs: say that no output from the 0.46 warning check means nothing is affectedTalvez já em andamento @grelinfo assumiu hoje. Abertadocumentation priority:low size:S
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
alphacrack/readme2demo#293 ·