1{ lib 2, aiohttp 3, aresponses 4, backoff 5, beautifulsoup4 6, buildPythonPackage 7, docutils 8, fetchFromGitHub 9, poetry-core 10, pytest-aiohttp 11, pytest-asyncio 12, pytestCheckHook 13, pythonOlder 14, pytz 15, types-pytz 16, voluptuous 17, websockets 18}: 19 20buildPythonPackage rec { 21 pname = "simplisafe-python"; 22 version = "2023.10.0"; 23 format = "pyproject"; 24 25 disabled = pythonOlder "3.9"; 26 27 src = fetchFromGitHub { 28 owner = "bachya"; 29 repo = "simplisafe-python"; 30 rev = "refs/tags/${version}"; 31 hash = "sha256-U3SbaR8PTTvoAMu65+LAHSwTmR7iwqiidbefW8bNSCo="; 32 }; 33 34 35 nativeBuildInputs = [ 36 poetry-core 37 ]; 38 39 propagatedBuildInputs = [ 40 aiohttp 41 backoff 42 beautifulsoup4 43 docutils 44 pytz 45 voluptuous 46 websockets 47 ]; 48 49 nativeCheckInputs = [ 50 aresponses 51 pytest-aiohttp 52 pytest-asyncio 53 pytestCheckHook 54 types-pytz 55 ]; 56 57 disabledTests = [ 58 # simplipy/api.py:253: InvalidCredentialsError 59 "test_request_error_failed_retry" 60 "test_update_error" 61 # ClientConnectorError: Cannot connect to host auth.simplisafe.com:443 ssl:default [Temporary failure in name resolution] 62 "test_client_async_from_refresh_token_unknown_error" 63 ]; 64 65 disabledTestPaths = [ 66 # Ignore the examples as they are prefixed with test_ 67 "examples/" 68 ]; 69 70 pythonImportsCheck = [ 71 "simplipy" 72 ]; 73 74 __darwinAllowLocalNetworking = true; 75 76 meta = with lib; { 77 changelog = "https://github.com/bachya/simplisafe-python/releases/tag/${version}"; 78 description = "Python library the SimpliSafe API"; 79 homepage = "https://simplisafe-python.readthedocs.io/"; 80 license = with licenses; [ mit ]; 81 maintainers = with maintainers; [ fab ]; 82 }; 83}