The importers previously refused to touch an already-imported component by
design, which meant re-importing an updated UltraLibrarian/SnapEDA zip for
the same part-number errored out. Add --update to import_component.py's
import_symbol/import_footprint (and thread it through import_snapeda.py and
import_ultralibrarian.py) so an existing symbol/footprint can be replaced
in place instead, with the manifest recording it as UPDATED rather than NEW.
Used it to refresh XTAC5212IRGER from a newer UltraLibrarian download
(single-unit symbol layout vs. the previous split power/signal units;
same 29 pins).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Si4684-A10-GM (Skyworks FM/DAB/DAB+ receiver): extracted from unmerged
kicad-symbols MR !4782 (cannot_be_merged, failing pipeline), then
independently validated with kicad-cli and cross-checked against two
unrelated sources (Skyworks public product summary block diagram, and
PE5PVB/SI4684-DAB-Receiver's built/fabricated symbol) -- all comparable
pin names/numbers agree. Symbol only, standard Package_DFN_QFN
footprint.
FSC-BT1035 (Feasycom BT 5.2 audio module): hand-authored from the
official Feasycom datasheet's Table 3-2 pin definition (all 52 pins),
validated with kicad-cli. Symbol only -- no reliable footprint/3D
source was found; see README for what was tried and how to add one
later (manvalan/DigiRadio has a fabricated footprint for this exact
part, but its geometry lives in EasyEDA's proprietary JSON format).
scripts/import_snapeda.py: unzips a SnapEDA "Download KiCad" export and
hands off to import_component.py's existing core logic (same
validation/collision/lib-table rules as every other import path).