Merge pull request #293931 from NixOS/home-assistant

home-assistant: 2024.2.5 -> 2024.3.0
This commit is contained in:
Martin Weinelt 2024-03-07 13:10:39 +01:00 committed by GitHub
commit 5704371394
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
36 changed files with 289 additions and 194 deletions

View File

@ -4,7 +4,25 @@
, python3 , python3
}: }:
python3.pkgs.buildPythonApplication rec { let
python = python3.override {
packageOverrides = self: super: {
pychromecast = super.pychromecast.overridePythonAttrs (_: rec {
version = "13.1.0";
src = fetchPypi {
pname = "PyChromecast";
inherit version;
hash = "sha256-COYai1S9IRnTyasewBNtPYVjqpfgo7V4QViLm+YMJnY=";
};
postPatch = "";
});
};
};
in
python.pkgs.buildPythonApplication rec {
pname = "catt"; pname = "catt";
version = "0.12.11"; version = "0.12.11";
format = "pyproject"; format = "pyproject";
@ -22,11 +40,11 @@ python3.pkgs.buildPythonApplication rec {
}) })
]; ];
nativeBuildInputs = with python3.pkgs; [ nativeBuildInputs = with python.pkgs; [
poetry-core poetry-core
]; ];
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python.pkgs; [
click click
ifaddr ifaddr
pychromecast pychromecast

View File

@ -15,6 +15,7 @@ python3Packages.buildPythonApplication rec {
}; };
pythonRelaxDeps = [ pythonRelaxDeps = [
"aiosqlite"
"pillow" "pillow"
"httpx" "httpx"
]; ];

View File

@ -0,0 +1,56 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
# build-system
, poetry-core
# dependencies
, scapy
# tests
, pytest-asyncio
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "aiodhcpwatcher";
version = "0.8.0";
pyproject = true;
src = fetchFromGitHub {
owner = "bdraco";
repo = "aiodhcpwatcher";
rev = "v${version}";
hash = "sha256-zZigXYUDSbXjlH810CgLa56xWYKcStBeKUbgsZ5WjOw=";
};
postPatch = ''
sed -i "/addopts =/d" pyproject.toml
'';
build-system = [
poetry-core
];
dependencies = [
scapy
];
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
pythonImportsCheck = [
"aiodhcpwatcher"
];
meta = with lib; {
description = "Watch for DHCP packets with asyncio";
homepage = "https://github.com/bdraco/aiodhcpwatcher";
changelog = "https://github.com/bdraco/aiodhcpwatcher/blob/${src.rev}/CHANGELOG.md";
license = licenses.gpl3Only;
maintainers = with maintainers; [ hexa ];
};
}

View File

@ -9,8 +9,10 @@
# dependencies # dependencies
, aiohappyeyeballs , aiohappyeyeballs
, async-interrupt
, async-timeout , async-timeout
, chacha20poly1305-reuseable , chacha20poly1305-reuseable
, cryptography
, noiseprotocol , noiseprotocol
, protobuf , protobuf
, zeroconf , zeroconf
@ -23,7 +25,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aioesphomeapi"; pname = "aioesphomeapi";
version = "21.0.2"; version = "23.0.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -32,7 +34,7 @@ buildPythonPackage rec {
owner = "esphome"; owner = "esphome";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-uNVf0wnqVntjTxkNTilvb0v6h3VBCjd91wbLQJ6q71g="; hash = "sha256-iYaRA1Jj9Ew/s/LyS6U+NZ3TsAlXdDq0DAaudgFV5/o=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -42,7 +44,9 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
aiohappyeyeballs aiohappyeyeballs
async-interrupt
chacha20poly1305-reuseable chacha20poly1305-reuseable
cryptography
noiseprotocol noiseprotocol
protobuf protobuf
zeroconf zeroconf
@ -56,6 +60,11 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
disabledTests = [
# https://github.com/esphome/aioesphomeapi/issues/837
"test_reconnect_logic_stop_callback"
];
pythonImportsCheck = [ pythonImportsCheck = [
"aioesphomeapi" "aioesphomeapi"
]; ];

View File

@ -3,19 +3,23 @@
, aresponses , aresponses
, buildPythonPackage , buildPythonPackage
, certifi , certifi
, ciso8601
, fetchFromGitHub , fetchFromGitHub
, frozenlist
, mashumaro
, poetry-core , poetry-core
, pydantic , pyjwt
, pytest-aiohttp , pytest-aiohttp
, pytest-asyncio , pytest-asyncio
, pytest-cov
, pytestCheckHook , pytestCheckHook
, pytest-cov
, pythonOlder , pythonOlder
, yarl
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aionotion"; pname = "aionotion";
version = "2023.12.0"; version = "2024.02.2";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -24,7 +28,7 @@ buildPythonPackage rec {
owner = "bachya"; owner = "bachya";
repo = pname; repo = pname;
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-F9Mv8c+QEd+Vi5pdNDAFzRnYoNKZSAN5qbeX7yG6kIk="; hash = "sha256-xehHOB4iUMT1kKEK4jQzaj7hH9fmiY7mZxGC3CLnpAs=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -34,7 +38,11 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
aiohttp aiohttp
certifi certifi
pydantic ciso8601
frozenlist
mashumaro
pyjwt
yarl
]; ];
__darwinAllowLocalNetworking = true; __darwinAllowLocalNetworking = true;

View File

@ -4,11 +4,12 @@
, flit-core , flit-core
, pytestCheckHook , pytestCheckHook
, pythonOlder , pythonOlder
, typing-extensions
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiosqlite"; pname = "aiosqlite";
version = "0.19.0"; version = "0.20.0";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -17,13 +18,17 @@ buildPythonPackage rec {
owner = "omnilib"; owner = "omnilib";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-dm7uqG59FP40hcQt+R7qfQiD8P42AYZ2WcH1RoEC5wQ="; hash = "sha256-JQ9iNxK7FvBhPyr825d+8P5ZYFztDIX3gOwp4FPfyU4=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
flit-core flit-core
]; ];
propagatedBuildInputs = [
typing-extensions
];
nativeCheckInputs = [ nativeCheckInputs = [
pytestCheckHook pytestCheckHook
]; ];

