1{ 2 lib, 3 aiohttp-retry, 4 aiohttp, 5 aiounittest, 6 buildPythonPackage, 7 cryptography, 8 django, 9 fetchFromGitHub, 10 mock, 11 multidict, 12 pyjwt, 13 pyngrok, 14 pytestCheckHook, 15 pythonAtLeast, 16 pythonOlder, 17 pytz, 18 requests, 19 setuptools, 20}: 21 22buildPythonPackage rec { 23 pname = "twilio"; 24 version = "9.8.2"; 25 pyproject = true; 26 27 disabled = pythonOlder "3.7"; 28 29 src = fetchFromGitHub { 30 owner = "twilio"; 31 repo = "twilio-python"; 32 tag = version; 33 hash = "sha256-ZOkXJ1NN3qmHABfOBpR1tECCIfAwwVMGyLBbU1jYowc="; 34 }; 35 36 build-system = [ setuptools ]; 37 38 dependencies = [ 39 aiohttp 40 aiohttp-retry 41 pyjwt 42 pyngrok 43 pytz 44 requests 45 ]; 46 47 nativeCheckInputs = [ 48 aiounittest 49 cryptography 50 django 51 mock 52 multidict 53 pytestCheckHook 54 ]; 55 56 disabledTests = [ 57 # Tests require network access 58 "test_set_default_user_agent" 59 "test_set_user_agent_extensions" 60 ]; 61 62 disabledTestPaths = [ 63 # Tests require API token 64 "tests/cluster/test_webhook.py" 65 "tests/cluster/test_cluster.py" 66 ]; 67 68 pythonImportsCheck = [ "twilio" ]; 69 70 meta = with lib; { 71 description = "Twilio API client and TwiML generator"; 72 homepage = "https://github.com/twilio/twilio-python/"; 73 changelog = "https://github.com/twilio/twilio-python/blob/${src.tag}/CHANGES.md"; 74 license = licenses.mit; 75 maintainers = with maintainers; [ fab ]; 76 }; 77}