home-assistant: 2025.1.4 -> 2025.2.0
https://www.home-assistant.io/blog/2025/02/05/release-20252/
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,6 @@
|
||||
callPackage,
|
||||
fetchFromGitHub,
|
||||
fetchPypi,
|
||||
fetchpatch2,
|
||||
python313,
|
||||
substituteAll,
|
||||
ffmpeg-headless,
|
||||
@@ -88,6 +87,37 @@ let
|
||||
];
|
||||
});
|
||||
|
||||
async-timeout = super.async-timeout.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "4.0.3";
|
||||
src = fetchFromGitHub {
|
||||
owner = "aio-libs";
|
||||
repo = "async-timeout";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-gJGVRm7YMWnVicz2juHKW8kjJBxn4/vQ/kc2kQyl1i4=";
|
||||
};
|
||||
});
|
||||
|
||||
eq3btsmart = super.eq3btsmart.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.4.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "EuleMitKeule";
|
||||
repo = "eq3btsmart";
|
||||
tag = version;
|
||||
hash = "sha256-FRnCnSMtsiZ1AbZOMwO/I5UoFWP0xAFqRZsnrHG9WJA=";
|
||||
};
|
||||
build-system = with self; [ poetry-core ];
|
||||
});
|
||||
|
||||
govee-local-api = super.govee-local-api.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.5.3";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Galorhallen";
|
||||
repo = "govee-local-api";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-qBT0Xub+eL7rfF+lQWlheBJSahEKWjREGJQD6sHjTPk=";
|
||||
};
|
||||
});
|
||||
|
||||
gspread = super.gspread.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "5.12.4";
|
||||
src = fetchFromGitHub {
|
||||
@@ -255,22 +285,6 @@ let
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
slack-sdk = super.slack-sdk.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "2.5.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "slackapi";
|
||||
repo = "python-slackclient";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-U//HUe6e41wOOzoaDl4yXPnEASCzpGBIScHStWMN8tk=";
|
||||
};
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail "pytest-runner" ""
|
||||
'';
|
||||
pythonImportsCheck = [ "slack" ];
|
||||
doCheck = false; # Tests changed a lot for > 3
|
||||
});
|
||||
|
||||
vulcan-api = super.vulcan-api.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "2.3.2";
|
||||
src = fetchFromGitHub {
|
||||
@@ -320,7 +334,7 @@ let
|
||||
extraBuildInputs = extraPackages python.pkgs;
|
||||
|
||||
# Don't forget to run update-component-packages.py after updating
|
||||
hassVersion = "2025.1.4";
|
||||
hassVersion = "2025.2.0";
|
||||
|
||||
in
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
@@ -341,13 +355,13 @@ python.pkgs.buildPythonApplication rec {
|
||||
owner = "home-assistant";
|
||||
repo = "core";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-QqWF/uvFQbf0tdJMzFV3hAt9Je5sFR5z+aAPtCxycbM=";
|
||||
hash = "sha256-TGlfqvmYUPA5wdvZWD89z6lfvDr+K/1kgu6NjkRpNxs=";
|
||||
};
|
||||
|
||||
# Secondary source is pypi sdist for translations
|
||||
sdist = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-yzX4Wgo468On/WuK32Xdl0O3en/WFRdykvfvHNEU1S0=";
|
||||
hash = "sha256-+dkS6AuqyzvC2NiGCGkDAGxF/kS/LuKkMFXWXjC3I8Y=";
|
||||
};
|
||||
|
||||
build-system = with python.pkgs; [
|
||||
@@ -395,12 +409,6 @@ python.pkgs.buildPythonApplication rec {
|
||||
src = ./patches/ffmpeg-path.patch;
|
||||
ffmpeg = "${lib.getExe ffmpeg-headless}";
|
||||
})
|
||||
|
||||
(fetchpatch2 {
|
||||
# python-matter-server 7.0 compat
|
||||
url = "https://github.com/home-assistant/core/commit/ea4931ca3a91920b66a747a18a2dece2c8215d4f.patch";
|
||||
hash = "sha256-evfMdBdEYsVSu2iDZ5xgNTg/QljJ+MXrV69g9liNcN4=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@@ -414,6 +422,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
aiodns
|
||||
aiohasupervisor
|
||||
aiohttp
|
||||
aiohttp-asyncmdnsresolver
|
||||
aiohttp-cors
|
||||
aiohttp-fast-zlib
|
||||
aiozoneinfo
|
||||
|
||||
@@ -8,7 +8,7 @@ buildPythonPackage rec {
|
||||
# the frontend version corresponding to a specific home-assistant version can be found here
|
||||
# https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
|
||||
pname = "home-assistant-frontend";
|
||||
version = "20250109.2";
|
||||
version = "20250205.0";
|
||||
format = "wheel";
|
||||
|
||||
src = fetchPypi {
|
||||
@@ -16,7 +16,7 @@ buildPythonPackage rec {
|
||||
pname = "home_assistant_frontend";
|
||||
dist = "py3";
|
||||
python = "py3";
|
||||
hash = "sha256-jE8+QzYUftQFuGgJuvFYIzZ9DsEFoNpPS94Wjmk73Ss=";
|
||||
hash = "sha256-9P2OqnPNPydBi4k9iN0hSyGTyBW4PohdgJwQqa8MlYg=";
|
||||
};
|
||||
|
||||
# there is nothing to strip in this package
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/homeassistant/components/network/__init__.py b/homeassistant/components/network/__init__.py
|
||||
index b3ef88e7ab..b7a8471e1a 100644
|
||||
--- a/homeassistant/components/network/__init__.py
|
||||
+++ b/homeassistant/components/network/__init__.py
|
||||
@@ -30,7 +30,7 @@ async def async_get_source_ip(
|
||||
) -> str:
|
||||
"""Get the source ip for a target ip."""
|
||||
adapters = await async_get_adapters(hass)
|
||||
- all_ipv4s = []
|
||||
+ all_ipv4s = ["127.0.0.1"]
|
||||
for adapter in adapters:
|
||||
if adapter["enabled"] and (ipv4s := adapter["ipv4"]):
|
||||
all_ipv4s.extend([ipv4["address"] for ipv4 in ipv4s])
|
||||
@@ -14,6 +14,9 @@ let
|
||||
ibeacon-ble
|
||||
];
|
||||
hassio = getComponentDeps "homeassistant_yellow";
|
||||
homeassistant_hardware = getComponentDeps "zha";
|
||||
homeassistant_sky_connect = getComponentDeps "zha";
|
||||
homeassistant_yellow = getComponentDeps "zha";
|
||||
husqvarna_automower_ble = getComponentDeps "gardena_bluetooth";
|
||||
lovelace = [
|
||||
pychromecast
|
||||
@@ -36,6 +39,7 @@ let
|
||||
songpal = [
|
||||
isal
|
||||
];
|
||||
swiss_public_transport = getComponentDeps "cookidoo";
|
||||
system_log = [
|
||||
isal
|
||||
];
|
||||
@@ -52,6 +56,10 @@ let
|
||||
};
|
||||
|
||||
extraDisabledTestPaths = {
|
||||
overseerr = [
|
||||
# imports broken future module
|
||||
"tests/components/overseerr/test_event.py"
|
||||
];
|
||||
};
|
||||
|
||||
extraDisabledTests = {
|
||||
@@ -59,10 +67,6 @@ let
|
||||
# tries to retrieve file from github
|
||||
"test_non_text_stdout_capture"
|
||||
];
|
||||
sma = [
|
||||
# missing operating_status attribute in entity
|
||||
"test_sensor_entities"
|
||||
];
|
||||
websocket_api = [
|
||||
# AssertionError: assert 'unknown_error' == 'template_error'
|
||||
"test_render_template_with_timeout"
|
||||
@@ -70,46 +74,20 @@ let
|
||||
};
|
||||
|
||||
extraPytestFlagsArray = {
|
||||
conversation = [
|
||||
# Expected: Sorry, I am not aware of any device called missing entity on ground floor
|
||||
# Actually: Sorry, I am not aware of any area called ground floor
|
||||
"--deselect tests/components/conversation/test_default_agent.py::test_error_no_device_on_floor"
|
||||
];
|
||||
dnsip = [
|
||||
# Tries to resolve DNS entries
|
||||
"--deselect tests/components/dnsip/test_config_flow.py::test_options_flow"
|
||||
];
|
||||
honeywell = [
|
||||
# Failed: Unused ignore translations: component.honeywell.config.abort.reauth_successful. Please remove them from the ignore_translations fixture.
|
||||
"--deselect=tests/components/honeywell/test_config_flow.py::test_reauth_flow"
|
||||
];
|
||||
jellyfin = [
|
||||
# AssertionError: assert 'audio/x-flac' == 'audio/flac'
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_resolve"
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_audio_codec_resolve"
|
||||
# AssertionError: assert [+ received] == [- snapshot]
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_music_library"
|
||||
];
|
||||
jewish_calendar = [
|
||||
# Failed: Unused ignore translations: component.jewish_calendar.config.abort.reconfigure_successful. Please remove them from the ignore_translations fixture.
|
||||
"--deselect tests/components/jewish_calendar/test_config_flow.py::test_reconfigure"
|
||||
];
|
||||
modem_callerid = [
|
||||
# aioserial mock produces wrong state
|
||||
"--deselect tests/components/modem_callerid/test_init.py::test_setup_entry"
|
||||
];
|
||||
nina = [
|
||||
# Failed: Unused ignore translations: component.nina.options.error.unknown. Please remove them from the ignore_translations fixture.
|
||||
"--deselect tests/components/nina/test_config_flow.py::test_options_flow_unexpected_exception"
|
||||
];
|
||||
sql = [
|
||||
"-W"
|
||||
"ignore::sqlalchemy.exc.SAWarning"
|
||||
];
|
||||
vicare = [
|
||||
# Snapshot 'test_all_entities[sensor.model0_electricity_consumption_today-entry]' does not exist!
|
||||
"--deselect=tests/components/vicare/test_sensor.py::test_all_entities"
|
||||
];
|
||||
};
|
||||
in
|
||||
lib.listToAttrs (
|
||||
@@ -140,19 +118,6 @@ lib.listToAttrs (
|
||||
++ extraPytestFlagsArray.${component} or [ ]
|
||||
++ [ "tests/components/${component}" ];
|
||||
|
||||
preCheck =
|
||||
old.preCheck
|
||||
+
|
||||
lib.optionalString
|
||||
(builtins.elem component [
|
||||
"emulated_hue"
|
||||
"songpal"
|
||||
"system_log"
|
||||
])
|
||||
''
|
||||
patch -p1 < ${./patches/tests-mock-source-ip.patch}
|
||||
'';
|
||||
|
||||
meta = old.meta // {
|
||||
broken = lib.elem component [ ];
|
||||
# upstream only tests on Linux, so do we.
|
||||
|
||||
Reference in New Issue
Block a user