View File

@ -12,7 +12,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "axis"; pname = "axis";
version = "48"; version = "50";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "Kane610"; owner = "Kane610";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-/Iz1F40Y00bgJUvNrkPGyA8Kkch92Kijeg8TQ8mostM="; hash = "sha256-Zu8hT6t7ZxlgXQKb2o20FpB15n9y/+n1qMctzcRP8F8=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -16,7 +16,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "bellows"; pname = "bellows";
version = "0.38.0"; version = "0.38.1";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "zigpy"; owner = "zigpy";
repo = "bellows"; repo = "bellows";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-7aqzhujTn1TMYBA6+79Ok76yv8hXszuuZ7TjhJ6zbQw="; hash = "sha256-oxPzjDb+FdHeHsgeGKH3SVvKb0vCB9dIhT7lGzhDcBw=";
}; };
postPatch = '' postPatch = ''

View File

@ -14,7 +14,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "bleak-esphome"; pname = "bleak-esphome";
version = "0.4.1"; version = "1.0.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.10"; disabled = pythonOlder "3.10";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "bluetooth-devices"; owner = "bluetooth-devices";
repo = "bleak-esphome"; repo = "bleak-esphome";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-cLjQg54DL17VtM/NFOQUE0dJThz5EhjipW2t9yhAMQ0="; hash = "sha256-zz7vh+UIahHtb6ZjR/eRrS9RGur2klqbgKoeJpMrH/k=";
}; };
postPatch = '' postPatch = ''
@ -55,7 +55,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "Bleak backend of ESPHome"; description = "Bleak backend of ESPHome";
homepage = "https://github.com/bluetooth-devices/bleak-esphome"; homepage = "https://github.com/bluetooth-devices/bleak-esphome";
changelog = "https://github.com/bluetooth-devices/bleak-esphome/blob/${version}/CHANGELOG.md"; changelog = "https://github.com/bluetooth-devices/bleak-esphome/blob/v${version}/CHANGELOG.md";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ fab ]; maintainers = with maintainers; [ fab ];
}; };

View File

@ -12,7 +12,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dataclasses-json"; pname = "dataclasses-json";
version = "0.6.3"; version = "0.6.4";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "lidatong"; owner = "lidatong";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-UVYLyRVLRdt38obSLkSsQdroO95lwpwzerw+gYBIJ7w="; hash = "sha256-izNDvljUWw60joi5WfCfoqL5SDM8Jz5Pz+lI/RP35n8=";
}; };
postPatch = '' postPatch = ''

View File

@ -1,26 +1,33 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, dateparser
, fetchFromGitHub , fetchFromGitHub
, georss-client , georss-client
, pytestCheckHook , pytestCheckHook
, pythonOlder , pythonOlder
, setuptools
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "georss-ign-sismologia-client"; pname = "georss-ign-sismologia-client";
version = "0.6"; version = "0.8";
format = "setuptools"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "exxamalte"; owner = "exxamalte";
repo = "python-georss-ign-sismologia-client"; repo = "python-georss-ign-sismologia-client";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-OLX6Megl5l8KDnd/G16QJ/wQn5AQc2cZ+LCbjuHFbwo="; hash = "sha256-geIxF4GumxRoetJ6mIZCzI3pAvWjJJoY66aQYd2Mzik=";
}; };
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [ propagatedBuildInputs = [
dateparser
georss-client georss-client
]; ];

View File

@ -4,22 +4,27 @@
, georss-client , georss-client
, pytestCheckHook , pytestCheckHook
, pythonOlder , pythonOlder
, setuptools
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "georss-qld-bushfire-alert-client"; pname = "georss-qld-bushfire-alert-client";
version = "0.6"; version = "0.7";
format = "setuptools"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "exxamalte"; owner = "exxamalte";
repo = "python-georss-qld-bushfire-alert-client"; repo = "python-georss-qld-bushfire-alert-client";
rev = "v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-7KVR0hdLwyCj7MYJoRvQ6wTeJQAmCUarYxJXEFaN8Pc="; hash = "sha256-ajCw1m7Qm1kZE/hOsBzFXPWAxl/pFD8pOOQo6qvachE=";
}; };
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [ propagatedBuildInputs = [
georss-client georss-client
]; ];
@ -35,6 +40,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "Python library for accessing Queensland Bushfire Alert feed"; description = "Python library for accessing Queensland Bushfire Alert feed";
homepage = "https://github.com/exxamalte/python-georss-qld-bushfire-alert-client"; homepage = "https://github.com/exxamalte/python-georss-qld-bushfire-alert-client";
changelog = "https://github.com/exxamalte/python-georss-qld-bushfire-alert-client/releases/tag/v${version}";
license = with licenses; [ asl20 ]; license = with licenses; [ asl20 ];
maintainers = with maintainers; [ fab ]; maintainers = with maintainers; [ fab ];
}; };

View File

