← Commit history

sheetParts carry description

Colby Knox ·b0433efee3 ·12d ago ·parent ca4312f
2 files changed +8−1
CHANGELOG.md+5
@@ -3,6 +3,11 @@ All notable changes to the Adom Bridge Fusion 360 bridge, newest first. Canonical: https://wiki.adom.inc/adom/fusion-bridge ยท GitHub backup: `adom-inc/fusion-bridge` +## 1.13.38 (unreleased)++- sheetParts carry each part's `description` (its DESCRIPTION or DESC attribute), so fusion_bom's lines and the+  engine's other schematic checks read it (1.13.37's bom lines had an empty description).+ ## 1.13.37 (2026-10-30)  - Engine 0.24.0 (standard 0.30.0). `fusion_bom` runs the engine's bom (ported from the Altium bridge, so every bridge
rust/bridge/src/checks.rs+3−1
@@ -334,7 +334,9 @@ pub(crate) fn sheet_parts(sd: &Value) -> Vec<Value> {         let params: Vec<Value> = c["params"].as_object().into_iter().flatten()             .filter_map(|(k, v)| v.as_str().map(str::trim).filter(|v| !v.is_empty()).map(|v| json!({"name": k, "value": v}))).collect();         // value and libRef (the deviceset: EAGLE's device name) feed the engine's design checks-        json!({"designator": c["designator"], "value": c["comment"], "libRef": c["libReference"], "pins": pins, "params": params})+        // EAGLE libraries keep a part's description in a DESCRIPTION or DESC attribute+        let description = ["DESCRIPTION", "DESC", "Description"].iter().find_map(|k| c["params"][*k].as_str().map(str::trim).filter(|s| !s.is_empty())).unwrap_or("");+        json!({"designator": c["designator"], "value": c["comment"], "libRef": c["libReference"], "description": description, "pins": pins, "params": params})     }).collect() }