app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Drive your own KiCad from an AI, in the background: open every editor, read the whole board as data (the EDA Bridge Standard board model), stack-up, part heights, netlists, place, route, pour, DRC and exports.
← Commit history
1.0.59: 1.0.59: the EDA Bridge Standard board model. kicad_routing_state {model:"standard"} answers the standard's board model (mm, y up, custom pads as rectangles with copperPoints, the outline with arcs, unconnected from the copper with isolatedCopper, an order-independent revision), live or from the file; the edit verbs take its revision and, with frame:"standard", its coordinates. New: kicad_layer_stack, kicad_pour_state, kicad_bodies (3D heights from STEP/VRML), kicad_netlist (expect comparison, pin types), kicad_board_summary, kicad_list_nets, kicad_list_designators, kicad_copper_layers, kicad_layers_in_use, kicad_component_data, kicad_component_pins, kicad_sch_no_connect (#131). Fixes: kicad_remove_route honours dryRun (#134); placement outline box follows arcs and circles, ring courtyards no longer collide (#133); PCM libraries resolve ${KICAD10_3RD_PARTY} (#130); the no-ipc build compiles again. Unconnected matches KiCad's DRC on six KiCad 10 demo boards; verb battery on DESKTOP-BAR6S0F (KiCad 10.0.4).
1 file changed
+3−1
tools/build_native_release.py+3−1@@ -75,7 +75,9 @@ def push_chunked(ref, files, msg, cwd=None): for i in range(0, len(files), 40): chunk = files[i:i + 40] proc = subprocess.run(["adom-wiki", "repo", "push", ref, "-m", msg, "--files"] + chunk, capture_output=True, text=True, cwd=cwd)- ok = '"ok": true' in proc.stdout+ # already identical on the page (PUSH_UNCHANGED) is success: the release must not refuse a source+ # push that has nothing left to commit (it did after a merged PR, 1.0.59)+ ok = '"ok": true' in proc.stdout or ("PUSH_UNCHANGED" in proc.stdout + proc.stderr and proc.returncode in (0, 1) and '"unchanged": ' in proc.stdout) print(f" push {i // 40 + 1}: {len(chunk)} file(s) -> {'ok' if ok else 'FAILED'}") if not ok: print((proc.stdout + proc.stderr)[-600:])