From 14fa8072215f582e77f1c6b1fee95783da550e24 Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Thu, 30 Jul 2026 03:21:10 +0000 Subject: [PATCH] =?UTF-8?q?[FIX]=20script=20todo:=20=C2=AB=20Tester=20une?= =?UTF-8?q?=20VM=20=C2=BB=20=E2=80=94=20navigateur=20CLI=20via=20os.system?= =?UTF-8?q?=20(vrai=20TTY)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le navigateur ne faisait qu'imprimer sans réagir au clavier : la commande passait par exec_command_live, qui exécute avec stdout=PIPE (et sans stdin terminal) -> un navigateur texte (w3m/elinks) n'a pas de TTY interactif. On lance désormais le navigateur avec os.system(), qui hérite du vrai terminal (stdin/stdout/stderr) — même principe que le suivi d'installation (TUI) qui l'appelle dans self.suspend(). Ici, en CLI simple, aucun suspend n'est nécessaire. Co-Authored-By: Claude Opus 4.8 (1M context) --- script/todo/todo.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/script/todo/todo.py b/script/todo/todo.py index 360184d..cecaf06 100755 --- a/script/todo/todo.py +++ b/script/todo/todo.py @@ -1372,9 +1372,10 @@ class TODO: return url = f"http://{ip}:8069" print(f"→ {browser} {url}") - rc = self.execute.exec_command_live( - f"{browser} {shlex.quote(url)}", source_erplibre=False - ) + # os.system (et NON exec_command_live) : un navigateur texte a besoin + # du VRAI TTY interactif. exec_command_live redirige la sortie dans un + # tube -> le navigateur ne fait qu'imprimer sans réagir au clavier. + rc = os.system(f"{browser} {shlex.quote(url)}") if rc != 0: msg = t( "Page may not have loaded: Odoo not started on :8069, "