mirror of
https://github.com/esphome/esphome.git
synced 2026-06-24 12:53:26 +00:00
Revert ltchiptool as a hard dependency so the vast majority of ESPHome users (ESP32 / ESP8266 / nRF52 OTA) don't pay for libretiny tooling. Instead, on-demand install just the PlatformIO platform package when a --prebuilt-dir upload needs a flash tool that isn't on disk yet. Mechanism: when upload_program receives --prebuilt-dir for a libretiny or RP2040 target and the corresponding flash tool (ltchiptool / picotool) isn't found by get_ltchiptool_path / _find_picotool, run the same prep that 'esphome compile' would (write_cpp + write platformio.ini), then invoke 'pio pkg install -e <env>' instead of 'pio run'. PlatformIO downloads the platform without compiling, the flash tool ends up on disk, and the upload dispatch picks it up on the next lookup. After install, the tool path lookups (PATH + PIO penv for ltchiptool, PIO packages dir for picotool) succeed and the upload helper takes over. ESP32 / ESP8266 / nRF52 paths are unchanged (esptool is already bundled in requirements.txt; smpclient too for nRF52 mcumgr). Issue: esphome/device-builder#572 Issue: esphome/device-builder#570
34 lines
634 B
Plaintext
34 lines
634 B
Plaintext
cryptography==48.0.0
|
|
voluptuous==0.16.0
|
|
PyYAML==6.0.3
|
|
paho-mqtt==1.6.1
|
|
colorama==0.4.6
|
|
icmplib==3.0.4
|
|
tornado==6.5.5
|
|
tzlocal==5.3.1 # from time
|
|
tzdata>=2026.2 # from time
|
|
pyserial==3.5
|
|
platformio==6.1.19
|
|
esptool==5.2.0
|
|
click==8.3.3
|
|
esphome-dashboard==20260425.0
|
|
aioesphomeapi==44.23.0
|
|
zeroconf==0.148.0
|
|
puremagic==1.30
|
|
ruamel.yaml==0.19.1 # dashboard_import
|
|
ruamel.yaml.clib==0.2.15 # dashboard_import
|
|
esphome-glyphsets==0.2.0
|
|
pillow==12.2.0
|
|
resvg-py==0.3.1
|
|
freetype-py==2.5.1
|
|
jinja2==3.1.6
|
|
bleak==2.1.1
|
|
smpclient==6.0.0
|
|
requests==2.33.1
|
|
|
|
# esp-idf >= 5.0 requires this
|
|
pyparsing >= 3.3.2
|
|
|
|
# For autocompletion
|
|
argcomplete>=3.6.3
|