Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
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.05.0"; 23 format = "pyproject"; 24 25 disabled = pythonOlder "3.9"; 26 27 src = fetchFromGitHub { 28 owner = "bachya"; 29 repo = pname; 30 rev = "refs/tags/${version}"; 31 hash = "sha256-dcWDB9tpKrFbnWf35HLDmgy2zNTzKNeJQrdtRXbSMvs="; 32 }; 33 34 nativeBuildInputs = [ 35 poetry-core 36 ]; 37 38 propagatedBuildInputs = [ 39 aiohttp 40 backoff 41 beautifulsoup4 42 docutils 43 pytz 44 voluptuous 45 websockets 46 ]; 47 48 nativeCheckInputs = [ 49 aresponses 50 pytest-aiohttp 51 pytest-asyncio 52 pytestCheckHook 53 types-pytz 54 ]; 55 56 disabledTests = [ 57 # simplipy/api.py:253: InvalidCredentialsError 58 "test_request_error_failed_retry" 59 "test_update_error" 60 # ClientConnectorError: Cannot connect to host auth.simplisafe.com:443 ssl:default [Temporary failure in name resolution] 61 "test_client_async_from_refresh_token_unknown_error" 62 ]; 63 64 disabledTestPaths = [ 65 # Ignore the examples as they are prefixed with test_ 66 "examples/" 67 ]; 68 69 pythonImportsCheck = [ 70 "simplipy" 71 ]; 72 73 __darwinAllowLocalNetworking = true; 74 75 meta = with lib; { 76 changelog = "https://github.com/bachya/simplisafe-python/releases/tag/${version}"; 77 description = "Python library the SimpliSafe API"; 78 homepage = "https://simplisafe-python.readthedocs.io/"; 79 license = with licenses; [ mit ]; 80 maintainers = with maintainers; [ fab ]; 81 }; 82}