app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Reference implementation of the KiCad bridge: multi-instance Python server, forward path via kicad-cli, reverse path via in-process plugin. Most complex of the three bundled bridges.
← Commit history
0.9.280: kicad_install_symbol now passes errorCode (kicad_refuses_symbol), kicadParser and _hint through to the caller; 0.9.279 set them inside add_symbol but the verb wrapper dropped them, so the wire response had errorCode null.
3 files changed
+9−3
BRIDGE_VERSION+1−1@@ -1 +1 @@-0.9.279+0.9.280
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "kicad", "displayName": "KiCad EDA",- "version": "0.9.279",+ "version": "0.9.280", "description": "Reverse bridge for KiCad \u2014 board/schematic introspection, lint via kicad-cli, plugin install, multi-instance probe, in-process DRC.", "homepage": "https://wiki.adom.inc/adom/adom-bridge", "author": "Adom Inc.",
handlers/install_symbol.py+7−1@@ -92,7 +92,13 @@ def handle_install_symbol(kicad_info: dict, args: dict) -> dict: result = add_symbol(kicad_info, symbol_text) if not result.get("success"):- return {"success": False, "error": result.get("error", "Unknown error")}+ # Pass the machine-readable parts through (wiki #71): errorCode tells a+ # caller WHICH refusal this was, kicadParser carries KiCad's own words.+ out = {"success": False, "error": result.get("error", "Unknown error")}+ for k in ("errorCode", "kicadParser", "_hint"):+ if result.get(k) is not None:+ out[k] = result[k]+ return out added_names = result.get("added", []) lib_path = result.get("lib_path", "")