diff --git a/pkgs/development/python-modules/aiodiscover/default.nix b/pkgs/development/python-modules/aiodiscover/default.nix index 4c2e2d5f47eb..b3155fb04232 100644 --- a/pkgs/development/python-modules/aiodiscover/default.nix +++ b/pkgs/development/python-modules/aiodiscover/default.nix @@ -18,16 +18,16 @@ buildPythonPackage rec { pname = "aiodiscover"; - version = "2.2.0"; + version = "2.6.1"; pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "bdraco"; repo = "aiodiscover"; tag = "v${version}"; - hash = "sha256-A12YeNIm9Pv4zpzaejTk8VvLzKLHxZV2EzVpchLX1k8="; + hash = "sha256-dgmRgokHDw0ooxD8Ksxb8QKeAdUhYj/WO85EC57MeNg="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/aioecowitt/default.nix b/pkgs/development/python-modules/aioecowitt/default.nix index c8e73355bc3c..15be3f422192 100644 --- a/pkgs/development/python-modules/aioecowitt/default.nix +++ b/pkgs/development/python-modules/aioecowitt/default.nix @@ -12,21 +12,21 @@ buildPythonPackage rec { pname = "aioecowitt"; - version = "2024.2.2"; + version = "2025.3.1"; pyproject = true; disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "home-assistant-libs"; - repo = pname; + repo = "aioecowitt"; tag = version; - hash = "sha256-QfUawUtkNl2molropV8NSU7Kfm/D5/xuaPCjgm2TVOs="; + hash = "sha256-BAiRonfu3tFf5ZERbWO+MuEsefrOIaGxUExYx5fXZIM="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ aiohttp meteocalc ]; diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix index 19226a93f7a6..2888e84c92ac 100644 --- a/pkgs/development/python-modules/aioesphomeapi/default.nix +++ b/pkgs/development/python-modules/aioesphomeapi/default.nix @@ -26,7 +26,7 @@ buildPythonPackage rec { pname = "aioesphomeapi"; - version = "29.2.0"; + version = "29.3.1"; pyproject = true; disabled = pythonOlder "3.9"; @@ -35,7 +35,7 @@ buildPythonPackage rec { owner = "esphome"; repo = "aioesphomeapi"; tag = "v${version}"; - hash = "sha256-NK83VZBBMLBkQOb7Z4yVL6GImdNspgF9YIAy8HlktrA="; + hash = "sha256-Gv3uM3ZKxcU5BA8HfzHJqTEODM8sfcKbLGfk96yb8u4="; }; build-system = [ diff --git a/pkgs/development/python-modules/aiohomeconnect/default.nix b/pkgs/development/python-modules/aiohomeconnect/default.nix index bdc17b592c98..fbcbf4109c10 100644 --- a/pkgs/development/python-modules/aiohomeconnect/default.nix +++ b/pkgs/development/python-modules/aiohomeconnect/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "aiohomeconnect"; - version = "0.16.0"; + version = "0.16.2"; pyproject = true; disabled = pythonOlder "3.11"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "MartinHjelmare"; repo = "aiohomeconnect"; tag = "v${version}"; - hash = "sha256-xnihwHtU39OQDk/DgUXkUy6/4GrlFLgjK2via7ELedU="; + hash = "sha256-AlmlZoqQxd4RE667rBYFzyAhFN9GJ0Rmk1lniDZKRnM="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/aiohue/default.nix b/pkgs/development/python-modules/aiohue/default.nix index 0cf7dcaa5b65..80fb02ce03ad 100644 --- a/pkgs/development/python-modules/aiohue/default.nix +++ b/pkgs/development/python-modules/aiohue/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "aiohue"; - version = "4.7.3"; + version = "4.7.4"; pyproject = true; disabled = pythonOlder "3.11"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = "aiohue"; tag = version; - hash = "sha256-uS6pyJOntjbGa9UU1g53nuzgfP6AKAzN4meHrZY6Uic="; + hash = "sha256-+vvdv8/rAoMdtH6XN9tq4zOLboTuz3CqruN2KkEMv+c="; }; postPatch = '' diff --git a/pkgs/development/python-modules/aioshelly/default.nix b/pkgs/development/python-modules/aioshelly/default.nix index cf635121e312..4dc4e14023dd 100644 --- a/pkgs/development/python-modules/aioshelly/default.nix +++ b/pkgs/development/python-modules/aioshelly/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "aioshelly"; - version = "12.4.2"; + version = "13.1.0"; pyproject = true; disabled = pythonOlder "3.11"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = "aioshelly"; tag = version; - hash = "sha256-QwO1Vi69rj4tCSSkp/j3vtdV6zpgkgM33waDw7ZjApw="; + hash = "sha256-Wh4kwyNi0ql0plymkE6XM54SQug9BRvXcI0oEMI2ajA="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/aiowebdav2/default.nix b/pkgs/development/python-modules/aiowebdav2/default.nix new file mode 100644 index 000000000000..52a7bcd5a153 --- /dev/null +++ b/pkgs/development/python-modules/aiowebdav2/default.nix @@ -0,0 +1,55 @@ +{ + aiofiles, + aiohttp, + aioresponses, + buildPythonPackage, + fetchFromGitHub, + lib, + lxml, + poetry-core, + pytest-asyncio, + pytest-cov-stub, + pytestCheckHook, + python-dateutil, + yarl, +}: + +buildPythonPackage rec { + pname = "aiowebdav2"; + version = "0.3.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jpbede"; + repo = "aiowebdav2"; + tag = "v${version}"; + hash = "sha256-421c/3UYq/xtv5Zm4j2dje1KH2HOvPrVlmfMA4NX4pA="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + aiofiles + aiohttp + lxml + python-dateutil + yarl + ]; + + pythonImportsCheck = [ "aiowebdav2" ]; + + nativeCheckInputs = [ + aioresponses + pytest-asyncio + pytest-cov-stub + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/jpbede/aiowebdav2/releases/tag/${src.tag}"; + description = "Async Python 3 client for WebDAV"; + homepage = "https://github.com/jpbede/aiowebdav2"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/aiowebostv/default.nix b/pkgs/development/python-modules/aiowebostv/default.nix index 5720666d7865..8e1cd4c42d57 100644 --- a/pkgs/development/python-modules/aiowebostv/default.nix +++ b/pkgs/development/python-modules/aiowebostv/default.nix @@ -9,16 +9,16 @@ buildPythonPackage rec { pname = "aiowebostv"; - version = "0.6.2"; + version = "0.7.3"; pyproject = true; - disabled = pythonOlder "3.9"; + disabled = pythonOlder "3.11"; src = fetchFromGitHub { owner = "home-assistant-libs"; repo = "aiowebostv"; tag = "v${version}"; - hash = "sha256-H5ZhG69F5w1fZBepxqWGo29XnK3Tn6dgota64k2GJbw="; + hash = "sha256-ssoWWLGP+0WGGtvOB0Pr1LMzAOh3qK1PHA99D16azeI="; }; build-system = [ setuptools ]; @@ -33,8 +33,8 @@ buildPythonPackage rec { meta = with lib; { description = "Module to interact with LG webOS based TV devices"; homepage = "https://github.com/home-assistant-libs/aiowebostv"; - changelog = "https://github.com/home-assistant-libs/aiowebostv/releases/tag/v${version}"; - license = with licenses; [ asl20 ]; + changelog = "https://github.com/home-assistant-libs/aiowebostv/releases/tag/${src.tag}"; + license = licenses.asl20; maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/arcam-fmj/default.nix b/pkgs/development/python-modules/arcam-fmj/default.nix index e7d6d11e9708..b5c3690adb11 100644 --- a/pkgs/development/python-modules/arcam-fmj/default.nix +++ b/pkgs/development/python-modules/arcam-fmj/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "arcam-fmj"; - version = "1.8.0"; + version = "1.8.1"; pyproject = true; disabled = pythonOlder "3.8"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "elupus"; repo = "arcam_fmj"; tag = version; - hash = "sha256-G+TbZ95KiAunvzhpY6IRZy6xrBn4ceZwixZw37KB298="; + hash = "sha256-sNV2k3cbQe60Jpq1J2T6TQAz+NEyLXvS97//vXJ17TM="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/async-interrupt/default.nix b/pkgs/development/python-modules/async-interrupt/default.nix index 1e29876f17b3..5bf276c12eb6 100644 --- a/pkgs/development/python-modules/async-interrupt/default.nix +++ b/pkgs/development/python-modules/async-interrupt/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "async-interrupt"; - version = "1.2.0"; + version = "1.2.2"; pyproject = true; disabled = pythonOlder "3.9"; @@ -20,10 +20,10 @@ buildPythonPackage rec { owner = "bdraco"; repo = "async_interrupt"; tag = "v${version}"; - hash = "sha256-opV5h3aLDDpjlRZRZ9OnrPjUOf/i7g+B9T6msk8wtgI="; + hash = "sha256-M0ftyHstBP7+6M2b6yV33mSuO4B8QF3ixRvNJ/WeSEA="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; nativeCheckInputs = [ pytest-asyncio @@ -36,7 +36,7 @@ buildPythonPackage rec { meta = with lib; { description = "Context manager to raise an exception when a future is done"; homepage = "https://github.com/bdraco/async_interrupt"; - changelog = "https://github.com/bdraco/async_interrupt/blob/${version}/CHANGELOG.md"; + changelog = "https://github.com/bdraco/async_interrupt/blob/${src.tag}/CHANGELOG.md"; license = licenses.asl20; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/bleak-esphome/default.nix b/pkgs/development/python-modules/bleak-esphome/default.nix index 9971fa3d41b7..3bac922334ff 100644 --- a/pkgs/development/python-modules/bleak-esphome/default.nix +++ b/pkgs/development/python-modules/bleak-esphome/default.nix @@ -2,6 +2,7 @@ lib, aioesphomeapi, bleak, + bleak-retry-connector, bluetooth-data-tools, buildPythonPackage, fetchFromGitHub, @@ -12,21 +13,18 @@ pytest-codspeed, pytest-cov-stub, pytestCheckHook, - pythonOlder, }: buildPythonPackage rec { pname = "bleak-esphome"; - version = "2.7.1"; + version = "2.9.0"; pyproject = true; - disabled = pythonOlder "3.10"; - src = fetchFromGitHub { owner = "bluetooth-devices"; repo = "bleak-esphome"; tag = "v${version}"; - hash = "sha256-AZkSWBMyTl2NgqmhVG4sE/N1AQGd6x4CZVYMgRKxlOQ="; + hash = "sha256-KuaaZXABR/jbC9ZNbVOyrezUZzb6w7Tn7s3VuVuAtfI="; }; build-system = [ poetry-core ]; @@ -34,6 +32,7 @@ buildPythonPackage rec { dependencies = [ aioesphomeapi bleak + bleak-retry-connector bluetooth-data-tools habluetooth lru-dict diff --git a/pkgs/development/python-modules/bleak-retry-connector/default.nix b/pkgs/development/python-modules/bleak-retry-connector/default.nix index aecce4c13171..9d18f221997c 100644 --- a/pkgs/development/python-modules/bleak-retry-connector/default.nix +++ b/pkgs/development/python-modules/bleak-retry-connector/default.nix @@ -1,6 +1,5 @@ { lib, - async-timeout, bleak, bluetooth-adapters, dbus-fast, @@ -8,29 +7,25 @@ fetchFromGitHub, poetry-core, pytestCheckHook, - pythonOlder, pytest-asyncio, pytest-cov-stub, }: buildPythonPackage rec { pname = "bleak-retry-connector"; - version = "3.8.1"; + version = "3.9.0"; pyproject = true; - disabled = pythonOlder "3.7"; - src = fetchFromGitHub { owner = "Bluetooth-Devices"; repo = "bleak-retry-connector"; tag = "v${version}"; - hash = "sha256-Vkmn+CKQm+i+MRx12U6AmDGUyhtagoXbpeC/uou311o="; + hash = "sha256-weZ44YhbCoDRByzta/tkl1maEuxewS+53jxFRDHK6so="; }; build-system = [ poetry-core ]; dependencies = [ - async-timeout bleak bluetooth-adapters dbus-fast @@ -42,13 +37,6 @@ buildPythonPackage rec { pytestCheckHook ]; - disabledTests = [ - # broken mocking - "test_establish_connection_can_cache_services_services_missing" - "test_establish_connection_with_dangerous_use_cached_services" - "test_establish_connection_without_dangerous_use_cached_services" - ]; - pythonImportsCheck = [ "bleak_retry_connector" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix index f1f3ad0d8da8..068bcb17b089 100644 --- a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix +++ b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix @@ -7,6 +7,8 @@ fetchFromGitHub, poetry-core, pyric, + pytest-asyncio, + pytest-cov-stub, pytestCheckHook, pythonOlder, usb-devices, @@ -14,7 +16,7 @@ buildPythonPackage rec { pname = "bluetooth-auto-recovery"; - version = "1.4.2"; + version = "1.4.4"; pyproject = true; disabled = pythonOlder "3.9"; @@ -23,14 +25,9 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = "bluetooth-auto-recovery"; tag = "v${version}"; - hash = "sha256-JaFazXjbHohj4+rPkQA/SaBP0irHrre3vaCqz7T2bwE="; + hash = "sha256-Sm3VLgWttMVXH+s1m1ab8kE6dHPit0GY4FVAld5Yg88="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace-fail " --cov=bluetooth_auto_recovery --cov-report=term-missing:skip-covered" "" - ''; - build-system = [ poetry-core ]; dependencies = [ @@ -41,7 +38,11 @@ buildPythonPackage rec { usb-devices ]; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytest-asyncio + pytest-cov-stub + pytestCheckHook + ]; pythonImportsCheck = [ "bluetooth_auto_recovery" ]; diff --git a/pkgs/development/python-modules/cached-ipaddress/default.nix b/pkgs/development/python-modules/cached-ipaddress/default.nix index 7ee7b44c66e1..4ef791086c42 100644 --- a/pkgs/development/python-modules/cached-ipaddress/default.nix +++ b/pkgs/development/python-modules/cached-ipaddress/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "cached-ipaddress"; - version = "0.8.0"; + version = "0.9.2"; pyproject = true; disabled = pythonOlder "3.8"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "bdraco"; repo = "cached-ipaddress"; tag = "v${version}"; - hash = "sha256-VD5z9lKECglx77VYDUeI4iD6mbncSutSlavxY+f3OVo="; + hash = "sha256-ojPza3DeeAJgUO0OS1J5YXTtzNWqLUf6YiOG9hohc+A="; }; build-system = [ diff --git a/pkgs/development/python-modules/deebot-client/default.nix b/pkgs/development/python-modules/deebot-client/default.nix index 0eb3f5f8e8c6..7e16ff52bdab 100644 --- a/pkgs/development/python-modules/deebot-client/default.nix +++ b/pkgs/development/python-modules/deebot-client/default.nix @@ -7,8 +7,6 @@ defusedxml, docker, fetchFromGitHub, - numpy, - pillow, pkg-config, pycountry, pytest-asyncio, @@ -16,7 +14,6 @@ pytestCheckHook, pythonOlder, rustPlatform, - svg-py, testfixtures, xz, }: @@ -26,7 +23,7 @@ buildPythonPackage rec { version = "12.3.1"; pyproject = true; - disabled = pythonOlder "3.12"; + disabled = pythonOlder "3.13"; src = fetchFromGitHub { owner = "DeebotUniverse"; @@ -45,13 +42,12 @@ buildPythonPackage rec { "defusedxml" ]; - build-system = with rustPlatform; [ - cargoSetupHook - maturinBuildHook + nativeBuildInputs = [ + pkg-config + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook ]; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ xz ]; dependencies = [ @@ -59,9 +55,6 @@ buildPythonPackage rec { aiomqtt cachetools defusedxml - numpy - pillow - svg-py ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/eq3btsmart/default.nix b/pkgs/development/python-modules/eq3btsmart/default.nix index daba1c5a0322..bb1e3ec388fe 100644 --- a/pkgs/development/python-modules/eq3btsmart/default.nix +++ b/pkgs/development/python-modules/eq3btsmart/default.nix @@ -4,7 +4,6 @@ fetchFromGitHub, setuptools, bleak, - construct, construct-typing, pytest-asyncio, pytestCheckHook, @@ -26,7 +25,6 @@ buildPythonPackage rec { dependencies = [ bleak - construct construct-typing ]; diff --git a/pkgs/development/python-modules/evohome-async/default.nix b/pkgs/development/python-modules/evohome-async/default.nix index 5abef0b5a32c..b60be7391dca 100644 --- a/pkgs/development/python-modules/evohome-async/default.nix +++ b/pkgs/development/python-modules/evohome-async/default.nix @@ -1,45 +1,69 @@ { lib, + aiofiles, aiohttp, + aioresponses, + aiozoneinfo, + asyncclick, buildPythonPackage, - click, + debugpy, fetchFromGitHub, hatchling, + pytest-asyncio, + pytest-freezer, + pytestCheckHook, pythonOlder, + pyyaml, + syrupy, voluptuous, }: buildPythonPackage rec { pname = "evohome-async"; - version = "0.4.21"; + version = "1.0.2"; pyproject = true; - disabled = pythonOlder "3.11"; + disabled = pythonOlder "3.12"; src = fetchFromGitHub { owner = "zxdavb"; repo = "evohome-async"; tag = version; - hash = "sha256-+tBqyg7E9wRC6oHq6Fv2vzIGtrHqZp8w/3x/xbacqWI="; + hash = "sha256-CpN0QAlUqCDy6hNkuNvbjQUee40BA0UqAleR+Omm9bA="; }; - nativeBuildInputs = [ hatchling ]; + build-system = [ hatchling ]; - propagatedBuildInputs = [ + dependencies = [ aiohttp - click + aiozoneinfo voluptuous ]; - # Project has no tests - doCheck = false; + optional-dependencies = { + cli = [ + aiofiles + asyncclick + debugpy + ]; + }; + + nativeCheckInputs = [ + aioresponses + pytest-asyncio + pytest-freezer + pytestCheckHook + pyyaml + syrupy + ] ++ optional-dependencies.cli; pythonImportsCheck = [ "evohomeasync2" ]; meta = with lib; { description = "Python client for connecting to Honeywell's TCC RESTful API"; homepage = "https://github.com/zxdavb/evohome-async"; - license = with licenses; [ asl20 ]; + changelog = "https://github.com/zxdavb/evohome-async/releases/tag/${version}"; + license = licenses.asl20; maintainers = with maintainers; [ fab ]; mainProgram = "evo-client"; }; diff --git a/pkgs/development/python-modules/fnv-hash-fast/default.nix b/pkgs/development/python-modules/fnv-hash-fast/default.nix index 563d2f8978b3..32e11527ce19 100644 --- a/pkgs/development/python-modules/fnv-hash-fast/default.nix +++ b/pkgs/development/python-modules/fnv-hash-fast/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "fnv-hash-fast"; - version = "1.2.3"; + version = "1.2.6"; pyproject = true; src = fetchFromGitHub { owner = "bdraco"; repo = "fnv-hash-fast"; tag = "v${version}"; - hash = "sha256-x1NiDHqXJb2tbsWBFS1xR+gM4LLpbCc6E8w1kTObSWA="; + hash = "sha256-u4DKOJcE/0bRZ+0kcdVoDx7e4HOA4VH8V0DzxQ/SZCo="; }; build-system = [ diff --git a/pkgs/development/python-modules/google-genai/default.nix b/pkgs/development/python-modules/google-genai/default.nix new file mode 100644 index 000000000000..195db83d3cb9 --- /dev/null +++ b/pkgs/development/python-modules/google-genai/default.nix @@ -0,0 +1,54 @@ +{ + buildPythonPackage, + fetchFromGitHub, + google-auth, + httpx, + lib, + pydantic, + pytestCheckHook, + requests, + setuptools, + typing-extensions, + websockets, +}: + +buildPythonPackage rec { + pname = "google-genai"; + version = "1.4.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "googleapis"; + repo = "python-genai"; + tag = "v${version}"; + hash = "sha256-aVn23g67PW3Qge6ZI0lFoozdoWVRrISy29k4uvBKTBQ="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + google-auth + httpx + pydantic + requests + typing-extensions + websockets + ]; + + pythonImportsCheck = [ "google.genai" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + # ValueError: GOOGLE_GENAI_REPLAYS_DIRECTORY environment variable is not set + doCheck = false; + + meta = { + changelog = "https://github.com/googleapis/python-genai/blob/${src.tag}/CHANGELOG.md"; + description = "Google Generative AI Python SDK"; + homepage = "https://github.com/googleapis/python-genai"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/google-nest-sdm/default.nix b/pkgs/development/python-modules/google-nest-sdm/default.nix index e30c7b93bf22..cf9dec089924 100644 --- a/pkgs/development/python-modules/google-nest-sdm/default.nix +++ b/pkgs/development/python-modules/google-nest-sdm/default.nix @@ -12,22 +12,23 @@ pytest-asyncio, pytestCheckHook, pythonOlder, + pyyaml, requests-oauthlib, setuptools, }: buildPythonPackage rec { pname = "google-nest-sdm"; - version = "7.1.3"; + version = "7.1.4"; pyproject = true; - disabled = pythonOlder "3.10"; + disabled = pythonOlder "3.11"; src = fetchFromGitHub { owner = "allenporter"; repo = "python-google-nest-sdm"; tag = version; - hash = "sha256-iVdFl90nP2U5KGqFPvS7qHgSUQjlKnbfZTLq42y/Mrc="; + hash = "sha256-wE28+GqZGIhg/+JOnyn2hXw5ia0yg3RLywb1PqgkXw0="; }; build-system = [ setuptools ]; @@ -38,6 +39,7 @@ buildPythonPackage rec { google-auth-oauthlib google-cloud-pubsub mashumaro + pyyaml requests-oauthlib ]; @@ -55,8 +57,6 @@ buildPythonPackage rec { disabledTests = [ "test_clip_preview_transcode" "test_event_manager_event_expiration_with_transcode" - # AssertionError: assert '12345' == 12345 - "test_info_traits_type_error" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/habluetooth/default.nix b/pkgs/development/python-modules/habluetooth/default.nix index 98d59951661a..3e0c613357f0 100644 --- a/pkgs/development/python-modules/habluetooth/default.nix +++ b/pkgs/development/python-modules/habluetooth/default.nix @@ -21,7 +21,7 @@ buildPythonPackage rec { pname = "habluetooth"; - version = "3.21.1"; + version = "3.24.1"; pyproject = true; disabled = pythonOlder "3.11"; @@ -30,7 +30,7 @@ buildPythonPackage rec { owner = "Bluetooth-Devices"; repo = "habluetooth"; tag = "v${version}"; - hash = "sha256-r7pDQ0CoLXpiIMPi0SA/gHByKhFzkEhGCiS52bvhT4c="; + hash = "sha256-/aLldKbww60XRmTtGd7zTt1KCk7OZsHzJ74vhM215Vk="; }; build-system = [ diff --git a/pkgs/development/python-modules/home-assistant-bluetooth/default.nix b/pkgs/development/python-modules/home-assistant-bluetooth/default.nix index 881ffeec97a6..4fe4e650fc12 100644 --- a/pkgs/development/python-modules/home-assistant-bluetooth/default.nix +++ b/pkgs/development/python-modules/home-assistant-bluetooth/default.nix @@ -5,7 +5,6 @@ pythonOlder, # build-system - cython, poetry-core, setuptools, @@ -14,12 +13,13 @@ # tests bleak, + pytest-cov-stub, pytestCheckHook, }: buildPythonPackage rec { pname = "home-assistant-bluetooth"; - version = "1.13.0"; + version = "1.13.1"; pyproject = true; disabled = pythonOlder "3.11"; @@ -28,16 +28,10 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = "home-assistant-bluetooth"; tag = "v${version}"; - hash = "sha256-+2bw4im09TyjJ5/7ct42ZCFwU7yKWQnbSo7b+44VtpE="; + hash = "sha256-piX812Uzd2F8A8+IF/17N+xy6ENpfRVJ1BxsAxL5aj0="; }; - postPatch = '' - # drop pytest parametrization (coverage, etc.) - sed -i '/addopts/d' pyproject.toml - ''; - build-system = [ - cython poetry-core setuptools ]; @@ -46,16 +40,17 @@ buildPythonPackage rec { nativeCheckInputs = [ bleak + pytest-cov-stub pytestCheckHook ]; pythonImportsCheck = [ "home_assistant_bluetooth" ]; - meta = with lib; { + meta = { description = "Basic bluetooth models used by Home Assistant"; - changelog = "https://github.com/home-assistant-libs/home-assistant-bluetooth/blob/v${version}/CHANGELOG.md"; + changelog = "https://github.com/home-assistant-libs/home-assistant-bluetooth/blob/${src.tag}/CHANGELOG.md"; homepage = "https://github.com/home-assistant-libs/home-assistant-bluetooth"; - license = licenses.asl20; - maintainers = teams.home-assistant.members; + license = lib.licenses.asl20; + maintainers = lib.teams.home-assistant.members; }; } diff --git a/pkgs/development/python-modules/iometer/default.nix b/pkgs/development/python-modules/iometer/default.nix new file mode 100644 index 000000000000..270e11b35060 --- /dev/null +++ b/pkgs/development/python-modules/iometer/default.nix @@ -0,0 +1,51 @@ +{ + aiohttp, + aioresponses, + buildPythonPackage, + fetchFromGitHub, + lib, + poetry-core, + pytest-asyncio, + pytestCheckHook, + yarl, +}: + +buildPythonPackage rec { + pname = "iometer"; + version = "0.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "iometer-gmbh"; + repo = "iometer.py"; + tag = "v${version}"; + hash = "sha256-+Ox9FlS2mswCt2jaJfKuvt21byjUrnCYp3vcv1D83Rs="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + aiohttp + yarl + ]; + + pythonImportsCheck = [ "iometer" ]; + + nativeCheckInputs = [ + aioresponses + pytest-asyncio + pytestCheckHook + ]; + + pytestFlagsArray = [ + "tests/test.py" + ]; + + meta = { + changelog = "https://github.com/iometer-gmbh/iometer.py/releases/tag/${src.tag}"; + description = "Python client for interacting with IOmeter devices over HTTP"; + homepage = "https://github.com/iometer-gmbh/iometer.py"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/music-assistant-client/default.nix b/pkgs/development/python-modules/music-assistant-client/default.nix index a8bf7e2beb41..a2f25196d412 100644 --- a/pkgs/development/python-modules/music-assistant-client/default.nix +++ b/pkgs/development/python-modules/music-assistant-client/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "music-assistant-client"; - version = "1.0.8"; + version = "1.1.1"; pyproject = true; src = fetchFromGitHub { owner = "music-assistant"; repo = "client"; - rev = version; - hash = "sha256-QE2PQeXCAq7+iMomCZK+UmrPUApJxwKi/pzCaLJVS/4="; + tag = version; + hash = "sha256-KAvNPG3gMJK/iWqen35UCmSccjOkvfrmMvx4YkrOPy8="; }; postPatch = '' @@ -32,8 +32,6 @@ buildPythonPackage rec { build-system = [ setuptools ]; - pythonRelaxDeps = [ "music-assistant-models" ]; - dependencies = [ aiohttp music-assistant-models @@ -49,7 +47,7 @@ buildPythonPackage rec { meta = { description = "Python client to interact with the Music Assistant Server API"; homepage = "https://github.com/music-assistant/client"; - changelog = "https://github.com/music-assistant/client/blob/${src.rev}/CHANGELOG.md"; + changelog = "https://github.com/music-assistant/client/blob/${src.tag}/CHANGELOG.md"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ ]; }; diff --git a/pkgs/development/python-modules/music-assistant-models/default.nix b/pkgs/development/python-modules/music-assistant-models/default.nix index c1634a547b21..8ade60f250bd 100644 --- a/pkgs/development/python-modules/music-assistant-models/default.nix +++ b/pkgs/development/python-modules/music-assistant-models/default.nix @@ -20,14 +20,14 @@ buildPythonPackage rec { pname = "music-assistant-models"; - version = "1.1.3"; # Must be compatible with music-assistant-client package + version = "1.1.30"; # Must be compatible with music-assistant-client package pyproject = true; src = fetchFromGitHub { owner = "music-assistant"; repo = "models"; - tag = "v${version}"; - hash = "sha256-FbnwUfAwCwwBKqEUtb2ZBxHehFwJdr9YkuWKox018BY="; + tag = version; + hash = "sha256-ZLTRHarjVFAk+tYPkgLm192rE+C82vNzqs8PmJhGSeg="; }; postPatch = '' diff --git a/pkgs/development/python-modules/nexia/default.nix b/pkgs/development/python-modules/nexia/default.nix index de973027754f..c76c757fcd91 100644 --- a/pkgs/development/python-modules/nexia/default.nix +++ b/pkgs/development/python-modules/nexia/default.nix @@ -4,6 +4,7 @@ buildPythonPackage, orjson, fetchFromGitHub, + propcache, pytest-asyncio, pytestCheckHook, pythonOlder, @@ -13,7 +14,7 @@ buildPythonPackage rec { pname = "nexia"; - version = "2.1.0"; + version = "2.2.1"; pyproject = true; disabled = pythonOlder "3.9"; @@ -22,19 +23,15 @@ buildPythonPackage rec { owner = "bdraco"; repo = "nexia"; tag = version; - hash = "sha256-bW3eFPs7sX3Z5ZH87orIg0HICXQiFtLqyLKFgpSCzJ0="; + hash = "sha256-4UcyCyqK5sEoQNaAWnD+FIEjA+56NKez5wXCQMO8esM="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace '"setuptools>=75.8.0"' "" - ''; - build-system = [ setuptools ]; dependencies = [ - orjson aiohttp + orjson + propcache ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/nhc/default.nix b/pkgs/development/python-modules/nhc/default.nix index 6fa33ef431a2..b423f09080c2 100644 --- a/pkgs/development/python-modules/nhc/default.nix +++ b/pkgs/development/python-modules/nhc/default.nix @@ -2,28 +2,23 @@ buildPythonPackage, fetchFromGitHub, lib, - nclib, setuptools, }: buildPythonPackage rec { pname = "nhc"; - version = "0.3.9"; + version = "0.4.10"; pyproject = true; src = fetchFromGitHub { owner = "vandeurenglenn"; repo = "nhc"; tag = "v${version}"; - hash = "sha256-OoWRAELy6w+LVfhBJyKReQUYD/yr4POFH+ScOgp3xyU="; + hash = "sha256-oweR7SX8ltL49JJJK3yRNnXL952kEbcLVnmIYXRcLUA="; }; build-system = [ setuptools ]; - dependencies = [ - nclib - ]; - pythonImportsCheck = [ "nhc" ]; # upstream has no test diff --git a/pkgs/development/python-modules/ohme/default.nix b/pkgs/development/python-modules/ohme/default.nix index 8e66c9b1f6c9..c5acfd230ef5 100644 --- a/pkgs/development/python-modules/ohme/default.nix +++ b/pkgs/development/python-modules/ohme/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "ohme"; - version = "1.2.9"; + version = "1.3.2"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "dan-r"; repo = "ohmepy"; tag = "v${version}"; - hash = "sha256-wsYANCe32LG2rAWhMt8x51pHVTZVcgR+0aBTjY56tnE="; + hash = "sha256-d4d/3/2c8ML/V06kT5iTHavTEDdobZdvNdynSvIFr14="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/onedrive-personal-sdk/default.nix b/pkgs/development/python-modules/onedrive-personal-sdk/default.nix index 53bd78b822fa..635ec7a857aa 100644 --- a/pkgs/development/python-modules/onedrive-personal-sdk/default.nix +++ b/pkgs/development/python-modules/onedrive-personal-sdk/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "onedrive-personal-sdk"; - version = "0.0.11"; + version = "0.0.13"; pyproject = true; src = fetchFromGitHub { owner = "zweckj"; repo = "onedrive-personal-sdk"; tag = "v${version}"; - hash = "sha256-4/v1kAgpg/D7HPTirS+HBs46Vs/OK81MzUW8ixhzU+Y="; + hash = "sha256-uR3uqMgRGY3KNWZtNO2OIM2/LcZKyeWvhnFuQvmgPrE="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/paho-mqtt/1.nix b/pkgs/development/python-modules/paho-mqtt/1.nix deleted file mode 100644 index 437f7899fad0..000000000000 --- a/pkgs/development/python-modules/paho-mqtt/1.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - lib, - stdenv, - buildPythonPackage, - fetchFromGitHub, - isPy3k, - pytestCheckHook, - mock, - six, -}: - -buildPythonPackage rec { - pname = "paho-mqtt"; - version = "1.6.1"; - format = "setuptools"; - - src = fetchFromGitHub { - owner = "eclipse"; - repo = "paho.mqtt.python"; - rev = "v${version}"; - hash = "sha256-9nH6xROVpmI+iTKXfwv2Ar1PAmWbEunI3HO0pZyK6Rg="; - }; - - nativeCheckInputs = [ - pytestCheckHook - six - ] ++ lib.optionals (!isPy3k) [ mock ]; - - doCheck = !stdenv.hostPlatform.isDarwin; - - pythonImportsCheck = [ "paho.mqtt" ]; - - meta = with lib; { - description = "MQTT version 3.1.1 client class"; - homepage = "https://eclipse.org/paho"; - license = licenses.epl10; - maintainers = with maintainers; [ - mog - dotlambda - ]; - }; -} diff --git a/pkgs/development/python-modules/plugwise/default.nix b/pkgs/development/python-modules/plugwise/default.nix index 9254d9e17962..f74c9758604d 100644 --- a/pkgs/development/python-modules/plugwise/default.nix +++ b/pkgs/development/python-modules/plugwise/default.nix @@ -17,16 +17,16 @@ buildPythonPackage rec { pname = "plugwise"; - version = "1.6.4"; + version = "1.7.2"; pyproject = true; - disabled = pythonOlder "3.11"; + disabled = pythonOlder "3.12"; src = fetchFromGitHub { owner = "plugwise"; repo = "python-plugwise"; tag = "v${version}"; - hash = "sha256-mzMa+i+DESgOo67SIUBofeY+KoEWdFCcNac7oqEZFgU="; + hash = "sha256-WuEVLpFQlPiCYNbAGy3IIOmcbm9MertEQ4tlbd/8OqQ="; }; postPatch = '' @@ -58,7 +58,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python module for Plugwise Smiles, Stretch and USB stick"; homepage = "https://github.com/plugwise/python-plugwise"; - changelog = "https://github.com/plugwise/python-plugwise/releases/tag/v${version}"; + changelog = "https://github.com/plugwise/python-plugwise/releases/tag/${src.tag}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/py-synologydsm-api/default.nix b/pkgs/development/python-modules/py-synologydsm-api/default.nix index f269875ec423..b3b33cfc4bd6 100644 --- a/pkgs/development/python-modules/py-synologydsm-api/default.nix +++ b/pkgs/development/python-modules/py-synologydsm-api/default.nix @@ -2,6 +2,7 @@ lib, aiofiles, aiohttp, + awesomeversion, buildPythonPackage, fetchFromGitHub, pytest-asyncio, @@ -12,7 +13,7 @@ buildPythonPackage rec { pname = "py-synologydsm-api"; - version = "2.6.3"; + version = "2.7.0"; pyproject = true; disabled = pythonOlder "3.9"; @@ -21,7 +22,7 @@ buildPythonPackage rec { owner = "mib1185"; repo = "py-synologydsm-api"; tag = "v${version}"; - hash = "sha256-BkkI2dhzf58vBoT6UhBsn6MyS7KvYo70C80ZLGOJG08="; + hash = "sha256-Zou0l/t9dWls2GKxcU3SDPxb0RaI2emyg07xLyengDo="; }; build-system = [ setuptools ]; @@ -29,6 +30,7 @@ buildPythonPackage rec { dependencies = [ aiofiles aiohttp + awesomeversion ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/pybalboa/default.nix b/pkgs/development/python-modules/pybalboa/default.nix index ce28b27dc7c5..e00186809690 100644 --- a/pkgs/development/python-modules/pybalboa/default.nix +++ b/pkgs/development/python-modules/pybalboa/default.nix @@ -2,33 +2,39 @@ lib, buildPythonPackage, fetchFromGitHub, - pythonOlder, poetry-core, + poetry-dynamic-versioning, + pytest-asyncio, + pytestCheckHook, }: buildPythonPackage rec { pname = "pybalboa"; - version = "1.0.2"; - format = "pyproject"; - - disabled = pythonOlder "3.8"; + version = "1.1.3"; + pyproject = true; src = fetchFromGitHub { owner = "garbled1"; - repo = pname; - tag = version; - hash = "sha256-rSY6kU7F9ybpPXcmTM2WBazjb9tI2+8dG56pjrRXcKg="; + repo = "pybalboa"; + # missing tag: https://github.com/garbled1/pybalboa/issues/100 + rev = "6aa7e3c401ab03b93c083acdf430afb708e20e9b"; + hash = "sha256-xOMbMmTTDDbd0WL0LFJ6lztsQMdI/r9MLhV9DmB6m3I="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ + poetry-core + poetry-dynamic-versioning + ]; - # Project has no tests - doCheck = false; + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + ]; pythonImportsCheck = [ "pybalboa" ]; meta = with lib; { - description = " Python module to interface with a Balboa Spa"; + description = "Module to communicate with a Balboa spa wifi adapter"; homepage = "https://github.com/garbled1/pybalboa"; changelog = "https://github.com/garbled1/pybalboa/releases/tag/${version}"; license = licenses.asl20; diff --git a/pkgs/development/python-modules/pyfronius/default.nix b/pkgs/development/python-modules/pyfronius/default.nix index 01d22fb7be14..bd19730b8078 100644 --- a/pkgs/development/python-modules/pyfronius/default.nix +++ b/pkgs/development/python-modules/pyfronius/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "pyfronius"; - version = "0.7.5"; + version = "0.7.6"; pyproject = true; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "nielstron"; repo = "pyfronius"; tag = version; - hash = "sha256-dwqFT6UuXYTTaJxDTe5sH8FJxANw6pJakOadHplBFog="; + hash = "sha256-zyRcMueKZbk2QWhF3d500NUpvljikO8fsDnePy6Tq90="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pypglab/default.nix b/pkgs/development/python-modules/pypglab/default.nix new file mode 100644 index 000000000000..12048ddc0a4d --- /dev/null +++ b/pkgs/development/python-modules/pypglab/default.nix @@ -0,0 +1,40 @@ +{ + buildPythonPackage, + fetchFromGitHub, + hatchling, + lib, + paho-mqtt, + voluptuous, +}: + +buildPythonPackage rec { + pname = "pypglab"; + version = "0.0.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "pglab-electronics"; + repo = "pypglab"; + tag = version; + hash = "sha256-b+o98DrTK1HBKvRfTjdJ1MkdUHEg/TaQZhoLR7URZ0c="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + voluptuous + paho-mqtt + ]; + + pythonImportsCheck = [ "pypglab" ]; + + # tests require physical hardware + doCheck = false; + + meta = { + description = "Asynchronous Python library to communicate with PG LAB Electronics devices over MQTT"; + homepage = "https://github.com/pglab-electronics/pypglab"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pyrisco/default.nix b/pkgs/development/python-modules/pyrisco/default.nix index 885c5edb35c6..545260213653 100644 --- a/pkgs/development/python-modules/pyrisco/default.nix +++ b/pkgs/development/python-modules/pyrisco/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "pyrisco"; - version = "0.6.6"; + version = "0.6.7"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "OnFreund"; repo = "pyrisco"; tag = "v${version}"; - hash = "sha256-iPtrpxssDEZTlxGtZ0xa1pfzN7wQu1gcQUl4zXPBhm8="; + hash = "sha256-mZzTFISw2CzGu6AhXSt6LtbXuKqCTc6B6wNKnI3pA4o="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pysmartthings/default.nix b/pkgs/development/python-modules/pysmartthings/default.nix index dfcfeb1755c8..77dbce1895c9 100644 --- a/pkgs/development/python-modules/pysmartthings/default.nix +++ b/pkgs/development/python-modules/pysmartthings/default.nix @@ -1,40 +1,51 @@ { lib, aiohttp, + aioresponses, + aiosseclient, buildPythonPackage, fetchFromGitHub, + mashumaro, + orjson, + poetry-core, pytest-asyncio, + pytest-cov-stub, pytestCheckHook, pythonOlder, + syrupy, + yarl, }: buildPythonPackage rec { pname = "pysmartthings"; - version = "0.7.8"; - format = "setuptools"; + version = "2.5.0"; + pyproject = true; - disabled = pythonOlder "3.8"; + disabled = pythonOlder "3.12"; src = fetchFromGitHub { owner = "andrewsayre"; - repo = pname; - rev = version; - hash = "sha256-r+f2+vEXJdQGDlbs/MhraFgEmsAf32PU282blLRLjzc="; + repo = "pysmartthings"; + rev = "v${version}"; + hash = "sha256-0D0si3VBGtnQ8+kUKiquPo/IJXeBgR7SFc/1nxhiPvw="; }; - postPatch = '' - substituteInPlace setup.py \ - --replace "aiohttp>=3.8.0,<4.0.0" "aiohttp<=4.0.0" - ''; + build-system = [ poetry-core ]; - propagatedBuildInputs = [ aiohttp ]; - - # https://github.com/andrewsayre/pysmartthings/issues/80 - doCheck = lib.versionOlder aiohttp.version "3.9.0"; + dependencies = [ + aiohttp + aiosseclient + mashumaro + orjson + yarl + ]; nativeCheckInputs = [ + aioresponses pytest-asyncio + pytest-cov-stub pytestCheckHook + syrupy ]; pythonImportsCheck = [ "pysmartthings" ]; @@ -42,7 +53,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python library for interacting with the SmartThings cloud API"; homepage = "https://github.com/andrewsayre/pysmartthings"; - changelog = "https://github.com/andrewsayre/pysmartthings/releases/tag/${version}"; + changelog = "https://github.com/andrewsayre/pysmartthings/releases/tag/v${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/pysmhi/default.nix b/pkgs/development/python-modules/pysmhi/default.nix new file mode 100644 index 000000000000..6e07d4b89cd2 --- /dev/null +++ b/pkgs/development/python-modules/pysmhi/default.nix @@ -0,0 +1,49 @@ +{ + aiohttp, + aresponses, + buildPythonPackage, + fetchFromGitHub, + freezegun, + lib, + poetry-core, + pytest-cov-stub, + pytestCheckHook, + syrupy, +}: + +buildPythonPackage rec { + pname = "pysmhi"; + version = "1.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "gjohansson-ST"; + repo = "pysmhi"; + tag = "v${version}"; + hash = "sha256-QwL4WkKrp1CWvJQK/H0iua2Eupe3FvZ4WkYV8OtONhI="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + aiohttp + ]; + + pythonImportsCheck = [ "pysmhi" ]; + + nativeCheckInputs = [ + aresponses + freezegun + pytest-cov-stub + pytestCheckHook + syrupy + ]; + + meta = { + changelog = "https://github.com/gjohansson-ST/pysmhi/releases/tag/${src.tag}"; + description = "Retrieve open data from SMHI api"; + homepage = "https://github.com/gjohansson-ST/pysmhi"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pysmlight/default.nix b/pkgs/development/python-modules/pysmlight/default.nix index 343c02851979..cc8796ca4456 100644 --- a/pkgs/development/python-modules/pysmlight/default.nix +++ b/pkgs/development/python-modules/pysmlight/default.nix @@ -2,6 +2,7 @@ aiohttp, aiohttp-sse-client2, aresponses, + awesomeversion, buildPythonPackage, fetchFromGitHub, lib, @@ -13,14 +14,14 @@ buildPythonPackage rec { pname = "pysmlight"; - version = "0.1.7"; + version = "0.2.3"; pyproject = true; src = fetchFromGitHub { owner = "smlight-tech"; repo = "pysmlight"; tag = "v${version}"; - hash = "sha256-gEqsCHe8U1p1uKarCzzppFAKC5OGNUJk/Hif5VXnojw="; + hash = "sha256-9aJ69t+zuWsmU9JIYgz12DRxFkhUCrrA0lBaUFbsEVM="; }; build-system = [ poetry-core ]; @@ -28,6 +29,7 @@ buildPythonPackage rec { dependencies = [ aiohttp aiohttp-sse-client2 + awesomeversion mashumaro ]; diff --git a/pkgs/development/python-modules/python-picnic-api/default.nix b/pkgs/development/python-modules/python-picnic-api/default.nix deleted file mode 100644 index 5267f99587c0..000000000000 --- a/pkgs/development/python-modules/python-picnic-api/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchPypi, - requests, -}: - -buildPythonPackage rec { - pname = "python-picnic-api"; - version = "1.1.0"; - format = "setuptools"; - - src = fetchPypi { - inherit pname version; - sha256 = "1axqw4bs3wa9mdac35h7r25v3i5g7v55cvyy48c4sg31dxnr4wcp"; - }; - - propagatedBuildInputs = [ requests ]; - - # Project doesn't ship tests - # https://github.com/MikeBrink/python-picnic-api/issues/13 - doCheck = false; - - pythonImportsCheck = [ "python_picnic_api" ]; - - meta = with lib; { - description = "Python wrapper for the Picnic API"; - homepage = "https://github.com/MikeBrink/python-picnic-api"; - license = with licenses; [ asl20 ]; - maintainers = with maintainers; [ fab ]; - }; -} diff --git a/pkgs/development/python-modules/python-picnic-api2/default.nix b/pkgs/development/python-modules/python-picnic-api2/default.nix new file mode 100644 index 000000000000..aea6359f8abc --- /dev/null +++ b/pkgs/development/python-modules/python-picnic-api2/default.nix @@ -0,0 +1,54 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + poetry-core, + pytestCheckHook, + python-dotenv, + requests, + typing-extensions, +}: + +buildPythonPackage rec { + pname = "python-picnic-api2"; + version = "1.2.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "codesalatdev"; + repo = "python-picnic-api"; + tag = "v${version}"; + hash = "sha256-pO0aIdMKSC8AT/Bu5axl1NZbbF8IM/cOygLRT8eRKlU="; + }; + + build-system = [ poetry-core ]; + + dependencies = [ + requests + typing-extensions + ]; + + pythonImportsCheck = [ "python_picnic_api2" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTestPaths = [ + # tests access the actual API + "integration_tests" + ]; + + disabledTests = [ + # tests don't expect requests to come with the br transfer-encoding + "test_update_auth_token" + ]; + + meta = { + changelog = "https://github.com/codesalatdev/python-picnic-api/releases/tag/${src.tag}"; + description = "Fork of the Unofficial Python wrapper for the Picnic API"; + homepage = "https://github.com/codesalatdev/python-picnic-api"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/python-snoo/default.nix b/pkgs/development/python-modules/python-snoo/default.nix new file mode 100644 index 000000000000..fbbafe0f65cb --- /dev/null +++ b/pkgs/development/python-modules/python-snoo/default.nix @@ -0,0 +1,48 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + poetry-core, + aiohttp, + freenub, + mashumaro, +}: + +buildPythonPackage rec { + pname = "python-snoo"; + version = "0.6.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Lash-L"; + repo = "python-snoo"; + tag = "v${version}"; + hash = "sha256-d08aISGFAq5iUqH1AdPg4vkg+zNWpVtM0wmEN/xJD1w="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail poetry-core==1.8.0 poetry-core + ''; + + build-system = [ poetry-core ]; + + dependencies = [ + aiohttp + freenub + mashumaro + ]; + + pythonImportsCheck = [ "python_snoo" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/Lash-L/python-snoo/blob/${src.tag}/CHANGELOG.md"; + description = "Control Snoo devices via python and get auto updates"; + homepage = "https://github.com/Lash-L/python-snoo"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/python-technove/default.nix b/pkgs/development/python-modules/python-technove/default.nix index 8addb71d5b8d..e3e716f0223e 100644 --- a/pkgs/development/python-modules/python-technove/default.nix +++ b/pkgs/development/python-modules/python-technove/default.nix @@ -9,6 +9,7 @@ fetchFromGitHub, poetry-core, pytest-asyncio, + pytest-cov-stub, pytestCheckHook, pythonOlder, yarl, @@ -16,7 +17,7 @@ buildPythonPackage rec { pname = "python-technove"; - version = "1.3.1"; + version = "2.0.0"; pyproject = true; disabled = pythonOlder "3.11"; @@ -25,17 +26,12 @@ buildPythonPackage rec { owner = "Moustachauve"; repo = "pytechnove"; tag = "v${version}"; - hash = "sha256-umtM2fIyEiimt/X2SvgqjaTYGutvJHkSJ3pRfwSbOfQ="; + hash = "sha256-LgrydBgx68HP8yaywkMMeS71VqhilYGODppBZbdkssQ="; }; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace-fail "--cov" "" - ''; + build-system = [ poetry-core ]; - nativeBuildInputs = [ poetry-core ]; - - propagatedBuildInputs = [ + dependencies = [ aiohttp awesomeversion backoff @@ -46,6 +42,7 @@ buildPythonPackage rec { nativeCheckInputs = [ aresponses pytest-asyncio + pytest-cov-stub pytestCheckHook ]; @@ -54,7 +51,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python library to interact with TechnoVE local device API"; homepage = "https://github.com/Moustachauve/pytechnove"; - changelog = "https://github.com/Moustachauve/pytechnove/releases/tag/v${version}"; + changelog = "https://github.com/Moustachauve/pytechnove/releases/tag/${src.tag}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/pytouchline-extended/default.nix b/pkgs/development/python-modules/pytouchline-extended/default.nix new file mode 100644 index 000000000000..d1acd2d5735e --- /dev/null +++ b/pkgs/development/python-modules/pytouchline-extended/default.nix @@ -0,0 +1,48 @@ +{ + buildPythonPackage, + faust-cchardet, + fetchFromGitHub, + httplib2, + lib, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "pytouchline-extended"; + version = "0.4.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "brondum"; + repo = "pytouchline"; + tag = version; + hash = "sha256-fcqm5fRuxB4YQkP48UclGgo4KohXu2OU7w1Nr6i9c6s="; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace-fail '$GITHUB_REF_NAME' '${version}' + ''; + + build-system = [ setuptools ]; + + dependencies = [ + faust-cchardet + httplib2 + ]; + + pythonImportsCheck = [ "pytouchline_extended" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/brondum/pytouchline/releases/tag/${src.tag}"; + description = "Roth Touchline interface library"; + homepage = "https://github.com/brondum/pytouchline"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/securetar/default.nix b/pkgs/development/python-modules/securetar/default.nix index 215e89a15ca5..7c38302a6e81 100644 --- a/pkgs/development/python-modules/securetar/default.nix +++ b/pkgs/development/python-modules/securetar/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "securetar"; - version = "2025.1.4"; + version = "2025.2.1"; pyproject = true; disabled = pythonOlder "3.10"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "pvizeli"; repo = "securetar"; tag = version; - hash = "sha256-vI9u8CUf9rdJwx+Q3ypO9XS/jfRxZV5EOjvKSmQSNa0="; + hash = "sha256-uVzyVgS8bWxS7jhwVyv7wTNF8REW+dJIhkRaS/8/FmY="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/sensorpush-api/default.nix b/pkgs/development/python-modules/sensorpush-api/default.nix new file mode 100644 index 000000000000..ec0a254577ba --- /dev/null +++ b/pkgs/development/python-modules/sensorpush-api/default.nix @@ -0,0 +1,55 @@ +{ + aiohttp, + buildPythonPackage, + fetchFromGitHub, + lib, + pydantic, + pytestCheckHook, + python-dateutil, + setuptools, + urllib3, +}: + +buildPythonPackage rec { + pname = "sensorpush-api"; + version = "2.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "sstallion"; + repo = "sensorpush-api"; + tag = "v${version}"; + hash = "sha256-Gkvd0MbySk4jdl+hJd0wFGqj2/qOkq/jThe+5b4n0XM="; + }; + + build-system = [ setuptools ]; + + pythonRelaxDeps = [ + "urllib3" + ]; + + pythonRemoveDeps = [ + "aenum" # https://github.com/sstallion/sensorpush-api/pull/3 + ]; + + dependencies = [ + aiohttp + pydantic + python-dateutil + urllib3 + ]; + + pythonImportsCheck = [ "sensorpush_api" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + changelog = "https://github.com/sstallion/sensorpush-api/blob/${src.tag}/CHANGELOG.md"; + description = "SensorPush Public API for Python"; + homepage = "https://github.com/sstallion/sensorpush-api"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/sensorpush-ha/default.nix b/pkgs/development/python-modules/sensorpush-ha/default.nix new file mode 100644 index 000000000000..647104ee4aea --- /dev/null +++ b/pkgs/development/python-modules/sensorpush-ha/default.nix @@ -0,0 +1,41 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + pydantic, + sensorpush-api, + setuptools, +}: + +buildPythonPackage rec { + pname = "sensorpush-ha"; + version = "1.3.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "sstallion"; + repo = "sensorpush-ha"; + tag = "v${version}"; + hash = "sha256-Gs6WprGscr9fiu78S0OY6624LA87Of7OWkNNnaWIxJk="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + pydantic + sensorpush-api + ]; + + pythonImportsCheck = [ "sensorpush_ha" ]; + + # upstream has no tests + doCheck = false; + + meta = { + changelog = "https://github.com/sstallion/sensorpush-ha/blob/${src.tag}/CHANGELOG.md"; + description = "SensorPush Cloud Home Assistant Library"; + homepage = "https://github.com/sstallion/sensorpush-ha"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/soco/default.nix b/pkgs/development/python-modules/soco/default.nix index f9fb5365f156..940a50839852 100644 --- a/pkgs/development/python-modules/soco/default.nix +++ b/pkgs/development/python-modules/soco/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "soco"; - version = "0.30.8"; + version = "0.30.9"; pyproject = true; disabled = pythonOlder "3.6"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "SoCo"; repo = "SoCo"; tag = "v${version}"; - hash = "sha256-RuPWxa4FC+5knkC9tlUHvk5jtE5jso+6L7JDGXIimKA="; + hash = "sha256-nyzrBvl6VnNA8cMYtKIvB7k95g5AUixz93Ptc8rQ2pM="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/stookwijzer/default.nix b/pkgs/development/python-modules/stookwijzer/default.nix index 5a7b618e7000..dd395f7ca1cc 100644 --- a/pkgs/development/python-modules/stookwijzer/default.nix +++ b/pkgs/development/python-modules/stookwijzer/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "stookwijzer"; - version = "1.5.4"; + version = "1.6.1"; pyproject = true; src = fetchFromGitHub { owner = "fwestenberg"; repo = "stookwijzer"; tag = "v${version}"; - hash = "sha256-ZbXXpmyu4sczYlM0rFn1xIUYmQtxLv4SiQrk8qox8Dk="; + hash = "sha256-T4u3KuKWAXRkHbjPt4qkiisnLjx9JMD0DW6enOlu69g="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/tesla-fleet-api/default.nix b/pkgs/development/python-modules/tesla-fleet-api/default.nix index 843b4d73d511..69c85b072cfe 100644 --- a/pkgs/development/python-modules/tesla-fleet-api/default.nix +++ b/pkgs/development/python-modules/tesla-fleet-api/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "tesla-fleet-api"; - version = "0.9.10"; + version = "0.9.12"; pyproject = true; disabled = pythonOlder "3.10"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "Teslemetry"; repo = "python-tesla-fleet-api"; tag = "v${version}"; - hash = "sha256-JKXGQJwFmcG2+suHpd8LuEgtlpNV6YzxrGBIa8A7InI="; + hash = "sha256-1ir1x/uvcVoad82KaGAMm/S52MT7E5SkiTnUH2cWV34="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/thinqconnect/default.nix b/pkgs/development/python-modules/thinqconnect/default.nix index cf908a78d7c0..a28c6ebb560c 100644 --- a/pkgs/development/python-modules/thinqconnect/default.nix +++ b/pkgs/development/python-modules/thinqconnect/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "thinqconnect"; - version = "1.0.3"; + version = "1.0.4"; pyproject = true; disabled = pythonOlder "3.10"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "thinq-connect"; repo = "pythinqconnect"; tag = version; - hash = "sha256-p2EY1DeLxmXcfohN4e4I7I+SNkabEr37ZC2ka1CT7/s="; + hash = "sha256-LVmvJvGbiPPg+WlrTOYueNCNZNjldWJVC+OqFl9CcK0="; }; build-system = [ setuptools ]; @@ -37,6 +37,7 @@ buildPythonPackage rec { pythonImportsCheck = [ "thinqconnect" ]; meta = { + changelog = "https://github.com/thinq-connect/pythinqconnect/blob/${src.tag}/RELEASE_NOTES.md"; description = "Module to interacting with the LG ThinQ Connect Open API"; homepage = "https://github.com/thinq-connect/pythinqconnect"; license = lib.licenses.asl20; diff --git a/pkgs/development/python-modules/upb-lib/default.nix b/pkgs/development/python-modules/upb-lib/default.nix index 6bcdb0953fb6..88ccbc6d90d2 100644 --- a/pkgs/development/python-modules/upb-lib/default.nix +++ b/pkgs/development/python-modules/upb-lib/default.nix @@ -2,16 +2,16 @@ lib, buildPythonPackage, fetchFromGitHub, + hatchling, pyserial-asyncio-fast, pytestCheckHook, pythonOlder, pytz, - poetry-core, }: buildPythonPackage rec { pname = "upb-lib"; - version = "0.5.9"; + version = "0.6.0"; pyproject = true; disabled = pythonOlder "3.11"; @@ -20,10 +20,10 @@ buildPythonPackage rec { owner = "gwww"; repo = "upb-lib"; tag = version; - hash = "sha256-GnNzKU4mqBu2pUOju+4+HMLsTupd8s+nAAieixkBCDk="; + hash = "sha256-4RDatZXEwjNVbz1/ZNA6HY2fDHMq2dE/Huf4Ui3wU3c="; }; - build-system = [ poetry-core ]; + build-system = [ hatchling ]; dependencies = [ pyserial-asyncio-fast @@ -34,16 +34,11 @@ buildPythonPackage rec { pythonImportsCheck = [ "upb_lib" ]; - disabledTests = [ - # AssertionError - "test_create_control_word_all" - ]; - - meta = with lib; { + meta = { description = "Library for interacting with UPB PIM"; homepage = "https://github.com/gwww/upb-lib"; - changelog = "https://github.com/gwww/upb-lib/releases/tag/${version}"; - license = licenses.mit; - maintainers = with maintainers; [ dotlambda ]; + changelog = "https://github.com/gwww/upb-lib/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; }; } diff --git a/pkgs/development/python-modules/weheat/default.nix b/pkgs/development/python-modules/weheat/default.nix index c99ebbb8a758..445920702abc 100644 --- a/pkgs/development/python-modules/weheat/default.nix +++ b/pkgs/development/python-modules/weheat/default.nix @@ -7,28 +7,24 @@ fetchFromGitHub, pydantic, python-dateutil, - pythonOlder, setuptools, urllib3, }: buildPythonPackage rec { pname = "weheat"; - version = "2025.2.13"; + version = "2025.2.27"; pyproject = true; - disabled = pythonOlder "3.7"; - src = fetchFromGitHub { owner = "wefabricate"; repo = "wh-python"; tag = version; - hash = "sha256-YXo+pwgCjw2CWUCS9DY9jaLjhj+q+ZqfW3uh1aSXnM0="; + hash = "sha256-DrBOx++Rp/5s8sU07+/cuy2Je27i84WCY3/mljLfawk="; }; pythonRelaxDeps = [ "urllib3" - "pydantic" ]; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/zeroconf/default.nix b/pkgs/development/python-modules/zeroconf/default.nix index 54da13320331..282b2c368b91 100644 --- a/pkgs/development/python-modules/zeroconf/default.nix +++ b/pkgs/development/python-modules/zeroconf/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "zeroconf"; - version = "0.144.1"; + version = "0.145.1"; pyproject = true; disabled = pythonOlder "3.9"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "jstasiak"; repo = "python-zeroconf"; tag = version; - hash = "sha256-OpylhsMjM7Xc1/vVv2kNuxeO7XknjQjJ8jFVS2+3188="; + hash = "sha256-tQjQ34746aeRz4gead3LcyfCF0L0iaJeQcDdqDW4gD8="; }; build-system = [ diff --git a/pkgs/development/python-modules/zha-quirks/default.nix b/pkgs/development/python-modules/zha-quirks/default.nix index af1b3ccd7599..b43705f3b185 100644 --- a/pkgs/development/python-modules/zha-quirks/default.nix +++ b/pkgs/development/python-modules/zha-quirks/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "zha-quirks"; - version = "0.0.133"; + version = "0.0.134"; pyproject = true; disabled = pythonOlder "3.12"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "zigpy"; repo = "zha-device-handlers"; tag = version; - hash = "sha256-9nw9eEUzIIp679LSMRmO5kW5Qvz3vcL3AEXHdhNFtG8="; + hash = "sha256-9h9Fsn15/1fZIiZEyGPIzuyxmGs7L4PyEwH/K2cRSgU="; }; postPatch = '' @@ -54,7 +54,7 @@ buildPythonPackage rec { meta = with lib; { description = "ZHA Device Handlers are custom quirks implementations for Zigpy"; homepage = "https://github.com/dmulcahey/zha-device-handlers"; - changelog = "https://github.com/zigpy/zha-device-handlers/releases/tag/${version}"; + changelog = "https://github.com/zigpy/zha-device-handlers/releases/tag/${src.tag}"; license = licenses.asl20; maintainers = with maintainers; [ fab ]; platforms = platforms.linux; diff --git a/pkgs/development/python-modules/zha/default.nix b/pkgs/development/python-modules/zha/default.nix index ecae00d4942b..a00e3e4b1e3b 100644 --- a/pkgs/development/python-modules/zha/default.nix +++ b/pkgs/development/python-modules/zha/default.nix @@ -27,7 +27,7 @@ buildPythonPackage rec { pname = "zha"; - version = "0.0.49"; + version = "0.0.51"; pyproject = true; disabled = pythonOlder "3.12"; @@ -36,7 +36,7 @@ buildPythonPackage rec { owner = "zigpy"; repo = "zha"; tag = version; - hash = "sha256-QW/FrmZIRr2xt+a6Se9nEp4ttfhNJx79/qV9A+hmNSU="; + hash = "sha256-zcLhmUNjPgZNDcG1Nq2LrcW0hsvPvoFdZ6L9ejGPgaQ="; }; postPatch = '' diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix index abb8f03f3dd9..af77dc067b3b 100644 --- a/pkgs/development/python-modules/zigpy/default.nix +++ b/pkgs/development/python-modules/zigpy/default.nix @@ -27,7 +27,7 @@ buildPythonPackage rec { pname = "zigpy"; - version = "0.76.1"; + version = "0.76.2"; pyproject = true; disabled = pythonOlder "3.9"; @@ -36,7 +36,7 @@ buildPythonPackage rec { owner = "zigpy"; repo = "zigpy"; tag = version; - hash = "sha256-ZPNMlaktdSElOfKf3SmI08RGRSpI5hK2khWoJybtJh4="; + hash = "sha256-FJ1mEo/+U0wqLRnmro34UVDwzVJXhI4aJtcvfDboPlc="; }; postPatch = '' diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 5e3b41d089cc..0203c86671f9 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2025.2.5"; + version = "2025.3.0"; components = { "3_day_blinds" = ps: with ps; [ @@ -280,6 +280,9 @@ "api" = ps: with ps; [ ]; + "apollo_automation" = + ps: with ps; [ + ]; "appalachianpower" = ps: with ps; [ ]; @@ -493,6 +496,10 @@ ps: with ps; [ azure-servicebus ]; + "azure_storage" = + ps: with ps; [ + azure-storage-blob + ]; "backup" = ps: with ps; [ aiohasupervisor @@ -770,6 +777,9 @@ ps: with ps; [ buienradar ]; + "burbank_water_and_power" = + ps: with ps; [ + ]; "button" = ps: with ps; [ ]; @@ -1286,13 +1296,10 @@ ]; # missing inputs: dweepy "dynalite" = ps: with ps; [ - aiohasupervisor - cronsim dynalite-devices dynalite-panel home-assistant-frontend pillow - securetar ]; "eafm" = ps: with ps; [ @@ -1780,8 +1787,9 @@ ]; "forked_daapd" = ps: with ps; [ + pylibrespot-java spotifyaio - ]; # missing inputs: pyforked-daapd pylibrespot-java + ]; # missing inputs: pyforked-daapd "fortios" = ps: with ps; [ fortiosapi @@ -1834,11 +1842,8 @@ ]; "frontend" = ps: with ps; [ - aiohasupervisor - cronsim home-assistant-frontend pillow - securetar ]; "frontier_silicon" = ps: with ps; [ @@ -2020,7 +2025,7 @@ ]; "google_generative_ai_conversation" = ps: with ps; [ - google-generativeai + google-genai ha-ffmpeg hassil home-assistant-intents @@ -2179,6 +2184,9 @@ ps: with ps; [ heatmiserv3 ]; + "heicko" = + ps: with ps; [ + ]; "heiwa" = ps: with ps; [ ]; @@ -2241,7 +2249,7 @@ ]; "home_connect" = ps: with ps; [ - homeconnect + aiohomeconnect ]; "home_plus_control" = ps: with ps; [ @@ -2623,15 +2631,12 @@ ]; "insteon" = ps: with ps; [ - aiohasupervisor aiousbwatcher - cronsim home-assistant-frontend insteon-frontend-home-assistant pillow pyinsteon pyserial - securetar ]; "integration" = ps: with ps; [ @@ -2650,6 +2655,10 @@ ps: with ps; [ pyintesishome ]; + "iometer" = + ps: with ps; [ + iometer + ]; "ios" = ps: with ps; [ ifaddr @@ -2887,12 +2896,9 @@ ]; "knx" = ps: with ps; [ - aiohasupervisor - cronsim home-assistant-frontend knx-frontend pillow - securetar xknx xknxproject ]; @@ -2987,13 +2993,10 @@ ]; "lcn" = ps: with ps; [ - aiohasupervisor - cronsim home-assistant-frontend lcn-frontend pillow pypck - securetar ]; "ld2410_ble" = ps: with ps; [ @@ -3125,6 +3128,9 @@ ps: with ps; [ limitlessled ]; + "linak" = + ps: with ps; [ + ]; "linear_garage_door" = ps: with ps; [ linear-garage-door @@ -3144,6 +3150,9 @@ ps: with ps; [ batinfo ]; + "linx" = + ps: with ps; [ + ]; "lirc" = ps: with ps; [ ]; # missing inputs: python-lirc @@ -3185,13 +3194,10 @@ ]; "logbook" = ps: with ps; [ - aiohasupervisor - cronsim fnv-hash-fast home-assistant-frontend pillow psutil-home-assistant - securetar sqlalchemy ]; "logentries" = @@ -3228,10 +3234,7 @@ ]; "lovelace" = ps: with ps; [ - aiohasupervisor - cronsim pillow - securetar ]; "luci" = ps: with ps; [ @@ -3686,11 +3689,8 @@ ]; "my" = ps: with ps; [ - aiohasupervisor - cronsim home-assistant-frontend pillow - securetar ]; "myq" = ps: with ps; [ @@ -3968,10 +3968,7 @@ ]; "onboarding" = ps: with ps; [ - aiohasupervisor - cronsim pillow - securetar ]; "oncue" = ps: with ps; [ @@ -4120,14 +4117,12 @@ ps: with ps; [ aiohasupervisor aiousbwatcher - cronsim ifaddr pillow psutil-home-assistant pyroute2 pyserial python-otbr-api - securetar universal-silabs-flasher zeroconf zha @@ -4203,11 +4198,8 @@ ]; "panel_custom" = ps: with ps; [ - aiohasupervisor - cronsim home-assistant-frontend pillow - securetar ]; "pcs_lighting" = ps: with ps; [ @@ -4248,6 +4240,12 @@ "pge" = ps: with ps; [ ]; + "pglab" = + ps: with ps; [ + aiohasupervisor + paho-mqtt + pypglab + ]; "philips_js" = ps: with ps; [ ha-philipsjs @@ -4258,7 +4256,7 @@ ]; "picnic" = ps: with ps; [ - python-picnic-api + python-picnic-api2 ]; "picotts" = ps: with ps; [ @@ -5023,6 +5021,11 @@ sensorpush-ble zeroconf ]; + "sensorpush_cloud" = + ps: with ps; [ + sensorpush-api + sensorpush-ha + ]; "sensoterra" = ps: with ps; [ sensoterra @@ -5188,25 +5191,15 @@ ps: with ps; [ smart-meter-texas ]; + "smart_rollos" = + ps: with ps; [ + ]; "smarther" = ps: with ps; [ ]; "smartthings" = ps: with ps; [ - aiohasupervisor - cronsim - ha-ffmpeg - hass-nabucasa - hassil - home-assistant-intents - mutagen - pymicro-vad - pysmartapp pysmartthings - pyspeex-noise - python-matter-server - pyturbojpeg - securetar ]; "smarttub" = ps: with ps; [ @@ -5217,7 +5210,7 @@ ]; # missing inputs: pysmarty2 "smhi" = ps: with ps; [ - smhi-pkg + pysmhi ]; "smlight" = ps: with ps; [ @@ -5246,6 +5239,10 @@ ps: with ps; [ pysnmp ]; + "snoo" = + ps: with ps; [ + python-snoo + ]; "snooz" = ps: with ps; [ aioesphomeapi @@ -5351,6 +5348,8 @@ ]; "sql" = ps: with ps; [ + fnv-hash-fast + psutil-home-assistant sqlalchemy sqlparse ]; @@ -5839,7 +5838,8 @@ ]; "touchline" = ps: with ps; [ - ]; # missing inputs: pytouchline + pytouchline-extended + ]; "touchline_sl" = ps: with ps; [ pytouchlinesl @@ -5964,6 +5964,9 @@ "ubiwizz" = ps: with ps; [ ]; + "ublockout" = + ps: with ps; [ + ]; "ubus" = ps: with ps; [ openwrt-ubus-rpc @@ -6221,6 +6224,10 @@ ps: with ps; [ apple-weatherkit ]; + "webdav" = + ps: with ps; [ + aiowebdav2 + ]; "webhook" = ps: with ps; [ ]; @@ -6520,10 +6527,8 @@ ps: with ps; [ aiohasupervisor aiousbwatcher - cronsim pillow pyserial - securetar universal-silabs-flasher zha ]; @@ -6634,6 +6639,7 @@ "azure_data_explorer" "azure_devops" "azure_event_hub" + "azure_storage" "backup" "baf" "balboa" @@ -6933,6 +6939,7 @@ "intellifire" "intent" "intent_script" + "iometer" "ios" "iotty" "ipma" @@ -7151,6 +7158,7 @@ "permobil" "persistent_notification" "person" + "pglab" "philips_js" "pi_hole" "picnic" @@ -7250,6 +7258,7 @@ "sensor" "sensorpro" "sensorpush" + "sensorpush_cloud" "sensoterra" "sentry" "senz" @@ -7285,6 +7294,7 @@ "snapcast" "snips" "snmp" + "snoo" "snooz" "solaredge" "solarlog" @@ -7440,6 +7450,7 @@ "weatherflow" "weatherflow_cloud" "weatherkit" + "webdav" "webhook" "webmin" "webostv" diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index a67e2beaa087..38604c3516be 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -45,17 +45,6 @@ let ]; }); - aiomqtt = super.aiomqtt.overridePythonAttrs (rec { - version = "2.0.1"; - src = fetchFromGitHub { - owner = "sbtinstruments"; - repo = "aiomqtt"; - tag = "v${version}"; - hash = "sha256-bV1elEO1518LVLwNDN5pzjxRgcG34K1XUsK7fTw8h+8="; - }; - meta.broken = false; - }); - aioskybell = super.aioskybell.overridePythonAttrs (oldAttrs: rec { version = "22.7.0"; src = fetchFromGitHub { @@ -129,13 +118,13 @@ let build-system = with self; [ poetry-core ]; }); - govee-local-api = super.govee-local-api.overridePythonAttrs (oldAttrs: rec { - version = "1.5.3"; + google-genai = super.google-genai.overridePythonAttrs (old: rec { + version = "1.1.0"; src = fetchFromGitHub { - owner = "Galorhallen"; - repo = "govee-local-api"; + owner = "googleapis"; + repo = "python-genai"; tag = "v${version}"; - hash = "sha256-qBT0Xub+eL7rfF+lQWlheBJSahEKWjREGJQD6sHjTPk="; + hash = "sha256-CszKr2dvo0dLMAD/FZHSosCczeAFDD0xxKysGNv4RxM="; }; }); @@ -168,16 +157,6 @@ let ]; }); - letpot = super.letpot.overridePythonAttrs (rec { - version = "0.3.0"; - src = fetchFromGitHub { - owner = "jpelgrom"; - repo = "python-letpot"; - tag = "v${version}"; - hash = "sha256-OFLQ0DV7roqUlm6zJWAzMRpcmAi/oco8lEHbmfqNaVs="; - }; - }); - openhomedevice = super.openhomedevice.overridePythonAttrs (oldAttrs: rec { version = "2.2"; src = fetchFromGitHub { @@ -187,8 +166,6 @@ let }; }); - paho-mqtt = super.paho-mqtt_1; - pymelcloud = super.pymelcloud.overridePythonAttrs (oldAttrs: { version = "2.5.9"; src = fetchFromGitHub { @@ -284,6 +261,16 @@ let }; }); + pyopenweathermap = super.pyopenweathermap.overridePythonAttrs (old: rec { + version = "0.2.1"; + src = fetchFromGitHub { + owner = "freekode"; + repo = "pyopenweathermap"; + tag = "v${version}"; + hash = "sha256-UcnELAJf0Ltf0xJOlyzsHb4HQGSBTJ+/mOZ/XSTkA0w="; + }; + }); + pyrail = super.pyrail.overridePythonAttrs (rec { version = "0.0.3"; src = fetchPypi { @@ -395,7 +382,7 @@ let extraBuildInputs = extraPackages python.pkgs; # Don't forget to run update-component-packages.py after updating - hassVersion = "2025.2.5"; + hassVersion = "2025.3.0"; in python.pkgs.buildPythonApplication rec { @@ -415,14 +402,14 @@ python.pkgs.buildPythonApplication rec { src = fetchFromGitHub { owner = "home-assistant"; repo = "core"; - rev = "refs/tags/${version}"; - hash = "sha256-8adHpOiuWddgqQjInc92FjEwVyg2Rvgx7wNOj3+Kxsk="; + tag = version; + hash = "sha256-zMsJ/YAwMIdLDF256rxj63QsZD26p71SgYpf4zwzD1A="; }; # Secondary source is pypi sdist for translations sdist = fetchPypi { inherit pname version; - hash = "sha256-JD2xus356qNzT5jqZOHr5gn4WGeC189rM83D81xVtWo="; + hash = "sha256-jsRIStPIbWXj24qjh9ZxH0QPN+zUOZeP6efRGYovUms="; }; build-system = with python.pkgs; [ @@ -442,6 +429,7 @@ python.pkgs.buildPythonApplication rec { "jinja2" "orjson" "pillow" + "propcache" "pyjwt" "pyopenssl" "pyyaml" @@ -642,6 +630,7 @@ python.pkgs.buildPythonApplication rec { meta = with lib; { homepage = "https://home-assistant.io/"; + changelog = "https://github.com/home-assistant/core/releases/tag/${src.tag}"; description = "Open source home automation that puts local control and privacy first"; license = licenses.asl20; maintainers = teams.home-assistant.members; diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index cf10e2a7c499..8ff4f51f2a4a 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -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 = "20250221.0"; + version = "20250305.0"; format = "wheel"; src = fetchPypi { @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "home_assistant_frontend"; dist = "py3"; python = "py3"; - hash = "sha256-SgNtsXtg/i9AO+xu5O0loDbAifO4rn1GRFE1LmeJLfU="; + hash = "sha256-tzyJp1aKOXnmANR7p6C3rtC90VkGntURiaRgIjL8dDM="; }; # there is nothing to strip in this package diff --git a/pkgs/servers/home-assistant/intents.nix b/pkgs/servers/home-assistant/intents.nix index 61e8d722e969..88d705f8b9a6 100644 --- a/pkgs/servers/home-assistant/intents.nix +++ b/pkgs/servers/home-assistant/intents.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "home-assistant-intents"; - version = "2025.2.5"; + version = "2025.3.5"; pyproject = true; disabled = pythonOlder "3.9"; @@ -32,7 +32,7 @@ buildPythonPackage rec { repo = "intents-package"; rev = "refs/tags/${version}"; fetchSubmodules = true; - hash = "sha256-x6B7UF6l9vMFscD8aPZ05N0HXo5d8XSONrrr6u+Ol3g="; + hash = "sha256-4FYmj6EqcNxPzXJVM0svyJIoeMSBnINNfvOda4B9Jic="; }; build-system = [ diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 23ae502df25c..5c9dc87970b7 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -433,6 +433,8 @@ mapAliases ({ opentracing = throw "The opentracing Python module was removed due to being unmaintained upstream. Use OpenTelemetry instead."; # Added 2024-12-09 ordereddict = throw "ordereddict has been removed because it is only useful on unsupported python versions."; # added 2022-05-28 pafy = throw "pafy has been removed because it is unmaintained and only a dependency of mps-youtube, itself superseded by yewtube"; # Added 2023-01-19 + paho-mqtt_1 = throw "paho-mqtt_1 was removed because no package depends on it anymore"; # added 2025-03-05 + paho-mqtt_2 = paho-mqtt; # added 2025-03-05 pam = python-pam; # added 2020-09-07. PasteDeploy = pastedeploy; # added 2021-10-07 pathlib = throw "pathlib was removed as it has been integrated in python standard library in version 3.4"; # added 2024-05-13 @@ -517,6 +519,7 @@ mapAliases ({ pynose = throw "pynose was removed, because it violates the license of nose, by redistributing modified LGPL code under MIT."; python-ethtool = ethtool; # added 2024-07-23 python-myq = throw "python-myq has been removed, as the service provider has decided to block its API requests"; # added 2023-12-07 + python-picnic-api = throw "python-picnic-api was removed because Home Assistant switched to python-picnic-api2"; # added 2025-03-05 pytrends = throw "pytrends has been removed, as it no longer works and is abandoned upstream"; # added 2025-02-02 pyqt4 = throw "pyqt4 has been removed, because it depended on the long EOL qt4"; # added 2022-06-09 pyqt5_sip = pyqt5-sip; # added 2024-01-07 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ebf54b29e2d1..1033c0c9b275 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -487,6 +487,8 @@ self: super: with self; { aioweenect = callPackage ../development/python-modules/aioweenect { }; + aiowebdav2 = callPackage ../development/python-modules/aiowebdav2 { }; + aiowebostv = callPackage ../development/python-modules/aiowebostv { }; aiowmi = callPackage ../development/python-modules/aiowmi { }; @@ -5577,6 +5579,8 @@ self: super: with self; { inherit (pkgs) crc32c; }; + google-genai = callPackage ../development/python-modules/google-genai { }; + google-generativeai = callPackage ../development/python-modules/google-generativeai { }; google-i18n-address = callPackage ../development/python-modules/google-i18n-address { }; @@ -6526,6 +6530,8 @@ self: super: with self; { ioctl-opt = callPackage ../development/python-modules/ioctl-opt { }; + iometer = callPackage ../development/python-modules/iometer { }; + ionhash = callPackage ../development/python-modules/ionhash { }; ionoscloud = callPackage ../development/python-modules/ionoscloud { }; @@ -10158,9 +10164,7 @@ self: super: with self; { paginate = callPackage ../development/python-modules/paginate { }; - paho-mqtt_1 = callPackage ../development/python-modules/paho-mqtt/1.nix { }; - paho-mqtt_2 = callPackage ../development/python-modules/paho-mqtt/default.nix { }; - paho-mqtt = paho-mqtt_2; + paho-mqtt = callPackage ../development/python-modules/paho-mqtt/default.nix { }; paintcompiler = callPackage ../development/python-modules/paintcompiler { }; @@ -10579,6 +10583,8 @@ self: super: with self; { pymeshlab = toPythonModule (pkgs.libsForQt5.callPackage ../applications/graphics/pymeshlab { }); + pypglab = callPackage ../development/python-modules/pypglab { }; + pyprecice = callPackage ../development/python-modules/pyprecice { }; pyprobables = callPackage ../development/python-modules/pyprobables { }; @@ -10964,6 +10970,8 @@ self: super: with self; { pyskyqremote = callPackage ../development/python-modules/pyskyqremote { }; + pysmhi = callPackage ../development/python-modules/pysmhi { }; + pysolcast = callPackage ../development/python-modules/pysolcast { }; pystac = callPackage ../development/python-modules/pystac { }; @@ -11076,6 +11084,8 @@ self: super: with self; { python-pptx = callPackage ../development/python-modules/python-pptx { }; + python-snoo = callPackage ../development/python-modules/python-snoo { }; + python-songpal = callPackage ../development/python-modules/python-songpal { }; python-swiftclient = callPackage ../development/python-modules/python-swiftclient { }; @@ -11099,6 +11109,8 @@ self: super: with self; { pytorch3d = callPackage ../development/python-modules/pytorch3d { }; + pytouchline-extended = callPackage ../development/python-modules/pytouchline-extended { }; + pytouchlinesl = callPackage ../development/python-modules/pytouchlinesl { }; pyuca = callPackage ../development/python-modules/pyuca { }; @@ -13604,7 +13616,7 @@ self: super: with self; { python-periphery = callPackage ../development/python-modules/python-periphery { }; - python-picnic-api = callPackage ../development/python-modules/python-picnic-api { }; + python-picnic-api2 = callPackage ../development/python-modules/python-picnic-api2 { }; python-pidfile = callPackage ../development/python-modules/python-pidfile { }; @@ -14948,8 +14960,12 @@ self: super: with self; { sensorpro-ble = callPackage ../development/python-modules/sensorpro-ble { }; + sensorpush-api = callPackage ../development/python-modules/sensorpush-api { }; + sensorpush-ble = callPackage ../development/python-modules/sensorpush-ble { }; + sensorpush-ha = callPackage ../development/python-modules/sensorpush-ha { }; + sensoterra = callPackage ../development/python-modules/sensoterra { }; sentencepiece = callPackage ../development/python-modules/sentencepiece {