Changes from 3.1.6 to 3.1.7
New Features:
- Add symbol library description and keyword export for KiCad library files
- Add component description editing dialog for customizing export descriptions
- Add STEP model Z-axis offset alignment to match WRL model pad positioning in KiCad
- Add CLI --3d-model-format option to select 3D model export format (wrl/step/both)
- Add CLI --lib-name option to customize exported library name
- Add retry mode for export to preserve existing library content and only update failed components
Bug Fixes:
- Fix STEP/WRL 3D model offset misalignment causing models to land at different pad positions in KiCad
- Fix stale fetchingComponent entry causing validation requests to be silently skipped in ComponentService
- Fix 3D model cache using corrupted empty files as valid cache hits
- Fix STEP export logic to use cache-first strategy instead of network-first
- Fix export error handling to properly clear stale component state on fetch failures
- Fix async request cancellation thread safety in NetworkClient
- Fix footprint library export to preserve existing footprints when not in overwrite mode
Improvements:
- Optimize STEP geometry parsing with single-pass CARTESIAN_POINT collection and VERTEX_POINT lookup
- Unify 3D model coordinate units to millimeters and extract WRL_UNIT_TO_MM constant
- Preload OBJ binary data during cache loading to avoid repeated disk I/O in export stage
- WRL files are regenerated from OBJ when available instead of using stale cached WRL
- Improve NetworkClient with cancelAllRequests() API and proper thread-safe request lifecycle