diff --git a/homeassistant/components/dlna_dmr/manifest.json b/homeassistant/components/dlna_dmr/manifest.json index e2a07a3e351..ab5d035dd54 100644 --- a/homeassistant/components/dlna_dmr/manifest.json +++ b/homeassistant/components/dlna_dmr/manifest.json @@ -8,7 +8,7 @@ "documentation": "https://www.home-assistant.io/integrations/dlna_dmr", "iot_class": "local_push", "loggers": ["async_upnp_client"], - "requirements": ["async-upnp-client==0.38.0", "getmac==0.9.4"], + "requirements": ["async-upnp-client==0.38.1", "getmac==0.9.4"], "ssdp": [ { "deviceType": "urn:schemas-upnp-org:device:MediaRenderer:1", diff --git a/homeassistant/components/dlna_dms/manifest.json b/homeassistant/components/dlna_dms/manifest.json index 6173c9a3843..d4a74725467 100644 --- a/homeassistant/components/dlna_dms/manifest.json +++ b/homeassistant/components/dlna_dms/manifest.json @@ -8,7 +8,7 @@ "documentation": "https://www.home-assistant.io/integrations/dlna_dms", "iot_class": "local_polling", "quality_scale": "platinum", - "requirements": ["async-upnp-client==0.38.0"], + "requirements": ["async-upnp-client==0.38.1"], "ssdp": [ { "deviceType": "urn:schemas-upnp-org:device:MediaServer:1", diff --git a/homeassistant/components/samsungtv/manifest.json b/homeassistant/components/samsungtv/manifest.json index 2b388cf706a..780d47e4743 100644 --- a/homeassistant/components/samsungtv/manifest.json +++ b/homeassistant/components/samsungtv/manifest.json @@ -39,7 +39,7 @@ "samsungctl[websocket]==0.7.1", "samsungtvws[async,encrypted]==2.6.0", "wakeonlan==2.1.0", - "async-upnp-client==0.38.0" + "async-upnp-client==0.38.1" ], "ssdp": [ { diff --git a/homeassistant/components/ssdp/manifest.json b/homeassistant/components/ssdp/manifest.json index e6f18190c0b..8afed8b4fd1 100644 --- a/homeassistant/components/ssdp/manifest.json +++ b/homeassistant/components/ssdp/manifest.json @@ -9,5 +9,5 @@ "iot_class": "local_push", "loggers": ["async_upnp_client"], "quality_scale": "internal", - "requirements": ["async-upnp-client==0.38.0"] + "requirements": ["async-upnp-client==0.38.1"] } diff --git a/homeassistant/components/upnp/manifest.json b/homeassistant/components/upnp/manifest.json index 4b6badb0d3c..8ce32158016 100644 --- a/homeassistant/components/upnp/manifest.json +++ b/homeassistant/components/upnp/manifest.json @@ -8,7 +8,7 @@ "integration_type": "device", "iot_class": "local_polling", "loggers": ["async_upnp_client"], - "requirements": ["async-upnp-client==0.38.0", "getmac==0.9.4"], + "requirements": ["async-upnp-client==0.38.1", "getmac==0.9.4"], "ssdp": [ { "st": "urn:schemas-upnp-org:device:InternetGatewayDevice:1" diff --git a/homeassistant/components/yeelight/manifest.json b/homeassistant/components/yeelight/manifest.json index 4881d8c576d..f2a11aaf1fe 100644 --- a/homeassistant/components/yeelight/manifest.json +++ b/homeassistant/components/yeelight/manifest.json @@ -17,7 +17,7 @@ "iot_class": "local_push", "loggers": ["async_upnp_client", "yeelight"], "quality_scale": "platinum", - "requirements": ["yeelight==0.7.14", "async-upnp-client==0.38.0"], + "requirements": ["yeelight==0.7.14", "async-upnp-client==0.38.1"], "zeroconf": [ { "type": "_miio._udp.local.", diff --git a/homeassistant/const.py b/homeassistant/const.py index 45f48c4e89e..f9d250c6732 100644 --- a/homeassistant/const.py +++ b/homeassistant/const.py @@ -16,7 +16,7 @@ from .helpers.deprecation import ( APPLICATION_NAME: Final = "HomeAssistant" MAJOR_VERSION: Final = 2024 MINOR_VERSION: Final = 1 -PATCH_VERSION: Final = "4" +PATCH_VERSION: Final = "5" __short_version__: Final = f"{MAJOR_VERSION}.{MINOR_VERSION}" __version__: Final = f"{__short_version__}.{PATCH_VERSION}" REQUIRED_PYTHON_VER: Final[tuple[int, int, int]] = (3, 11, 0) diff --git a/homeassistant/package_constraints.txt b/homeassistant/package_constraints.txt index d9df52ea800..821b6fdf141 100644 --- a/homeassistant/package_constraints.txt +++ b/homeassistant/package_constraints.txt @@ -6,7 +6,7 @@ aiohttp-zlib-ng==0.1.3 aiohttp==3.9.1 aiohttp_cors==0.7.0 astral==2.2 -async-upnp-client==0.38.0 +async-upnp-client==0.38.1 atomicwrites-homeassistant==1.4.1 attrs==23.1.0 awesomeversion==23.11.0 @@ -189,3 +189,6 @@ lxml==4.9.4 # dacite: Ensure we have a version that is able to handle type unions for # Roborock, NAM, Brother, and GIOS. dacite>=1.7.0 + +# Musle wheels for pandas 2.2.0 cannot be build for any architecture. +pandas==2.1.4 diff --git a/homeassistant/util/yaml/loader.py b/homeassistant/util/yaml/loader.py index 5da5a84cc48..5d66ea23dcb 100644 --- a/homeassistant/util/yaml/loader.py +++ b/homeassistant/util/yaml/loader.py @@ -355,7 +355,12 @@ def _include_dir_named_yaml(loader: LoaderType, node: yaml.nodes.Node) -> NodeDi filename = os.path.splitext(os.path.basename(fname))[0] if os.path.basename(fname) == SECRET_YAML: continue - mapping[filename] = load_yaml(fname, loader.secrets) + loaded_yaml = load_yaml(fname, loader.secrets) + if loaded_yaml is None: + # Special case, an empty file included by !include_dir_named is treated + # as an empty dictionary + loaded_yaml = NodeDictClass() + mapping[filename] = loaded_yaml return _add_reference(mapping, loader, node) diff --git a/pyproject.toml b/pyproject.toml index b8b63cf011c..f678d14d214 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "homeassistant" -version = "2024.1.4" +version = "2024.1.5" license = {text = "Apache-2.0"} description = "Open-source home automation platform running on Python 3." readme = "README.rst" diff --git a/requirements_all.txt b/requirements_all.txt index 27bd47f3739..cff90b6a6cd 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -469,7 +469,7 @@ asterisk_mbox==0.5.0 # homeassistant.components.ssdp # homeassistant.components.upnp # homeassistant.components.yeelight -async-upnp-client==0.38.0 +async-upnp-client==0.38.1 # homeassistant.components.keyboard_remote asyncinotify==4.0.2 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index df3eceb14c6..8877471660a 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -421,7 +421,7 @@ arcam-fmj==1.4.0 # homeassistant.components.ssdp # homeassistant.components.upnp # homeassistant.components.yeelight -async-upnp-client==0.38.0 +async-upnp-client==0.38.1 # homeassistant.components.sleepiq asyncsleepiq==1.4.1 diff --git a/script/gen_requirements_all.py b/script/gen_requirements_all.py index 7f652b14302..15bcbf1b7f3 100755 --- a/script/gen_requirements_all.py +++ b/script/gen_requirements_all.py @@ -182,6 +182,9 @@ lxml==4.9.4 # dacite: Ensure we have a version that is able to handle type unions for # Roborock, NAM, Brother, and GIOS. dacite>=1.7.0 + +# Musle wheels for pandas 2.2.0 cannot be build for any architecture. +pandas==2.1.4 """ GENERATED_MESSAGE = ( diff --git a/tests/util/yaml/test_init.py b/tests/util/yaml/test_init.py index 30637fe2785..93c8ed50498 100644 --- a/tests/util/yaml/test_init.py +++ b/tests/util/yaml/test_init.py @@ -193,7 +193,7 @@ def test_include_dir_list_recursive( ), ( {"/test/first.yaml": "1", "/test/second.yaml": None}, - {"first": 1, "second": None}, + {"first": 1, "second": {}}, ), ], )