diff options
author | Martin Weinelt <mweinelt@users.noreply.github.com> | 2023-12-10 14:51:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-10 14:51:43 +0100 |
commit | ebfca42b8b64c240020879148a5f74022367672f (patch) | |
tree | 44f8d3e0445536da082a56dfda46a2db82eafe04 | |
parent | cb417ea2d2ae5117e911d2a61ca6cc78a6a2e159 (diff) | |
parent | b9dfed786953ce8f29eddf4458103da2c535f619 (diff) |
Merge pull request #272576 from NixOS/home-assistant
home-assistant: 2023.11.3 -> 2023.12.0
51 files changed, 1227 insertions, 342 deletions
diff --git a/nixos/modules/services/home-automation/home-assistant.nix b/nixos/modules/services/home-automation/home-assistant.nix index 8a469f7a015b..2a6b07c6f1a6 100644 --- a/nixos/modules/services/home-automation/home-assistant.nix +++ b/nixos/modules/services/home-automation/home-assistant.nix @@ -157,7 +157,7 @@ in { default = []; example = literalExpression '' with pkgs.home-assistant-custom-components; [ - prometheus-sensor + prometheus_sensor ]; ''; description = lib.mdDoc '' @@ -523,7 +523,6 @@ in { "bluetooth_tracker" "bthome" "default_config" - "eq3btsmart" "eufylife_ble" "esphome" "fjaraskupan" diff --git a/nixos/tests/home-assistant.nix b/nixos/tests/home-assistant.nix index 9200723f35e7..05fb2fa1e06a 100644 --- a/nixos/tests/home-assistant.nix +++ b/nixos/tests/home-assistant.nix @@ -182,7 +182,7 @@ in { hass.wait_until_succeeds("journalctl -u home-assistant.service | grep -q 'We found a custom integration prometheus_sensor which has not been tested by Home Assistant'") with subtest("Check that lovelace modules are referenced and fetchable"): - hass.succeed("grep -q 'mini-graph-card-bundle.js' '${configDir}/ui-lovelace.yaml'") + hass.succeed("grep -q 'mini-graph-card-bundle.js' '${configDir}/configuration.yaml'") hass.succeed("curl --fail http://localhost:8123/local/nixos-lovelace-modules/mini-graph-card-bundle.js") with subtest("Check that optional dependencies are in the PYTHONPATH"): diff --git a/pkgs/development/python-modules/aiocomelit/default.nix b/pkgs/development/python-modules/aiocomelit/default.nix index 82007382c23a..3be83f060564 100644 --- a/pkgs/development/python-modules/aiocomelit/default.nix +++ b/pkgs/development/python-modules/aiocomelit/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "aiocomelit"; - version = "0.6.0"; + version = "0.6.2"; format = "pyproject"; disabled = pythonOlder "3.10"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "chemelli74"; repo = "aiocomelit"; rev = "refs/tags/v${version}"; - hash = "sha256-bs+iSe4vu0ej4SQww6mvQqboVKfQrkd9OirBLGbU3gs="; + hash = "sha256-Pqds4RwDxaUyZUIGTK0JOjsKbyB7j3uOfunbLXsKANk="; }; postPatch = '' diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix index b22090a7593d..ae981e949dec 100644 --- a/pkgs/development/python-modules/aioesphomeapi/default.nix +++ b/pkgs/development/python-modules/aioesphomeapi/default.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "aioesphomeapi"; - version = "18.5.2"; + version = "19.2.1"; pyproject = true; disabled = pythonOlder "3.9"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "esphome"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-kj4FHsNsGsMxK+EI1jgqBfvldkyAoBkCTGT1yiZMmzY="; + hash = "sha256-WSWGO0kI1m6oaImUYZ6m5WKJ+xPs/rtn5wVq1bDr+bE="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/aiohomekit/default.nix b/pkgs/development/python-modules/aiohomekit/default.nix index 86c186f4220f..79484a4beea9 100644 --- a/pkgs/development/python-modules/aiohomekit/default.nix +++ b/pkgs/development/python-modules/aiohomekit/default.nix @@ -60,6 +60,17 @@ buildPythonPackage rec { "tests/test_ip_pairing.py" ]; + disabledTests = [ + # AttributeError: 'MockedAsyncServiceInfo' object has no attribute '_set_properties' + "test_discover_find_one_unpaired" + "test_find_device_id_case_lower" + "test_find_device_id_case_upper" + "test_discover_missing_csharp" + "test_discover_csharp_case" + "test_discover_device_id_case_lower" + "test_discover_device_id_case_upper" + ]; + pythonImportsCheck = [ "aiohomekit" ]; diff --git a/pkgs/development/python-modules/aiohttp-zlib-ng/default.nix b/pkgs/development/python-modules/aiohttp-zlib-ng/default.nix new file mode 100644 index 000000000000..35be33c05482 --- /dev/null +++ b/pkgs/development/python-modules/aiohttp-zlib-ng/default.nix @@ -0,0 +1,39 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, aiohttp +, zlib-ng +}: + +buildPythonPackage rec { + pname = "aiohttp-zlib-ng"; + version = "0.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "bdraco"; + repo = "aiohttp-zlib-ng"; + rev = "v${version}"; + hash = "sha256-dTNwt4eX6ZQ8ySK2/9ziVbc3KFg2aL/EsiBWaJRC4x8="; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + aiohttp + zlib-ng + ]; + + pythonImportsCheck = [ "aiohttp_zlib_ng" ]; + + meta = with lib; { + description = "Enable zlib_ng on aiohttp"; + homepage = "https://github.com/bdraco/aiohttp-zlib-ng"; + changelog = "https://github.com/bdraco/aiohttp-zlib-ng/blob/${src.rev}/CHANGELOG.md"; + license = licenses.asl20; + maintainers = with maintainers; [ ]; + }; +} diff --git a/pkgs/development/python-modules/aiowithings/default.nix b/pkgs/development/python-modules/aiowithings/default.nix index 542511d2d3b1..64f7a23a17e4 100644 --- a/pkgs/development/python-modules/aiowithings/default.nix +++ b/pkgs/development/python-modules/aiowithings/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "aiowithings"; - version = "1.0.3"; + version = "2.0.0"; pyproject = true; disabled = pythonOlder "3.11"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "joostlek"; repo = "python-withings"; rev = "refs/tags/v${version}"; - hash = "sha256-n76bpFIWUfztTDEg32uopxukAtvFT3tdbtqWOLghi4I="; + hash = "sha256-wVLoM1Lq1fchyjOOmn+6wVzEAra8x2uK6qaiocVqzmw="; }; postPatch = '' diff --git a/pkgs/development/python-modules/apple-weatherkit/default.nix b/pkgs/development/python-modules/apple-weatherkit/default.nix index 89363e859bd0..f52b0fa5aea9 100644 --- a/pkgs/development/python-modules/apple-weatherkit/default.nix +++ b/pkgs/development/python-modules/apple-weatherkit/default.nix @@ -3,13 +3,14 @@ , fetchFromGitHub , poetry-core , aiohttp +, aiohttp-retry , pythonOlder , pyjwt }: buildPythonPackage rec { pname = "apple-weatherkit"; - version = "1.0.4"; + version = "1.1.1"; format = "pyproject"; disabled = pythonOlder "3.11"; @@ -18,7 +19,7 @@ buildPythonPackage rec { owner = "tjhorner"; repo = "python-weatherkit"; rev = "refs/tags/v${version}"; - hash = "sha256-G/0hyK2rjdSSnVnvAUGyDvsfNMHVgAD7NHfNFmdBCNA="; + hash = "sha256-ZwHomiRkoV2Oi5c7qgTOKdu6R8dFfiVBi5XQMxrQvIU="; }; nativeBuildInputs = [ @@ -27,6 +28,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ aiohttp + aiohttp-retry pyjwt ] ++ pyjwt.optional-dependencies.crypto; diff --git a/pkgs/development/python-modules/bellows/default.nix b/pkgs/development/python-modules/bellows/default.nix index 846b58a677b8..03ebff7aea5f 100644 --- a/pkgs/development/python-modules/bellows/default.nix +++ b/pkgs/development/python-modules/bellows/default.nix @@ -9,14 +9,15 @@ , pytest-timeout , pytestCheckHook , pythonOlder +, setuptools , voluptuous , zigpy }: buildPythonPackage rec { pname = "bellows"; - version = "0.36.8"; - format = "setuptools"; + version = "0.37.1"; + pyproject = true; disabled = pythonOlder "3.8"; @@ -24,9 +25,19 @@ buildPythonPackage rec { owner = "zigpy"; repo = "bellows"; rev = "refs/tags/${version}"; - hash = "sha256-+p3As+fi6mw9i5q2klFTM9QQ2JoQarwrphc6tB6C94M="; + hash = "sha256-JkaCM9XOdGZE9/C2BUV3g9QL5+k/HlVYd4WsAMS2mgk="; }; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace '"setuptools-git-versioning<2"' "" \ + --replace 'dynamic = ["version"]' 'version = "${version}"' + ''; + + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ click click-log diff --git a/pkgs/development/python-modules/bimmer-connected/default.nix b/pkgs/development/python-modules/bimmer-connected/default.nix index af622dfd7624..ade9544f32d0 100644 --- a/pkgs/development/python-modules/bimmer-connected/default.nix +++ b/pkgs/development/python-modules/bimmer-connected/default.nix @@ -11,14 +11,15 @@ , pytestCheckHook , python , respx +, setuptools , time-machine , tzdata }: buildPythonPackage rec { pname = "bimmer-connected"; - version = "0.14.3"; - format = "setuptools"; + version = "0.14.6"; + pyproject = true; disabled = pythonOlder "3.6"; @@ -26,22 +27,28 @@ buildPythonPackage rec { owner = "bimmerconnected"; repo = "bimmer_connected"; rev = "refs/tags/${version}"; - hash = "sha256-I/MKjdEu69uis5f/Xuk4H6ynC71IQmfASLr07PdEBXE="; + hash = "sha256-/FL9czp5x/BcKSXXzT19kgGiPFd61BpU7HLtgyyHlIs="; }; nativeBuildInputs = [ pbr + setuptools ]; PBR_VERSION = version; propagatedBuildInputs = [ httpx - pillow pycryptodome pyjwt ]; + passthru.optional-dependencies = { + china = [ + pillow + ]; + }; + postInstall = '' cp -R bimmer_connected/tests/responses $out/${python.sitePackages}/bimmer_connected/tests/ ''; @@ -51,7 +58,7 @@ buildPythonPackage rec { pytestCheckHook respx time-machine - ]; + ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies); preCheck = '' export TZDIR=${tzdata}/${python.sitePackages}/tzdata/zoneinfo diff --git a/pkgs/development/python-modules/elgato/default.nix b/pkgs/development/python-modules/elgato/default.nix index 3aeab819b76a..01973168b881 100644 --- a/pkgs/development/python-modules/elgato/default.nix +++ b/pkgs/development/python-modules/elgato/default.nix @@ -3,8 +3,9 @@ , aresponses , buildPythonPackage , fetchFromGitHub +, mashumaro +, orjson , poetry-core -, pydantic , pytest-asyncio , pytestCheckHook , pythonOlder @@ -13,7 +14,7 @@ buildPythonPackage rec { pname = "elgato"; - version = "5.0.0"; + version = "5.1.1"; format = "pyproject"; disabled = pythonOlder "3.11"; @@ -22,7 +23,7 @@ buildPythonPackage rec { owner = "frenck"; repo = "python-elgato"; rev = "refs/tags/v${version}"; - hash = "sha256-TI5wu2FYVUMvgDkbktcwPLnTSD8XUSy8qwOCdrsiopk="; + hash = "sha256-g0po3BtY2uiOmuyWVA+o08c3I86SE4zmvo1ps8HpNNw="; }; postPatch = '' @@ -38,7 +39,8 @@ buildPythonPackage rec { propagatedBuildInputs = [ aiohttp - pydantic + mashumaro + orjson yarl ]; diff --git a/pkgs/development/python-modules/firebase-messaging/default.nix b/pkgs/development/python-modules/firebase-messaging/default.nix new file mode 100644 index 000000000000..bc5a4d1dbdf7 --- /dev/null +++ b/pkgs/development/python-modules/firebase-messaging/default.nix @@ -0,0 +1,84 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub + +# build-system +, poetry-core + +# dependencies +, cryptography +, http-ece +, protobuf +, requests + +# docs +, sphinx +, sphinxHook +, sphinx-autodoc-typehints +, sphinx-rtd-theme + +# tests +, async-timeout +, requests-mock +, pytest-asyncio +, pytest-mock +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "firebase-messaging"; + version = "0.2.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "sdb9696"; + repo = "firebase-messaging"; + rev = version; + hash = "sha256-e3Ny3pnAfOpNERvvtE/jqSDIsM+YwLq/hbw753QpJ6o="; + }; + + outputs = [ + "out" + "doc" + ]; + + nativeBuildInputs = [ + poetry-core + sphinxHook + ] ++ passthru.optional-dependencies.docs; + + propagatedBuildInputs = [ + cryptography + http-ece + protobuf + requests + ]; + + passthru.optional-dependencies = { + docs = [ + sphinx + sphinx-autodoc-typehints + sphinx-rtd-theme + ]; + }; + + pythonImportsCheck = [ + "firebase_messaging" + ]; + + nativeCheckInputs = [ + async-timeout + requests-mock + pytest-asyncio + pytest-mock + pytestCheckHook + ]; + + meta = with lib; { + description = "A library to subscribe to GCM/FCM and receive notifications within a python application"; + homepage = "https://github.com/sdb9696/firebase-messaging"; + changelog = "https://github.com/sdb9696/firebase-messaging/blob/${src.rev}/CHANGELOG.rst"; + license = licenses.mit; + maintainers = with maintainers; [ ]; + }; +} diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix index e27ef7ffce6b..edb90b477d0e 100644 --- a/pkgs/development/python-modules/hass-nabucasa/default.nix +++ b/pkgs/development/python-modules/hass-nabucasa/default.nix @@ -7,6 +7,7 @@ , ciso8601 , cryptography , fetchFromGitHub +, fetchpatch , pycognito , pytest-aiohttp , pytest-timeout @@ -32,12 +33,13 @@ buildPythonPackage rec { hash = "sha256-r4Huvn9mBqnASpUd+drwORE+fApLV/l6Y3aO/UIiEC8="; }; - postPatch = '' - substituteInPlace setup.py \ - --replace "acme==" "acme>=" \ - --replace "pycognito==" "pycognito>=" \ - --replace "snitun==" "snitun>=" \ - ''; + patches = [ + (fetchpatch { + # Add missing wait_for_close mock in AiohttpClientMockResponse + url = "https://github.com/NabuCasa/hass-nabucasa/commit/097607e0fe30932ca5cba0c50fda125f90f5f3de.patch"; + hash = "sha256-ZSh+1kGBb6ltNnd0RaDECXiJDEGJBOw1wN2HXPgfy+o="; + }) + ]; nativeBuildInputs = [ setuptools diff --git a/pkgs/development/python-modules/hassil/default.nix b/pkgs/development/python-modules/hassil/default.nix index 6059ce3cb5e6..65b97fd7c485 100644 --- a/pkgs/development/python-modules/hassil/default.nix +++ b/pkgs/development/python-modules/hassil/default.nix @@ -4,8 +4,8 @@ , pythonOlder # propagates -, importlib-resources , pyyaml +, unicode-rbnf # tests , pytestCheckHook @@ -13,21 +13,22 @@ let pname = "hassil"; - version = "1.2.5"; + version = "1.5.1"; in buildPythonPackage { inherit pname version; format = "setuptools"; + disabled = pythonOlder "3.9"; + src = fetchPypi { inherit pname version; - hash = "sha256-udOkZILoba2+eR8oSFThsB846COaIXawwRYhn261mCA="; + hash = "sha256-GLvDT8BUBvEzgiqKaXokF912g3fOH+KsXnmeOXIwe9U="; }; propagatedBuildInputs = [ pyyaml - ] ++ lib.optionals (pythonOlder "3.9") [ - importlib-resources + unicode-rbnf ]; nativeCheckInputs = [ @@ -35,7 +36,7 @@ buildPythonPackage { ]; meta = with lib; { - changelog = "https://github.com/home-assistant/hassil/releases/tag/v${version}"; + changelog = "https://github.com/home-assistant/hassil/blob/v${version}/CHANGELOG.md"; description = "Intent parsing for Home Assistant"; homepage = "https://github.com/home-assistant/hassil"; license = licenses.asl20; diff --git a/pkgs/development/python-modules/open-meteo/default.nix b/pkgs/development/python-modules/open-meteo/default.nix index 4aec00f312b2..6da363372369 100644 --- a/pkgs/development/python-modules/open-meteo/default.nix +++ b/pkgs/development/python-modules/open-meteo/default.nix @@ -3,8 +3,9 @@ , aresponses , buildPythonPackage , fetchFromGitHub +, mashumaro +, orjson , poetry-core -, pydantic , pytest-asyncio , pytestCheckHook , pythonOlder @@ -12,46 +13,47 @@ buildPythonPackage rec { pname = "open-meteo"; - version = "0.2.1"; + version = "0.3.1"; format = "pyproject"; - disabled = pythonOlder "3.8"; + disabled = pythonOlder "3.11"; src = fetchFromGitHub { owner = "frenck"; repo = "python-open-meteo"; rev = "v${version}"; - sha256 = "0i8jmhd29vvkpfxs9l5wy8525ngs79mnc7si2j9b1nc41xrv91f6"; + hash = "sha256-IB+dfQ4bb4dMYYQUVH9YbP3arvfgt4SooPlOKP3AVI8="; }; + postPatch = '' + # Upstream doesn't set a version for the pyproject.toml + substituteInPlace pyproject.toml \ + --replace "0.0.0" "${version}" \ + --replace "--cov" "" + ''; + nativeBuildInputs = [ poetry-core ]; propagatedBuildInputs = [ aiohttp - aresponses - pydantic + mashumaro + orjson ]; nativeCheckInputs = [ + aresponses pytest-asyncio pytestCheckHook ]; - postPatch = '' - # Upstream doesn't set a version for the pyproject.toml - substituteInPlace pyproject.toml \ - --replace "0.0.0" "${version}" \ - --replace "--cov" "" \ - --replace 'aiohttp = "^3.8.1"' 'aiohttp = "^3.8.0"' - ''; - pythonImportsCheck = [ "open_meteo" ]; meta = with lib; { + changelog = "https://github.com/frenck/python-open-meteo/releases/tag/v${version}"; description = "Python client for the Open-Meteo API"; homepage = "https://github.com/frenck/python-open-meteo"; license = licenses.mit; diff --git a/pkgs/development/python-modules/pvo/default.nix b/pkgs/development/python-modules/pvo/default.nix index 6963d3700013..d886bbd30ac9 100644 --- a/pkgs/development/python-modules/pvo/default.nix +++ b/pkgs/development/python-modules/pvo/default.nix @@ -4,16 +4,17 @@ , buildPythonPackage , fetchFromGitHub , poetry-core -, pydantic |