@ -21,7 +21,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "holidays"; pname = "holidays";
version = "0.43"; version = "0.44";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -30,7 +30,7 @@ buildPythonPackage rec {
owner = "vacanza"; owner = "vacanza";
repo = "python-holidays"; repo = "python-holidays";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-8Qm8hzGVkaYLwqUcqUxcY4iDR1jrhnSoBS8E2Wewb+U="; hash = "sha256-RwM4RtFIUSaM/e4kiHOMg97lZ4VknB1pOqGRuIe2ns8=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -6,40 +6,32 @@
, tzdata , tzdata
, pyparsing , pyparsing
, pydantic , pydantic
, pytest-asyncio
, pytest-benchmark , pytest-benchmark
, pytest-golden
, pytestCheckHook , pytestCheckHook
, pythonOlder , pythonOlder
, pythonRelaxDepsHook
, python-dateutil , python-dateutil
, pyyaml
, setuptools , setuptools
, syrupy
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "ical"; pname = "ical";
version = "6.1.1"; version = "7.0.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.10"; disabled = pythonOlder "3.10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "allenporter"; owner = "allenporter";
repo = pname; repo = "ical";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-pFmJYXIhc9jhpc9ZjSNaol5h5Jb8ZvxuQsQL/2Rjryc="; hash = "sha256-S/6zyUFXSWcnnLNSwz1smovSyodhKeRVbT9lj7+KLWo=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
pythonRelaxDepsHook
setuptools setuptools
]; ];
pythonRelaxDeps = [
"tzdata"
];
propagatedBuildInputs = [ propagatedBuildInputs = [
python-dateutil python-dateutil
tzdata tzdata
@ -50,11 +42,9 @@ buildPythonPackage rec {
nativeCheckInputs = [ nativeCheckInputs = [
emoji emoji
freezegun freezegun
pytest-asyncio
pytest-benchmark pytest-benchmark
pytest-golden
pytestCheckHook pytestCheckHook
pyyaml syrupy
]; ];
pythonImportsCheck = [ pythonImportsCheck = [

View File

@ -4,32 +4,39 @@
, fetchPypi , fetchPypi
, pythonOlder , pythonOlder
, protobuf , protobuf
, requests , setuptools
, wheel
, zeroconf , zeroconf
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pychromecast"; pname = "pychromecast";
version = "13.1.0"; version = "14.0.0";
format = "setuptools"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.11";
src = fetchPypi { src = fetchPypi {
pname = "PyChromecast"; pname = "PyChromecast";
inherit version; inherit version;
hash = "sha256-COYai1S9IRnTyasewBNtPYVjqpfgo7V4QViLm+YMJnY="; hash = "sha256-3E+LBS52CpeNqbJWi3kCDLea9gigJkZfB1RM/+Q5c88=";
}; };
postPatch = '' postPatch = ''
substituteInPlace requirements.txt \ substituteInPlace pyproject.toml \
--replace "protobuf>=3.19.1,<4" "protobuf>=3.19.1" --replace-fail "setuptools~=65.6" "setuptools" \
--replace-fail "wheel~=0.37.1" "wheel" \
--replace-fail "protobuf>=4.25.1" "protobuf"
''; '';
nativeBuildInputs = [
setuptools
wheel
];
propagatedBuildInputs = [ propagatedBuildInputs = [
casttube casttube
protobuf protobuf
requests
zeroconf zeroconf
]; ];

View File

@ -1,10 +1,10 @@
{ lib { lib
, authlib , authlib
, buildPythonPackage , buildPythonPackage
, dataclasses-json
, fetchFromGitHub , fetchFromGitHub
, httpx , httpx
, marshmallow , mashumaro
, orjson
, pytest-httpx , pytest-httpx
, poetry-core , poetry-core
, pytestCheckHook , pytestCheckHook
@ -16,7 +16,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pydiscovergy"; pname = "pydiscovergy";
version = "2.0.5"; version = "3.0.0";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.10"; disabled = pythonOlder "3.10";
@ -24,24 +24,24 @@ buildPythonPackage rec {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jpbede"; owner = "jpbede";
repo = "pydiscovergy"; repo = "pydiscovergy";
rev = "refs/tags/${version}"; rev = "refs/tags/v${version}";
hash = "sha256-u2G+o/vhPri7CPSnekC8rUo/AvuvePpG51MR+FdH2XA="; hash = "sha256-ArcH/4ZyOtIGmoXArU+oEd357trJnS9umlN9B+U0dBI=";
}; };
postPatch = ''
sed -i '/addopts =/d' pyproject.toml
'';
nativeBuildInputs = [ nativeBuildInputs = [
poetry-core poetry-core
pythonRelaxDepsHook pythonRelaxDepsHook
]; ];
pythonRelaxDeps = [
"pytz"
];
propagatedBuildInputs = [ propagatedBuildInputs = [
authlib authlib
dataclasses-json
httpx httpx
marshmallow mashumaro
orjson
pytz pytz
]; ];
@ -58,7 +58,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "Async Python 3 library for interacting with the Discovergy API"; description = "Async Python 3 library for interacting with the Discovergy API";
homepage = "https://github.com/jpbede/pydiscovergy"; homepage = "https://github.com/jpbede/pydiscovergy";
changelog = "https://github.com/jpbede/pydiscovergy/releases/tag/${version}"; changelog = "https://github.com/jpbede/pydiscovergy/releases/tag/v${version}";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ fab ]; maintainers = with maintainers; [ fab ];
}; };

View File

@ -7,14 +7,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pyrfxtrx"; pname = "pyrfxtrx";
version = "0.30.1"; version = "0.31.0";
format = "setuptools"; format = "setuptools";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Danielhiversen"; owner = "Danielhiversen";
repo = "pyRFXtrx"; repo = "pyRFXtrx";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-sxxGu1ON5fhUCaONYJdsUFHraTh5NAdXzj7Cai9k5yc="; hash = "sha256-0t5pPBk8Mzdm6STGtqGMljPjDoW2DTT7x21MEnG512w=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -10,7 +10,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pysmi-lextudio"; pname = "pysmi-lextudio";
version = "1.3.2"; version = "1.3.3";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "lextudio"; owner = "lextudio";
repo = "pysmi"; repo = "pysmi";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-3ai7Fb97B2HpG6IllEx/PNbJ3KQjwoN9Mn+jprMz+XY="; hash = "sha256-GApjr7KUd7KkdxsbLTzFNdWWol7b/8udrY9q/lls2ro=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -42,7 +42,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "SNMP MIB parser"; description = "SNMP MIB parser";
homepage = "https://github.com/lextudio/pysmi"; homepage = "https://github.com/lextudio/pysmi";
changelog = "https://github.com/lextudio/pysmi/blob/${version}/CHANGES.rst"; changelog = "https://github.com/lextudio/pysmi/blob/v${version}/CHANGES.rst";
license = licenses.bsd2; license = licenses.bsd2;
maintainers = with maintainers; [ fab ]; maintainers = with maintainers; [ fab ];
}; };

View File

@ -7,7 +7,6 @@
# dependencies # dependencies
, pyasn1 , pyasn1
, pyasyncore
, pysmi-lextudio , pysmi-lextudio
, pysnmpcrypto , pysnmpcrypto
@ -18,14 +17,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pysnmp-lextudio"; pname = "pysnmp-lextudio";
version = "5.0.33"; version = "6.0.6";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lextudio"; owner = "lextudio";
repo = "pysnmp"; repo = "pysnmp";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-IXYpR7JnuHmcjtdCs1C+rPHS9IZ93MN/Zuw4Pu1l/4A="; hash = "sha256-Mbzpe2wVoW4m7hnfsdcSO/8uOgWl5f1sLLqvdpQP2gU=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -34,7 +33,6 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
pyasn1 pyasn1
pyasyncore
pysmi-lextudio pysmi-lextudio
pysnmpcrypto pysnmpcrypto
]; ];
@ -50,11 +48,15 @@ buildPythonPackage rec {
"test_send_notification" "test_send_notification"
"test_send_trap" "test_send_trap"
"test_send_v3_inform_notification" "test_send_v3_inform_notification"
"test_send_v3_inform_sync"
"test_usm_sha_aes128" "test_usm_sha_aes128"
"test_v1_get" "test_v1_get"
"test_v1_next" "test_v1_next"
"test_v1_set" "test_v1_set"
"test_v2c_bulk" "test_v2c_bulk"
# pysnmp.smi.error.MibNotFoundError
"test_send_v3_trap_notification"
"test_addAsn1MibSource"
]; ];
pythonImportsCheck = [ pythonImportsCheck = [

View File

@ -19,7 +19,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "python-roborock"; pname = "python-roborock";
version = "0.39.2"; version = "0.40.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.10"; disabled = pythonOlder "3.10";
@ -28,7 +28,7 @@ buildPythonPackage rec {
owner = "humbertogontijo"; owner = "humbertogontijo";
repo = "python-roborock"; repo = "python-roborock";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-hgd6/3GO1r6Xmgcq3iWVxWzi3VIN8MvV27CxF6tWwgU="; hash = "sha256-H4xwgulNLs3R1Q5GhvQffpAZ1CWXZUJAja8BskW+YJk=";
}; };
postPatch = '' postPatch = ''

View File

@ -10,7 +10,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pytraccar"; pname = "pytraccar";
version = "2.1.0"; version = "2.1.1";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.11"; disabled = pythonOlder "3.11";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "ludeeus"; owner = "ludeeus";
repo = "pytraccar"; repo = "pytraccar";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-VsZ18zVIO5ps0GIoVwXBuVe20n6Cz6buItgKlzYyjt4="; hash = "sha256-WTRqYw66iD4bbb1aWJfBI67+DtE1FE4oiuUKpfVqypE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,7 +9,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "securetar"; pname = "securetar";
version = "2024.2.0"; version = "2024.2.1";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "pvizeli"; owner = "pvizeli";
repo = "securetar"; repo = "securetar";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-rYRbrpXo2oVW8SpddNsKb0FBdscovNUaGXLHy7WBiVU="; hash = "sha256-D50ceRlK+v5Uo3qBBpVtKwI8zKU/qh1Njn3qeKM4LiY=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -13,16 +13,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "vallox-websocket-api"; pname = "vallox-websocket-api";
version = "4.2.0"; version = "5.1.0";
format = "pyproject"; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "yozik04"; owner = "yozik04";
repo = "vallox_websocket_api"; repo = "vallox_websocket_api";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-e05MP130okj8j20yMn8a7P6PYZ4PKwCOlAf0ZlUR5aI="; hash = "sha256-ZYcLoOYwQK1+txiBuCEIDp+tYM3eXFtOSR0iNIrIP0w=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,14 +9,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "wallbox"; pname = "wallbox";
version = "0.5.1"; version = "0.6.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-EDEB7/CkrfYSNcSh55Itrj6rThsNKeuj8lHLAY+Qml4="; hash = "sha256-COZHMkAbTFZKi/b4e6toC4gPj1MPfGN4aBVi6SglrBI=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -43,6 +43,13 @@ buildPythonPackage rec {
pytestCheckHook pytestCheckHook
]; ];
disabledTests = [
# RuntimeError: no running event loop
"test_mfg_cluster_events"
"test_co2_sensor"
"test_smart_air_sensor"
];
pythonImportsCheck = [ pythonImportsCheck = [
"zhaquirks" "zhaquirks"
]; ];

