A user library that ships a core-named header (e.g. WiFiEspAT/src/WiFi.h) could shadow the arduino-esp32 core during ESP-IDF library resolution. WiFiEspAT shadowing WiFi.h pulled EspAtDrv.cpp into the build, whose const char OK[]/STATUS[] collide with ESP-IDF's enum STATUS in rom/ets_sys.h, breaking every ESP32 sketch that #include <WiFi.h>. _resolve_library_components now: - skips a header entirely when the arduino-esp32 core provides it (computed set from cores/ + libraries/, cached), so a user lib can never shadow WiFi.h/Wire.h/SPI.h/WebServer.h/... - skips a resolved user lib whose library.properties architectures= excludes esp32/*. Regression: test/backend/unit/test_espidf_core_first.py Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| boot_images | ||
| esp-idf-template | ||
| picow_net | ||
| __init__.py | ||
| arduino_cli.py | ||
| asm8080.py | ||
| asmz80.py | ||
| board_access.py | ||
| c_compile.py | ||
| chip_compile.py | ||
| esp32_flash_image.py | ||
| esp32_i2c_slaves.py | ||
| esp32_lib_bridge.py | ||
| esp32_lib_manager.py | ||
| esp32_signals.py | ||
| esp32_spi_slaves.py | ||
| esp32_worker.py | ||
| esp_qemu_manager.py | ||
| espidf_compiler.py | ||
| gpio_shim.py | ||
| picow_net_bridge.py | ||
| qemu_manager.py | ||
| rom_compile.py | ||
| signal_router.py | ||
| stm32_lib_manager.py | ||
| stm32_worker.py | ||
| wasm_chip_runtime.py | ||
| wasm_chip_slave.py | ||
| wifi_status_parser.py | ||