{ lib , aiohttp , aresponses , backoff , beautifulsoup4 , buildPythonPackage , docutils , fetchFromGitHub , fetchpatch , poetry-core , pytest-aiohttp , pytest-asyncio , pytestCheckHook , pythonOlder , pytz , types-pytz , voluptuous , websockets }: buildPythonPackage rec { pname = "simplisafe-python"; version = "2023.08.0"; format = "pyproject"; disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "bachya"; repo = pname; rev = "refs/tags/${version}"; hash = "sha256-DExMa9z/VYAMoqUmr/gfZzYFWfTxnC+Cz4rRTaNSLBM="; }; patches = [ # This patch removes references to setuptools and wheel that are no longer # necessary and changes poetry to poetry-core, so that we don't need to add # unnecessary nativeBuildInputs. # # https://github.com/bachya/simplisafe-python/pull/596 # (fetchpatch { name = "clean-up-build-dependencies.patch"; url = "https://github.com/bachya/simplisafe-python/commit/60f41c690fac7acb614490b542cbbf2fa0052266.patch"; hash = "sha256-RLRbHmaR2A8MNc96WHx0L8ccyygoBUaOulAuRJkFuUM="; }) ]; nativeBuildInputs = [ poetry-core ]; propagatedBuildInputs = [ aiohttp backoff beautifulsoup4 docutils pytz voluptuous websockets ]; nativeCheckInputs = [ aresponses pytest-aiohttp pytest-asyncio pytestCheckHook types-pytz ]; disabledTests = [ # simplipy/api.py:253: InvalidCredentialsError "test_request_error_failed_retry" "test_update_error" # ClientConnectorError: Cannot connect to host auth.simplisafe.com:443 ssl:default [Temporary failure in name resolution] "test_client_async_from_refresh_token_unknown_error" ]; disabledTestPaths = [ # Ignore the examples as they are prefixed with test_ "examples/" ]; pythonImportsCheck = [ "simplipy" ]; __darwinAllowLocalNetworking = true; meta = with lib; { changelog = "https://github.com/bachya/simplisafe-python/releases/tag/${version}"; description = "Python library the SimpliSafe API"; homepage = "https://simplisafe-python.readthedocs.io/"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; }