View File

@ -1,6 +1,7 @@
{ lib { lib
, aiohttp , aiohttp
, aiosqlite , aiosqlite
, aioresponses
, buildPythonPackage , buildPythonPackage
, crccheck , crccheck
, cryptography , cryptography
@ -18,7 +19,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "zigpy"; pname = "zigpy";
version = "0.62.3"; version = "0.63.4";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -27,7 +28,7 @@ buildPythonPackage rec {
owner = "zigpy"; owner = "zigpy";
repo = "zigpy"; repo = "zigpy";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-LMcyYDUH/jGrDW8sjrT9kHdIWQ20fOOcOJRhUpKMGi8="; hash = "sha256-0wenUUkhgodsBID+ZT9JRoJeGDTqAChAIpj+9/Q3FMM=";
}; };
postPatch = '' postPatch = ''
@ -51,6 +52,7 @@ buildPythonPackage rec {
]; ];
nativeCheckInputs = [ nativeCheckInputs = [
aioresponses
freezegun freezegun
pytest-asyncio pytest-asyncio
pytest-timeout pytest-timeout

View File

@ -2,7 +2,7 @@
# Do not edit! # Do not edit!
{ {
version = "2024.2.5"; version = "2024.3.0";
components = { components = {
"3_day_blinds" = ps: with ps; [ "3_day_blinds" = ps: with ps; [
]; ];
@ -19,6 +19,8 @@
"acmeda" = ps: with ps; [ "acmeda" = ps: with ps; [
aiopulse aiopulse
]; ];
"acomax" = ps: with ps; [
];
"actiontec" = ps: with ps; [ "actiontec" = ps: with ps; [
]; ];
"adax" = ps: with ps; [ "adax" = ps: with ps; [
@ -224,6 +226,8 @@
"apprise" = ps: with ps; [ "apprise" = ps: with ps; [
apprise apprise
]; ];
"aprilaire" = ps: with ps; [
]; # missing inputs: pyaprilaire
"aprs" = ps: with ps; [ "aprs" = ps: with ps; [
aprslib aprslib
geopy geopy
@ -568,8 +572,7 @@
"brel_home" = ps: with ps; [ "brel_home" = ps: with ps; [
]; ];
"bring" = ps: with ps; [ "bring" = ps: with ps; [
python-bring-api ]; # missing inputs: bring-api
];
"broadlink" = ps: with ps; [ "broadlink" = ps: with ps; [
broadlink broadlink
]; ];
@ -831,6 +834,7 @@
"decora_wifi" = ps: with ps; [ "decora_wifi" = ps: with ps; [
]; # missing inputs: decora-wifi ]; # missing inputs: decora-wifi
"default_config" = ps: with ps; [ "default_config" = ps: with ps; [
aiodhcpwatcher
aiodiscover aiodiscover
aiohttp-cors aiohttp-cors
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
@ -862,7 +866,6 @@
python-matter-server python-matter-server
pyturbojpeg pyturbojpeg
pyudev pyudev
scapy
securetar securetar
sqlalchemy sqlalchemy
webrtc-noise-gain webrtc-noise-gain
@ -929,9 +932,9 @@
pydexcom pydexcom
]; ];
"dhcp" = ps: with ps; [ "dhcp" = ps: with ps; [
aiodhcpwatcher
aiodiscover aiodiscover
cached-ipaddress cached-ipaddress
scapy
]; ];
"diagnostics" = ps: with ps; [ "diagnostics" = ps: with ps; [
aiohttp-cors aiohttp-cors
@ -980,7 +983,6 @@
ifaddr ifaddr
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
zeroconf
]; ];
"dlna_dms" = ps: with ps; [ "dlna_dms" = ps: with ps; [
aiohttp-cors aiohttp-cors
@ -991,7 +993,6 @@
ifaddr ifaddr
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
zeroconf
]; ];
"dnsip" = ps: with ps; [ "dnsip" = ps: with ps; [
aiodns aiodns
@ -1080,6 +1081,8 @@
"duotecno" = ps: with ps; [ "duotecno" = ps: with ps; [
pyduotecno pyduotecno
]; ];
"duquesne_light" = ps: with ps; [
];
"dwd_weather_warnings" = ps: with ps; [ "dwd_weather_warnings" = ps: with ps; [
dwdwfsapi dwdwfsapi
]; ];
@ -2131,6 +2134,15 @@
]; ];
"hurrican_shutters_wholesale" = ps: with ps; [ "hurrican_shutters_wholesale" = ps: with ps; [
]; ];
"husqvarna_automower" = ps: with ps; [
aioautomower
aiohttp-cors
aiohttp-fast-url-dispatcher
aiohttp-zlib-ng
fnv-hash-fast
psutil-home-assistant
sqlalchemy
];
"huum" = ps: with ps; [ "huum" = ps: with ps; [
huum huum
]; ];
@ -2418,7 +2430,6 @@
"joaoapps_join" = ps: with ps; [ "joaoapps_join" = ps: with ps; [
]; # missing inputs: python-join-api ]; # missing inputs: python-join-api
"juicenet" = ps: with ps; [ "juicenet" = ps: with ps; [
python-juicenet
]; ];
"justnimbus" = ps: with ps; [ "justnimbus" = ps: with ps; [
justnimbus justnimbus
@ -2557,6 +2568,8 @@
krakenex krakenex
pykrakenapi pykrakenapi
]; ];
"krispol" = ps: with ps; [
];
"kulersky" = ps: with ps; [ "kulersky" = ps: with ps; [
pykulersky pykulersky
]; ];
@ -2854,6 +2867,8 @@
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
]; ];
"madeco" = ps: with ps; [
];
"mailbox" = ps: with ps; [ "mailbox" = ps: with ps; [
aiohttp-cors aiohttp-cors
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
@ -3025,6 +3040,14 @@
]; ];
"mfi" = ps: with ps; [ "mfi" = ps: with ps; [
]; # missing inputs: mficlient ]; # missing inputs: mficlient
"microbees" = ps: with ps; [
aiohttp-cors
aiohttp-fast-url-dispatcher
aiohttp-zlib-ng
fnv-hash-fast
psutil-home-assistant
sqlalchemy
]; # missing inputs: microBeesPy
"microsoft" = ps: with ps; [ "microsoft" = ps: with ps; [
]; # missing inputs: pycsspeechtts ]; # missing inputs: pycsspeechtts
"microsoft_face" = ps: with ps; [ "microsoft_face" = ps: with ps; [
@ -3396,10 +3419,10 @@
aiohttp-cors aiohttp-cors
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
aiohttp-zlib-ng aiohttp-zlib-ng
aiooui
fnv-hash-fast fnv-hash-fast
getmac getmac
ifaddr ifaddr
mac-vendor-lookup
netmap netmap
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
@ -4263,6 +4286,8 @@
"saj" = ps: with ps; [ "saj" = ps: with ps; [
pysaj pysaj
]; ];
"samsam" = ps: with ps; [
];
"samsungtv" = ps: with ps; [ "samsungtv" = ps: with ps; [
aiohttp-cors aiohttp-cors
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
@ -4276,7 +4301,6 @@
samsungtvws samsungtvws
sqlalchemy sqlalchemy
wakeonlan wakeonlan
zeroconf
] ]
++ samsungctl.optional-dependencies.websocket ++ samsungctl.optional-dependencies.websocket
++ samsungtvws.optional-dependencies.async ++ samsungtvws.optional-dependencies.async
@ -4727,7 +4751,6 @@
ifaddr ifaddr
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
zeroconf
]; ];
"starline" = ps: with ps; [ "starline" = ps: with ps; [
starline starline
@ -4899,6 +4922,7 @@
]; ];
"systemmonitor" = ps: with ps; [ "systemmonitor" = ps: with ps; [
psutil psutil
psutil-home-assistant
]; ];
"tado" = ps: with ps; [ "tado" = ps: with ps; [
python-tado python-tado
@ -5330,7 +5354,6 @@
ifaddr ifaddr
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
zeroconf
]; ];
"uprise_smart_shades" = ps: with ps; [ "uprise_smart_shades" = ps: with ps; [
]; ];
@ -5486,6 +5509,8 @@
"weatherflow" = ps: with ps; [ "weatherflow" = ps: with ps; [
pyweatherflowudp pyweatherflowudp
]; ];
"weatherflow_cloud" = ps: with ps; [
]; # missing inputs: weatherflow4py
"weatherkit" = ps: with ps; [ "weatherkit" = ps: with ps; [
apple-weatherkit apple-weatherkit
]; ];
@ -5494,6 +5519,8 @@
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
aiohttp-zlib-ng aiohttp-zlib-ng
]; ];
"webmin" = ps: with ps; [
]; # missing inputs: webmin-xmlrpc
"webostv" = ps: with ps; [ "webostv" = ps: with ps; [
aiowebostv aiowebostv
]; ];
@ -5555,7 +5582,7 @@
wled wled
]; ];
"wolflink" = ps: with ps; [ "wolflink" = ps: with ps; [
]; # missing inputs: wolf-smartset ]; # missing inputs: wolf-comm
"workday" = ps: with ps; [ "workday" = ps: with ps; [
holidays holidays
]; ];
@ -5693,7 +5720,6 @@
ifaddr ifaddr
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
zeroconf
]; ];
"yandex_transport" = ps: with ps; [ "yandex_transport" = ps: with ps; [
aioymaps aioymaps
@ -5713,7 +5739,6 @@
psutil-home-assistant psutil-home-assistant
sqlalchemy sqlalchemy
yeelight yeelight
zeroconf
]; ];
"yeelightsunflower" = ps: with ps; [ "yeelightsunflower" = ps: with ps; [
]; # missing inputs: yeelightsunflower ]; # missing inputs: yeelightsunflower
@ -5797,6 +5822,8 @@
]; # missing inputs: ziggo-mediabox-xl ]; # missing inputs: ziggo-mediabox-xl
"zodiac" = ps: with ps; [ "zodiac" = ps: with ps; [
]; ];
"zondergas" = ps: with ps; [
];
"zone" = ps: with ps; [ "zone" = ps: with ps; [
]; ];
"zoneminder" = ps: with ps; [ "zoneminder" = ps: with ps; [
@ -5874,6 +5901,7 @@
"arcam_fmj" "arcam_fmj"
"aseko_pool_live" "aseko_pool_live"
"assist_pipeline" "assist_pipeline"
"asterisk_mbox"
"asuswrt" "asuswrt"
"atag" "atag"
"august" "august"
@ -5905,7 +5933,6 @@
"bond" "bond"
"bosch_shc" "bosch_shc"
"braviatv" "braviatv"
"bring"
"broadlink" "broadlink"
"brother" "brother"
"brottsplatskartan" "brottsplatskartan"
@ -6124,6 +6151,7 @@
"huisbaasje" "huisbaasje"
"humidifier" "humidifier"
"hunterdouglas_powerview" "hunterdouglas_powerview"
"husqvarna_automower"
"huum" "huum"
"hvv_departures" "hvv_departures"
"hydrawise" "hydrawise"
@ -6570,6 +6598,7 @@
"vallox" "vallox"
"valve" "valve"
"velbus" "velbus"
"velux"
"venstar" "venstar"
"vera" "vera"
"verisure" "verisure"

View File

@ -3,7 +3,6 @@
, callPackage , callPackage
, fetchFromGitHub , fetchFromGitHub
, fetchPypi , fetchPypi
, fetchpatch
, python311 , python311
, substituteAll , substituteAll
, ffmpeg-headless , ffmpeg-headless
@ -31,15 +30,6 @@ let
# Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt
(self: super: { (self: super: {
aemet-opendata = super.aemet-opendata.overridePythonAttrs (oldAttrs: rec {
version = "0.4.7";
src = fetchFromGitHub {
inherit (oldAttrs.src) owner repo;
rev = "refs/tags/${version}";
hash = "sha256-kmU2HtNyYhfwWQv6asOtDpLZ6+O+eEICzBNLxUhAwaY=";
};
});
aiogithubapi = super.aiogithubapi.overridePythonAttrs (oldAttrs: rec { aiogithubapi = super.aiogithubapi.overridePythonAttrs (oldAttrs: rec {
version = "22.10.1"; version = "22.10.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -55,23 +45,6 @@ let
]; ];
}); });
aionotion = super.aionotion.overridePythonAttrs (oldAttrs: rec {
version = "2023.05.5";
src = fetchFromGitHub {
owner = "bachya";
repo = "aionotion";
rev = "refs/tags/${version}";
hash = "sha256-/2sF8m5R8YXkP89bi5zR3h13r5LrFOl1OsixAcX0D4o=";
};
patches = [
(fetchpatch {
# clean up build dependencies; https://github.com/bachya/aionotion/commit/53c7285110d12810f9b43284295f71d052a81b83
url = "https://github.com/bachya/aionotion/commit/53c7285110d12810f9b43284295f71d052a81b83.patch";
hash = "sha256-RLRbHmaR2A8MNc96WHx0L8ccyygoBUaOulAuRJkFuUM=";
})
];
});
aiopurpleair = super.aiopurpleair.overridePythonAttrs (oldAttrs: rec { aiopurpleair = super.aiopurpleair.overridePythonAttrs (oldAttrs: rec {
version = "2022.12.1"; version = "2022.12.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -87,16 +60,6 @@ let
''; '';
}); });
aiopvapi = super.aiopvapi.overridePythonAttrs (oldAttrs: rec {
version = "2.0.4";
src = fetchFromGitHub {
owner = "sander76";
repo = "aio-powerview-api";
rev = "refs/tags/v${version}";
hash = "sha256-cghfNi5T343/7GxNLDrE0iAewMlRMycQTP7SvDVpU2M=";
};
});
aioskybell = super.aioskybell.overridePythonAttrs (oldAttrs: rec { aioskybell = super.aioskybell.overridePythonAttrs (oldAttrs: rec {
version = "22.7.0"; version = "22.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -149,15 +112,6 @@ let
]; ];
}); });
brother = super.brother.overridePythonAttrs (oldAttrs: rec {
version = "3.0.0";
src = fetchFromGitHub {
inherit (oldAttrs.src) owner repo;
rev = "refs/tags/${version}";
hash = "sha256-rRzcWT9DcNTBUYxyYYC7WORBbrkgj0toCp2e8ADUN5s=";
};
});
debugpy = super.debugpy.overridePythonAttrs (oldAttrs: { debugpy = super.debugpy.overridePythonAttrs (oldAttrs: {
# tests are deadlocking too often # tests are deadlocking too often
# https://github.com/NixOS/nixpkgs/issues/262000 # https://github.com/NixOS/nixpkgs/issues/262000
@ -348,16 +302,6 @@ let
}; };
}); });
python-slugify = super.python-slugify.overridePythonAttrs (oldAttrs: rec {
version = "8.0.1";
src = fetchFromGitHub {
owner = "un33k";
repo = "python-slugify";
rev = "refs/tags/v${version}";
hash = "sha256-MJac63XjgWdUQdyyEm8O7gAGVszmHxZzRF4frJtR0BU=";
};
});
pytradfri = super.pytradfri.overridePythonAttrs (oldAttrs: rec { pytradfri = super.pytradfri.overridePythonAttrs (oldAttrs: rec {
version = "9.0.1"; version = "9.0.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -398,16 +342,6 @@ let
}; };
}); });
wyoming = super.wyoming.overridePythonAttrs (oldAttrs: rec {
version = "1.5.2";
src = fetchFromGitHub {
owner = "rhasspy";
repo = "wyoming";
rev = "refs/tags/${version}";
hash = "sha256-2bc5coKL5KlTeL9fdghPmRF66NXfimHOKGtE2yPXgrA=";
};
});
xbox-webapi = super.xbox-webapi.overridePythonAttrs (oldAttrs: rec { xbox-webapi = super.xbox-webapi.overridePythonAttrs (oldAttrs: rec {
version = "2.0.11"; version = "2.0.11";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -462,7 +396,7 @@ let
extraBuildInputs = extraPackages python.pkgs; extraBuildInputs = extraPackages python.pkgs;
# Don't forget to run parse-requirements.py after updating # Don't forget to run parse-requirements.py after updating
hassVersion = "2024.2.5"; hassVersion = "2024.3.0";
in python.pkgs.buildPythonApplication rec { in python.pkgs.buildPythonApplication rec {
pname = "homeassistant"; pname = "homeassistant";
@ -480,13 +414,13 @@ in python.pkgs.buildPythonApplication rec {
owner = "home-assistant"; owner = "home-assistant";
repo = "core"; repo = "core";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-RRoxWNcubpxzmExzrifRKhgNm0IM5OuNZYHz6tp9zm8="; hash = "sha256-/DCE2IHdS+oImpzwIaFgXotAsoiPPbe3X3HG7RXbv9g=";
}; };
# Secondary source is pypi sdist for translations # Secondary source is pypi sdist for translations
sdist = fetchPypi { sdist = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-qhUfOMSM4FKUQ9LdeoHLLrVm5cWFrlTER02s+tLVAMU="; hash = "sha256-G9M1WV+s4zu9BY10RWmJ71ghafAOHMjnCR6BOlggguM=";
}; };
nativeBuildInputs = with python.pkgs; [ nativeBuildInputs = with python.pkgs; [
@ -496,7 +430,10 @@ in python.pkgs.buildPythonApplication rec {
pythonRelaxDeps = [ pythonRelaxDeps = [
"attrs" "attrs"
"bcrypt"
"ciso8601" "ciso8601"
"cryptography"
"httpx"
"orjson" "orjson"
"pyopenssl" "pyopenssl"
"typing-extensions" "typing-extensions"
@ -534,7 +471,7 @@ in python.pkgs.buildPythonApplication rec {
aiohttp-fast-url-dispatcher aiohttp-fast-url-dispatcher
aiohttp-zlib-ng aiohttp-zlib-ng
astral astral
async-timeout async-interrupt
atomicwrites-homeassistant atomicwrites-homeassistant
attrs attrs
awesomeversion awesomeversion
@ -555,7 +492,9 @@ in python.pkgs.buildPythonApplication rec {
python-slugify python-slugify
pyyaml pyyaml
requests requests
typing-extensions
ulid-transform ulid-transform
urllib3
voluptuous voluptuous
voluptuous-serialize voluptuous-serialize
yarl yarl
@ -563,7 +502,7 @@ in python.pkgs.buildPythonApplication rec {
pyotp pyotp
pyqrcode pyqrcode
# Implicit dependency via homeassistant/requirements.py # Implicit dependency via homeassistant/requirements.py
setuptools packaging
]; ];
makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip"; makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip";
@ -593,7 +532,9 @@ in python.pkgs.buildPythonApplication rec {
] ++ lib.concatMap (component: getPackages component python.pkgs) [ ] ++ lib.concatMap (component: getPackages component python.pkgs) [
# some components are needed even if tests in tests/components are disabled # some components are needed even if tests in tests/components are disabled
"default_config" "default_config"
"debugpy"
"hue" "hue"
"sentry"
]; ];
pytestFlagsArray = [ pytestFlagsArray = [

View File

@ -4,7 +4,7 @@ buildPythonPackage rec {
# the frontend version corresponding to a specific home-assistant version can be found here # 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 # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
pname = "home-assistant-frontend"; pname = "home-assistant-frontend";
version = "20240207.1"; version = "20240306.0";
format = "wheel"; format = "wheel";
src = fetchPypi { src = fetchPypi {
@ -12,7 +12,7 @@ buildPythonPackage rec {
pname = "home_assistant_frontend"; pname = "home_assistant_frontend";
dist = "py3"; dist = "py3";
python = "py3"; python = "py3";
hash = "sha256-uGBVha7nJvYua1rZXlIJGhUzEm5wSrhazrOBUi3omJk="; hash = "sha256-eDuJC23PJbjaKC9TBCLg5ML3XR6admKrT9RVgfUQCw8=";
}; };
# there is nothing to strip in this package # there is nothing to strip in this package

View File

@ -9,14 +9,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "home-assistant-intents"; pname = "home-assistant-intents";
version = "2024.2.2"; version = "2024.2.28";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-Tb9ZZvs5Wyzm2TS5INUSua4Y3/2H+kHEhjpfYWJi+d0="; hash = "sha256-EmnaYc+L1PHOv6M7odYDl+UBZkLJRtP86xPoqdbuOqU=";
}; };
postPatch = '' postPatch = ''

View File

@ -315,6 +315,6 @@ def main() -> None:
if __name__ == "__main__": if __name__ == "__main__":
run_sync(["pyright", __file__]) run_sync(["pyright", __file__])
run_sync(["ruff", "--ignore=E501", __file__]) run_sync(["ruff", "check", "--ignore=E501", __file__])
run_sync(["isort", __file__]) run_sync(["isort", __file__])
main() main()

View File

@ -1,8 +1,8 @@
diff --git a/homeassistant/components/ffmpeg/__init__.py b/homeassistant/components/ffmpeg/__init__.py diff --git a/homeassistant/components/ffmpeg/__init__.py b/homeassistant/components/ffmpeg/__init__.py
index a98766c78c..1c47bb1f80 100644 index 4ab4ee32a0..0f04f037f6 100644
--- a/homeassistant/components/ffmpeg/__init__.py --- a/homeassistant/components/ffmpeg/__init__.py
+++ b/homeassistant/components/ffmpeg/__init__.py +++ b/homeassistant/components/ffmpeg/__init__.py
@@ -41,7 +41,7 @@ CONF_FFMPEG_BIN = "ffmpeg_bin" @@ -46,7 +46,7 @@ CONF_FFMPEG_BIN = "ffmpeg_bin"
CONF_EXTRA_ARGUMENTS = "extra_arguments" CONF_EXTRA_ARGUMENTS = "extra_arguments"
CONF_OUTPUT = "output" CONF_OUTPUT = "output"
@ -70,15 +70,15 @@ index 6eec115d6f..c55b4fb26c 100644
hass.bus.async_fire(EVENT_HOMEASSISTANT_START) hass.bus.async_fire(EVENT_HOMEASSISTANT_START)
diff --git a/tests/components/ffmpeg/test_init.py b/tests/components/ffmpeg/test_init.py diff --git a/tests/components/ffmpeg/test_init.py b/tests/components/ffmpeg/test_init.py
index 0c6ce300d0..ff74a5d7f7 100644 index 452a818859..41ba776436 100644
--- a/tests/components/ffmpeg/test_init.py --- a/tests/components/ffmpeg/test_init.py
+++ b/tests/components/ffmpeg/test_init.py +++ b/tests/components/ffmpeg/test_init.py
@@ -91,7 +91,7 @@ class TestFFmpegSetup: @@ -81,7 +81,7 @@ def test_setup_component():
with assert_setup_component(1): with assert_setup_component(1):
setup_component(self.hass, ffmpeg.DOMAIN, {ffmpeg.DOMAIN: {}}) setup_component(hass, ffmpeg.DOMAIN, {ffmpeg.DOMAIN: {}})
- assert hass.data[ffmpeg.DATA_FFMPEG].binary == "ffmpeg"
+ assert hass.data[ffmpeg.DATA_FFMPEG].binary == "@ffmpeg@"
hass.stop()
- assert self.hass.data[ffmpeg.DATA_FFMPEG].binary == "ffmpeg"
+ assert self.hass.data[ffmpeg.DATA_FFMPEG].binary == "@ffmpeg@"
def test_setup_component_test_service(self):
"""Set up ffmpeg component test services."""

View File

@ -8,7 +8,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "homeassistant-stubs"; pname = "homeassistant-stubs";
version = "2024.2.5"; version = "2024.3.0";
format = "pyproject"; format = "pyproject";
disabled = python.version != home-assistant.python.version; disabled = python.version != home-assistant.python.version;
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "KapJI"; owner = "KapJI";
repo = "homeassistant-stubs"; repo = "homeassistant-stubs";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-izXAm9lK5mhjc8vVTRflDdxYQesqnkBJtFonOHoht9c="; hash = "sha256-4K/JrmNcvRzso9NgFuh3fThcEQS+Ydk4II6xrWv2KdM=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -82,6 +82,11 @@ let
# aioserial mock produces wrong state # aioserial mock produces wrong state
"--deselect tests/components/modem_callerid/test_init.py::test_setup_entry" "--deselect tests/components/modem_callerid/test_init.py::test_setup_entry"
]; ];
velux = [
# uses unmocked sockets
"--deselect tests/components/velux/test_config_flow.py::test_user_success"
"--deselect tests/components/velux/test_config_flow.py::test_import_valid_config"
];
}; };
in lib.listToAttrs (map (component: lib.nameValuePair component ( in lib.listToAttrs (map (component: lib.nameValuePair component (
home-assistant.overridePythonAttrs (old: { home-assistant.overridePythonAttrs (old: {

View File

@ -258,6 +258,6 @@ async def main():
if __name__ == "__main__": if __name__ == "__main__":
run_sync(["pyright", __file__]) run_sync(["pyright", __file__])
run_sync(["ruff", "--ignore=E501", __file__]) run_sync(["ruff", "check", "--ignore=E501", __file__])
run_sync(["isort", __file__]) run_sync(["isort", __file__])
asyncio.run(main()) asyncio.run(main())

View File

@ -193,6 +193,8 @@ self: super: with self; {
aiocurrencylayer = callPackage ../development/python-modules/aiocurrencylayer { }; aiocurrencylayer = callPackage ../development/python-modules/aiocurrencylayer { };
aiodhcpwatcher = callPackage ../development/python-modules/aiodhcpwatcher { };
aiodiscover = callPackage ../development/python-modules/aiodiscover { }; aiodiscover = callPackage ../development/python-modules/aiodiscover { };
aiodns = callPackage ../development/python-modules/aiodns { }; aiodns = callPackage ../development/python-modules/aiodns { };