about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/home-assistant/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/home-assistant/default.nix')
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/default.nix52
1 files changed, 28 insertions, 24 deletions
diff --git a/nixpkgs/pkgs/servers/home-assistant/default.nix b/nixpkgs/pkgs/servers/home-assistant/default.nix
index 68a80dc41d7e..dc1799146145 100644
--- a/nixpkgs/pkgs/servers/home-assistant/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/default.nix
@@ -21,21 +21,22 @@
 
 let
   defaultOverrides = [
-    # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt
-    (mkOverride "python-slugify" "4.0.1" "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270")
-
+    # Pinned due to API changes in async-upnp-client>=0.20.0, remove after
     (self: super: {
       async-upnp-client = super.async-upnp-client.overridePythonAttrs (oldAttrs: rec {
-        version = "0.19.2";
+        version = "0.20.0";
         src = fetchFromGitHub {
           owner = "StevenLooman";
           repo = "async_upnp_client";
-          rev = version;
-          sha256 = "1v8d2lvxihqasn7866zssys16s0lgxkk6ri2dp4rr7wr8g9ixvdr";
+          rev = "v${version}";
+          sha256 = "sha256-jxYGOljV7tcsiAgpOhbXj7g7AwyP1kDDC83PiHG6ZFg=";
         };
       });
     })
 
+    # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt
+    (mkOverride "python-slugify" "4.0.1" "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270")
+
     # Pinned due to API changes in iaqualink>=2.0, remove after
     # https://github.com/home-assistant/core/pull/48137 was merged
     (self: super: {
@@ -95,6 +96,9 @@ let
       });
     })
 
+    # Pinned due to API changes in 0.1.0
+    (mkOverride "poolsense" "0.0.8" "09y4fq0gdvgkfsykpxnvmfv92dpbknnq5v82spz43ak6hjnhgcyp")
+
     # Pinned due to changes in total-connect-client>0.58 which made the tests fails at the moment
     (self: super: {
       total-connect-client = super.total-connect-client.overridePythonAttrs (oldAttrs: rec {
@@ -112,19 +116,6 @@ let
     (self: super: {
       home-assistant-frontend = self.callPackage ./frontend.nix { };
     })
-
-    # Pinned due to incompability with aioesphomeapi 8.0.0
-    (self: super: {
-      aioesphomeapi = super.aioesphomeapi.overrideAttrs (oldAttrs: rec {
-        version = "7.0.0";
-        src = fetchFromGitHub {
-          owner = "esphome";
-          repo = oldAttrs.pname;
-          rev = "v${version}";
-          hash = "sha256-ho/1fpq4yAgmYNERPqs51oqr08ncaN9+GRTUUuGU7ps=";
-        };
-      });
-    })
   ];
 
   mkOverride = attrname: version: sha256:
@@ -154,7 +145,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "2021.8.8";
+  hassVersion = "2021.9.7";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -171,7 +162,7 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = version;
-    sha256 = "1fj16qva04d9qhpnfxxacsp82vqqfha5c2zg4f850kld4qhwrgky";
+    sha256 = "1vcdnxh671iqhlbf6811j537by2i03fhryp9r9x77477y2y0xd6k";
   };
 
   # leave this in, so users don't have to constantly update their downstream patch handling
@@ -181,11 +172,11 @@ in with py.pkgs; buildPythonApplication rec {
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "attrs==21.2.0" "attrs" \
       --replace "awesomeversion==21.4.0" "awesomeversion" \
       --replace "bcrypt==3.1.7" "bcrypt" \
       --replace "cryptography==3.3.2" "cryptography" \
       --replace "pip>=8.0.3,<20.3" "pip" \
+      --replace "requests==2.25.1" "requests>=2.25.1" \
       --replace "ruamel.yaml==0.15.100" "ruamel.yaml"
     substituteInPlace tests/test_config.py --replace '"/usr"' '"/build/media"'
   '';
@@ -232,6 +223,7 @@ in with py.pkgs; buildPythonApplication rec {
     pytest-xdist
     pytestCheckHook
     requests-mock
+    stdlib-list
     jsonpickle
     respx
     # required by tests/auth/mfa_modules
@@ -370,6 +362,7 @@ in with py.pkgs; buildPythonApplication rec {
     "fireservicerota"
     "firmata"
     "flick_electric"
+    "flipr"
     "flo"
     "flume"
     "flunearyou"
@@ -438,6 +431,7 @@ in with py.pkgs; buildPythonApplication rec {
     "hue"
     "huisbaasje"
     "humidifier"
+    "hunterdouglas_powerview"
     "hvv_departures"
     "hyperion"
     "ialarm"
@@ -494,6 +488,7 @@ in with py.pkgs; buildPythonApplication rec {
     "mailbox"
     "manual"
     "manual_mqtt"
+    "maxcube"
     "mazda"
     "media_player"
     "media_source"
@@ -552,6 +547,7 @@ in with py.pkgs; buildPythonApplication rec {
     "ovo_energy"
     "owntracks"
     "ozw"
+    "p1_monitor"
     "panel_custom"
     "panel_iframe"
     "persistent_notification"
@@ -582,6 +578,7 @@ in with py.pkgs; buildPythonApplication rec {
     "recorder"
     "reddit"
     "remote"
+    "renault"
     "rest"
     "rest_command"
     "rflink"
@@ -635,6 +632,7 @@ in with py.pkgs; buildPythonApplication rec {
     # "sonos"
     "soundtouch"
     "spaceapi"
+    "spc"
     "speedtestdotnet"
     "spider"
     "spotify"
@@ -750,7 +748,7 @@ in with py.pkgs; buildPythonApplication rec {
 
   pytestFlagsArray = [
     # parallelize test run
-    "--numprocesses auto"
+    "--numprocesses $NIX_BUILD_CORES"
     # assign tests grouped by file to workers
     "--dist loadfile"
     # retry racy tests that end in "RuntimeError: Event loop is closed"
@@ -794,6 +792,11 @@ in with py.pkgs; buildPythonApplication rec {
     "--deselect tests/components/local_ip/test_config_flow.py::test_config_flow"
     # netatmo/test_select.py: NoneType object has no attribute state
     "--deselect tests/components/netatmo/test_select.py::test_select_schedule_thermostats"
+    # wemo/test_sensor.py: KeyError for various power attributes
+    "--deselect tests/components/wemo/test_sensor.py::TestInsightTodayEnergy::test_state_unavailable"
+    "--deselect tests/components/wemo/test_sensor.py::TestInsightCurrentPower::test_state_unavailable"
+    # tado/test_climate.py: Tries to connect to my.tado.com
+    "--deselect tests/components/tado/test_climate.py::test_air_con["
     # helpers/test_system_info.py: AssertionError: assert 'Unknown' == 'Home Assistant Container'
     "--deselect tests/helpers/test_system_info.py::test_container_installationtype"
     # tests are located in tests/
@@ -831,8 +834,9 @@ in with py.pkgs; buildPythonApplication rec {
     "test_onboarding_core_no_rpi_power"
     # hue/test_sensor_base.py: Race condition when counting events
     "test_hue_events"
-    # august/test_lock.py: AssertionError: assert 'unlocked' == 'locked'
+    # august/test_lock.py: AssertionError: assert 'unlocked' == 'locked' / assert 'off' == 'on'
     "test_lock_update_via_pubnub"
+    "test_door_sense_update_via_pubnub"
   ];
 
   preCheck = ''