aboutsummaryrefslogtreecommitdiffstats
path: root/idatui/app.py
diff options
context:
space:
mode:
authorblasty <blasty@local>2026-07-24 14:41:23 +0200
committerblasty <blasty@local>2026-07-24 14:41:23 +0200
commit0decb747ac9239faf5119b7faa80596995746ef9 (patch)
tree7996725bc0d3c62d9c25d1f5bc3f12979711a52c /idatui/app.py
parenttests: pass url=""/db=None to IdaTui in the worker pilot path (diff)
downloadida-tui-0decb747ac9239faf5119b7faa80596995746ef9.tar.gz
ida-tui-0decb747ac9239faf5119b7faa80596995746ef9.tar.xz
ida-tui-0decb747ac9239faf5119b7faa80596995746ef9.zip
refactor: extract shared error hierarchy + Session into idatui/errors.py
The IDAError/IDAConnectionError/IDAToolError/... exceptions and the Session dataclass were defined in client.py (the ida-pro-mcp HTTP client), but the idalib worker path (worker_client/domain/app) needs them without the HTTP transport. Move them to a transport-agnostic errors.py; client.py re-exports them so the deprecated mcp tooling and stress tests are unchanged (verified: errors.IDAToolError IS client.IDAToolError, so cross-module `except` still works). worker_client, domain (TYPE_CHECKING-guarded IDAClient hint), app, and __init__ now import the shared types from errors.py. This decouples the worker path from client.py at runtime -- the prerequisite for deleting the mcp transport.
Diffstat (limited to 'idatui/app.py')
-rw-r--r--idatui/app.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/idatui/app.py b/idatui/app.py
index 1936153..712b4de 100644
--- a/idatui/app.py
+++ b/idatui/app.py
@@ -42,7 +42,8 @@ from textual.widgets.option_list import Option
from .highlight import highlight_c
-from .client import IDAClient, IDAToolError, IDAConnectionError
+from .errors import IDAToolError, IDAConnectionError
+from .client import IDAClient # deprecated mcp transport (worker path uses WorkerClient)
from .domain import DisasmModel, Func, Head, ListingModel, Program, Struct
# Styles for the disassembly listing.