From ffe39473d0ed9e252f6acc01933645cc5103af34 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 30 Jun 2025 08:18:18 -0500 Subject: [PATCH] fixes --- esphome/components/web_server/__init__.py | 12 +++--------- esphome/components/web_server_idf/__init__.py | 3 +-- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/esphome/components/web_server/__init__.py b/esphome/components/web_server/__init__.py index bf9685e4a2..54e35e301e 100644 --- a/esphome/components/web_server/__init__.py +++ b/esphome/components/web_server/__init__.py @@ -40,14 +40,7 @@ CONF_SORTING_WEIGHT = "sorting_weight" OTA_DEFAULT = True -def AUTO_LOAD() -> list[str]: - """Return the components that should be automatically loaded.""" - components = ["json", "web_server_base"] - if CORE.using_esp_idf and CORE.config is not None: - web_server_conf = CORE.config.get(CONF_WEB_SERVER, {}) - if web_server_conf.get(CONF_OTA, OTA_DEFAULT): - components.append("ota") - return components +AUTO_LOAD = ["json", "web_server_base"] web_server_ns = cg.esphome_ns.namespace("web_server") @@ -281,7 +274,8 @@ async def to_code(config): cg.add(var.set_css_url(config[CONF_CSS_URL])) cg.add(var.set_js_url(config[CONF_JS_URL])) cg.add(var.set_allow_ota(config[CONF_OTA])) - if config[CONF_OTA]: + if config[CONF_OTA] and "ota" in CORE.loaded_integrations: + # Only define USE_WEBSERVER_OTA if OTA component is actually loaded cg.add_define("USE_WEBSERVER_OTA") cg.add(var.set_expose_log(config[CONF_LOG])) if config[CONF_ENABLE_PRIVATE_NETWORK_ACCESS]: diff --git a/esphome/components/web_server_idf/__init__.py b/esphome/components/web_server_idf/__init__.py index cc453cb60e..4e6f21cd03 100644 --- a/esphome/components/web_server_idf/__init__.py +++ b/esphome/components/web_server_idf/__init__.py @@ -14,9 +14,8 @@ CONFIG_SCHEMA = cv.All( async def to_code(config): # Increase the maximum supported size of headers section in HTTP request packet to be processed by the server add_idf_sdkconfig_option("CONFIG_HTTPD_MAX_REQ_HDR_LEN", 1024) - # Check if web_server component has OTA enabled web_server_config = CORE.config.get(CONF_WEB_SERVER, {}) - if web_server_config and web_server_config[CONF_OTA] and "ota" in CORE.config: + if web_server_config.get(CONF_OTA, True) and "ota" in CORE.loaded_integrations: # Add multipart parser component for ESP-IDF OTA support add_idf_component(name="zorxx/multipart-parser", ref="1.0.1")