From 521dc77a2a9a8c640e98c66692f1dd5a478670ab Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Sat, 5 Nov 2022 02:01:42 +0100 Subject: [PATCH] home-assistant: 2022.10.5 -> 2022.11.1 https://www.home-assistant.io/blog/2022/11/02/release-202211/ https://github.com/home-assistant/core/releases/tag/2022.11.1 --- .../home-assistant/component-packages.nix | 152 +++++++++++++++++- pkgs/servers/home-assistant/default.nix | 48 ++---- pkgs/servers/home-assistant/frontend.nix | 4 +- pkgs/servers/home-assistant/tests.nix | 10 +- 4 files changed, 173 insertions(+), 41 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index f2f472276c87..796546fd0b9f 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,8 +2,10 @@ # Do not edit! { - version = "2022.10.5"; + version = "2022.11.1"; components = { + "3_day_blinds" = ps: with ps; [ + ]; "abode" = ps: with ps; [ abodepy ]; @@ -51,6 +53,21 @@ "airthings" = ps: with ps; [ airthings-cloud ]; + "airthings_ble" = ps: with ps; [ + aiohttp-cors + airthings-ble + bleak-retry-connector + bleak + bluetooth-adapters + bluetooth-auto-recovery + dbus-fast + fnvhash + home-assistant-frontend + pillow + pyserial + pyudev + sqlalchemy + ]; "airtouch4" = ps: with ps; [ airtouch4pyapi ]; @@ -98,6 +115,8 @@ amcrest ha-ffmpeg ]; + "amp_motorization" = ps: with ps; [ + ]; "ampio" = ps: with ps; [ asmog ]; @@ -203,6 +222,8 @@ yalexs-ble yalexs ]; + "august_ble" = ps: with ps; [ + ]; "aurora" = ps: with ps; [ auroranoaa ]; @@ -281,6 +302,10 @@ "blinksticklight" = ps: with ps; [ BlinkStick ]; + "bliss_automation" = ps: with ps; [ + ]; + "bloc_blinds" = ps: with ps; [ + ]; "blockchain" = ps: with ps; [ ]; # missing inputs: python-blockchain-api "bloomsky" = ps: with ps; [ @@ -352,6 +377,8 @@ "braviatv" = ps: with ps; [ pybravia ]; + "brel_home" = ps: with ps; [ + ]; "broadlink" = ps: with ps; [ broadlink ]; @@ -367,7 +394,9 @@ brunt ]; "bsblan" = ps: with ps; [ - bsblan + python-bsblan + ]; + "bswitch" = ps: with ps; [ ]; "bt_home_hub_5" = ps: with ps; [ ]; # missing inputs: bthomehub5-devicelist @@ -388,6 +417,10 @@ pyudev sqlalchemy ]; + "bticino" = ps: with ps; [ + ]; + "bubendorff" = ps: with ps; [ + ]; "buienradar" = ps: with ps; [ buienradar ]; @@ -499,6 +532,8 @@ ]; "cover" = ps: with ps; [ ]; + "cozytouch" = ps: with ps; [ + ]; "cppm_tracker" = ps: with ps; [ ]; # missing inputs: clearpasspy "cpuspeed" = ps: with ps; [ @@ -517,6 +552,8 @@ ]; "currencylayer" = ps: with ps; [ ]; + "dacia" = ps: with ps; [ + ]; "daikin" = ps: with ps; [ pydaikin ]; @@ -616,6 +653,10 @@ "dialogflow" = ps: with ps; [ aiohttp-cors ]; + "diaz" = ps: with ps; [ + ]; + "digital_loggers" = ps: with ps; [ + ]; "digital_ocean" = ps: with ps; [ digital-ocean ]; @@ -668,6 +709,8 @@ aiohttp-cors doorbirdpy ]; + "dooya" = ps: with ps; [ + ]; "dovado" = ps: with ps; [ ]; # missing inputs: dovado "downloader" = ps: with ps; [ @@ -944,6 +987,8 @@ "flexit" = ps: with ps; [ pymodbus ]; + "flexom" = ps: with ps; [ + ]; "flic" = ps: with ps; [ pyflic ]; @@ -1038,12 +1083,15 @@ "garages_amsterdam" = ps: with ps; [ garages-amsterdam ]; + "gaviota" = ps: with ps; [ + ]; "gc100" = ps: with ps; [ ]; # missing inputs: python-gc100 "gdacs" = ps: with ps; [ aio-georss-gdacs ]; "generic" = ps: with ps; [ + aiohttp-cors av pillow ]; @@ -1210,6 +1258,8 @@ pillow sqlalchemy ]; + "havana_shade" = ps: with ps; [ + ]; "haveibeenpwned" = ps: with ps; [ ]; "hddtemp" = ps: with ps; [ @@ -1219,12 +1269,16 @@ ]; "heatmiser" = ps: with ps; [ ]; # missing inputs: heatmiserV3 + "heiwa" = ps: with ps; [ + ]; "heos" = ps: with ps; [ pyheos ]; "here_travel_time" = ps: with ps; [ herepy ]; + "hi_kumo" = ps: with ps; [ + ]; "hikvision" = ps: with ps; [ ]; # missing inputs: pyhik "hikvisioncam" = ps: with ps; [ @@ -1340,12 +1394,15 @@ aiohue ]; "huisbaasje" = ps: with ps; [ - ]; # missing inputs: energyflip-client + energyflip-client + ]; "humidifier" = ps: with ps; [ ]; "hunterdouglas_powerview" = ps: with ps; [ aiopvapi ]; + "hurrican_shutters_wholesale" = ps: with ps; [ + ]; "hvv_departures" = ps: with ps; [ pygti ]; @@ -1442,6 +1499,8 @@ ]; "input_text" = ps: with ps; [ ]; + "inspired_shades" = ps: with ps; [ + ]; "insteon" = ps: with ps; [ aiohttp-cors fnvhash @@ -1491,6 +1550,8 @@ "islamic_prayer_times" = ps: with ps; [ prayer-times-calculator ]; + "ismartwindow" = ps: with ps; [ + ]; "iss" = ps: with ps; [ ]; # missing inputs: pyiss "isy994" = ps: with ps; [ @@ -1640,6 +1701,8 @@ pyudev sqlalchemy ]; + "legrand" = ps: with ps; [ + ]; "lg_netcast" = ps: with ps; [ pylgnetcast ]; @@ -1656,6 +1719,7 @@ aiohttp-cors aiolifx aiolifx-effects + aiolifx-themes ifaddr ]; "lifx_cloud" = ps: with ps; [ @@ -1736,6 +1800,8 @@ "lutron_caseta" = ps: with ps; [ pylutron-caseta ]; + "luxaflex" = ps: with ps; [ + ]; "lw12wifi" = ps: with ps; [ ]; # missing inputs: lw12 "lyric" = ps: with ps; [ @@ -1764,6 +1830,10 @@ pillow sqlalchemy ]; + "marantz" = ps: with ps; [ + ]; + "martec" = ps: with ps; [ + ]; "marytts" = ps: with ps; [ ]; # missing inputs: speak2mary "mastodon" = ps: with ps; [ @@ -2043,6 +2113,8 @@ "nexia" = ps: with ps; [ nexia ]; + "nexity" = ps: with ps; [ + ]; "nextbus" = ps: with ps; [ py-nextbusnext ]; @@ -2076,8 +2148,9 @@ aiohttp-cors getmac ifaddr + mac-vendor-lookup netmap - ]; # missing inputs: mac-vendor-lookup + ]; "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail "no_ip" = ps: with ps; [ @@ -2115,6 +2188,8 @@ "nut" = ps: with ps; [ pynut2 ]; + "nutrichef" = ps: with ps; [ + ]; "nws" = ps: with ps; [ pynws ]; @@ -2216,6 +2291,21 @@ "opple" = ps: with ps; [ pyoppleio ]; + "oralb" = ps: with ps; [ + aiohttp-cors + bleak-retry-connector + bleak + bluetooth-adapters + bluetooth-auto-recovery + dbus-fast + fnvhash + home-assistant-frontend + oralb-ble + pillow + pyserial + pyudev + sqlalchemy + ]; "oru" = ps: with ps; [ ]; # missing inputs: oru "orvibo" = ps: with ps; [ @@ -2265,6 +2355,8 @@ pillow sqlalchemy ]; + "pcs_lighting" = ps: with ps; [ + ]; "peco" = ps: with ps; [ peco ]; @@ -2468,6 +2560,8 @@ ]; "raspyrfm" = ps: with ps; [ ]; # missing inputs: raspyrfm-client + "raven_rock_mfg" = ps: with ps; [ + ]; "rdw" = ps: with ps; [ vehicle ]; @@ -2508,6 +2602,8 @@ ]; "rest_command" = ps: with ps; [ ]; + "rexel" = ps: with ps; [ + ]; "rflink" = ps: with ps; [ rflink ]; @@ -2535,6 +2631,8 @@ "rmvtransport" = ps: with ps; [ pyrmvtransport ]; + "roborock" = ps: with ps; [ + ]; "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API "roku" = ps: with ps; [ @@ -2616,6 +2714,8 @@ lxml xmltodict ]; + "screenaway" = ps: with ps; [ + ]; "screenlogic" = ps: with ps; [ screenlogicpy ]; @@ -2647,6 +2747,8 @@ fnvhash sqlalchemy ]; + "sensorblue" = ps: with ps; [ + ]; "sensorpro" = ps: with ps; [ aiohttp-cors bleak-retry-connector @@ -2704,6 +2806,7 @@ "shell_command" = ps: with ps; [ ]; "shelly" = ps: with ps; [ + aiohttp-cors aioshelly ]; "shiftr" = ps: with ps; [ @@ -2732,6 +2835,8 @@ "simplisafe" = ps: with ps; [ simplisafe-python ]; + "simply_automated" = ps: with ps; [ + ]; "simulated" = ps: with ps; [ ]; "sinch" = ps: with ps; [ @@ -2770,9 +2875,15 @@ aiohttp-cors pysmappee ]; + "smart_blinds" = ps: with ps; [ + ]; + "smart_home" = ps: with ps; [ + ]; "smart_meter_texas" = ps: with ps; [ smart-meter-texas ]; + "smarther" = ps: with ps; [ + ]; "smartthings" = ps: with ps; [ pyturbojpeg aiohttp-cors @@ -2803,6 +2914,21 @@ "snmp" = ps: with ps; [ pysnmplib ]; + "snooz" = ps: with ps; [ + aiohttp-cors + bleak-retry-connector + bleak + bluetooth-adapters + bluetooth-auto-recovery + dbus-fast + fnvhash + home-assistant-frontend + pillow + pyserial + pysnooz + pyudev + sqlalchemy + ]; "solaredge" = ps: with ps; [ solaredge stringcase @@ -2818,6 +2944,8 @@ "soma" = ps: with ps; [ pysoma ]; + "somfy" = ps: with ps; [ + ]; "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ]; @@ -2967,6 +3095,8 @@ ]; "switchmate" = ps: with ps; [ ]; # missing inputs: pySwitchmate + "symfonisk" = ps: with ps; [ + ]; "syncthing" = ps: with ps; [ aiosyncthing ]; @@ -3073,6 +3203,8 @@ sqlalchemy thermobeacon-ble ]; + "thermoplus" = ps: with ps; [ + ]; "thermopro" = ps: with ps; [ aiohttp-cors bleak-retry-connector @@ -3243,6 +3375,8 @@ "ukraine_alarm" = ps: with ps; [ uasiren ]; + "ultraloq" = ps: with ps; [ + ]; "unifi" = ps: with ps; [ aiounifi ]; @@ -3277,6 +3411,8 @@ ifaddr zeroconf ]; + "uprise_smart_shades" = ps: with ps; [ + ]; "uptime" = ps: with ps; [ ]; "uptimerobot" = ps: with ps; [ @@ -3557,6 +3693,7 @@ py-zabbix ]; "zamg" = ps: with ps; [ + zamg ]; "zengge" = ps: with ps; [ bluepy @@ -3630,6 +3767,7 @@ "airly" "airnow" "airthings" + "airthings_ble" "airtouch4" "airvisual" "airzone" @@ -3695,6 +3833,7 @@ "canary" "cast" "cert_expiry" + "clicksend_tts" "climate" "cloud" "cloudflare" @@ -3871,6 +4010,7 @@ "http" "huawei_lte" "hue" + "huisbaasje" "humidifier" "hunterdouglas_powerview" "hvv_departures" @@ -4005,6 +4145,7 @@ "nextdns" "nightscout" "nina" + "nmap_tracker" "no_ip" "nobo_hub" "notify" @@ -4033,6 +4174,7 @@ "openuv" "openweathermap" "opnsense" + "oralb" "overkiz" "ovo_energy" "owntracks" @@ -4145,6 +4287,7 @@ "smtp" "snips" "snmp" + "snooz" "solaredge" "solarlog" "solax" @@ -4297,6 +4440,7 @@ "yeelight" "yolink" "youless" + "zamg" "zeroconf" "zerproc" "zha" diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 69ce9addcd67..795d42cf53eb 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -41,26 +41,15 @@ let }; }); - bsblan = super.bsblan.overridePythonAttrs (oldAttrs: rec { - version = "0.5.0"; - postPatch = null; - propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [ super.cattrs ]; + gcal-sync = super.gcal-sync.overridePythonAttrs (oldAttrs: rec { + version = "2.2.3"; src = fetchFromGitHub { - owner = "liudger"; - repo = "python-bsblan"; - rev = "v.${version}"; - hash = "sha256-yzlHcIb5QlG+jAgEtKlAcY7rESiUY7nD1YwqK63wgcg="; - }; - }); - - blebox-uniapi = super.blebox-uniapi.overridePythonAttrs (oldAttrs: rec { - version = "2.0.2"; - src = fetchFromGitHub { - owner = "blebox"; - repo = "blebox_uniapi"; - rev = "refs/tags/v${version}"; - hash = "sha256-0Yiooy7YSUFjqqcyH2fPQ6AWuR0EJxfRRZTw/6JGcMA="; + owner = "allenporter"; + repo = "gcal_sync"; + rev = "refs/tags/${version}"; + hash = "sha256-5PoKdJBrNhPfcDxmprc/1jX7weIs7HSxFzzvjKOjGbY="; }; + doCheck = false; # requires aiohttp>=1.0.0 }); gridnet = super.gridnet.overridePythonAttrs (oldAttrs: rec { @@ -84,16 +73,6 @@ let }; }); - iaqualink = super.iaqualink.overridePythonAttrs (oldAttrs: rec { - version = "0.4.1"; - src = fetchFromGitHub { - owner = "flz"; - repo = "iaqualink-py"; - rev = "v${version}"; - hash = "sha256-GDJwPBEU7cteAdYj7eo5tAo0G8AVcQR7KSxLNLhU/XU="; - }; - }); - # pytest-aiohttp>0.3.0 breaks home-assistant tests pytest-aiohttp = super.pytest-aiohttp.overridePythonAttrs (oldAttrs: rec { version = "0.3.0"; @@ -115,9 +94,6 @@ let aioopenexchangerates = super.aioopenexchangerates.overridePythonAttrs (oldAttrs: { doCheck = false; # requires aiohttp>=1.0.0 }); - gcal-sync = super.gcal-sync.overridePythonAttrs (oldAttrs: { - doCheck = false; # requires aiohttp>=1.0.0 - }); hass-nabucasa = super.hass-nabucasa.overridePythonAttrs (oldAttrs: { doCheck = false; # requires aiohttp>=1.0.0 }); @@ -161,6 +137,12 @@ let }; }); + pydaikin = super.pydaikin.overridePythonAttrs (oldAttrs: rec { + disabledTests = [ + "test_power_sensors" + ]; + }); + pydeconz = super.pydeconz.overridePythonAttrs (oldAttrs: rec { doCheck = false; # requires pytest-aiohttp>=1.0.0 }); @@ -254,7 +236,7 @@ let extraPackagesFile = writeText "home-assistant-packages" (lib.concatMapStringsSep "\n" (pkg: pkg.pname) extraBuildInputs); # Don't forget to run parse-requirements.py after updating - hassVersion = "2022.10.5"; + hassVersion = "2022.11.1"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; @@ -272,7 +254,7 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - hash = "sha256-y2X6tiR3TLbQ1tYUUuu8D0i5j+P0FnDWJ1mSlGPwIuY="; + hash = "sha256-2zpNrkRYsmJEq+4L0J6wJodmda5r8NWgYVtYwAHKSps="; }; # leave this in, so users don't have to constantly update their downstream patch handling diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index 5282874435f3..9f9bcf022356 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -4,7 +4,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 = "20221010.0"; + version = "20221102.1"; format = "wheel"; src = fetchPypi { @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "home_assistant_frontend"; dist = "py3"; python = "py3"; - sha256 = "sha256-TyaEnXHnaFk+V06BjeblYv6VnXsmYCc/7mYicJsBEY8="; + sha256 = "sha256-HAFJxrBI6wB1XMe+71tF/bijuQAoyAw8LBQbfv+Vqco="; }; # there is nothing to strip in this package diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix index c40d9e71989c..1651e3026644 100644 --- a/pkgs/servers/home-assistant/tests.nix +++ b/pkgs/servers/home-assistant/tests.nix @@ -47,6 +47,10 @@ let # bytearrray mismatch "test_rfy_cover" ]; + zha = [ + # 'manual_pick_radio_type' == 'choose_serial_port' + "test_options_flow_migration_reset_old_adapter" + ]; }; extraPytestFlagsArray = { @@ -62,6 +66,10 @@ let # Flaky: AssertionError: assert '0.0' == '12.0' "--deselect tests/components/history_stats/test_sensor.py::test_end_time_with_microseconds_zeroed" ]; + modem_callerid = [ + # aioserial mock produces wrong state + "--deselect tests/components/modem_callerid/test_init.py::test_setup_entry" + ]; skybell = [ # Sandbox network limitations: Cannot connect to host cloud.myskybell.com:443 "--deselect tests/components/skybell/test_config_flow.py::test_flow_user_unknown_error" @@ -106,8 +114,6 @@ in lib.listToAttrs (map (component: lib.nameValuePair component ( meta = old.meta // { broken = lib.elem component [ - "modem_callerid" - "subaru" ]; # upstream only tests on Linux, so do we. platforms = lib.platforms.linux;