Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 aiobotocore, 4 aiofiles, 5 buildPythonPackage, 6 chalice, 7 cryptography, 8 dill, 9 fetchFromGitHub, 10 moto, 11 poetry-core, 12 poetry-dynamic-versioning, 13 pytest-asyncio, 14 pytestCheckHook, 15 pythonOlder, 16 requests, 17}: 18 19buildPythonPackage rec { 20 pname = "aioboto3"; 21 version = "12.3.0"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.8"; 25 26 src = fetchFromGitHub { 27 owner = "terrycain"; 28 repo = "aioboto3"; 29 rev = "refs/tags/v${version}"; 30 hash = "sha256-GDuxy/V+j0LRJ2lbcRHMEAga+pdCbYIWhEt3ItrHMB4="; 31 }; 32 33 nativeBuildInputs = [ 34 poetry-core 35 poetry-dynamic-versioning 36 ]; 37 38 pythonRelaxDeps = [ "aiobotocore" ]; 39 40 propagatedBuildInputs = [ aiobotocore ] ++ aiobotocore.optional-dependencies.boto3; 41 42 passthru.optional-dependencies = { 43 chalice = [ chalice ]; 44 s3cse = [ cryptography ]; 45 }; 46 47 nativeCheckInputs = [ 48 aiofiles 49 dill 50 moto 51 pytest-asyncio 52 pytestCheckHook 53 requests 54 ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); 55 56 pythonImportsCheck = [ "aioboto3" ]; 57 58 disabledTests = [ 59 # Our moto package is not ready to support more tests 60 "encrypt_decrypt_aes_cbc" 61 "test_chalice_async" 62 "test_dynamo" 63 "test_flush_doesnt_reset_item_buffer" 64 "test_kms" 65 "test_s3" 66 ]; 67 68 meta = with lib; { 69 description = "Wrapper to use boto3 resources with the aiobotocore async backend"; 70 homepage = "https://github.com/terrycain/aioboto3"; 71 changelog = "https://github.com/terrycain/aioboto3/blob/${src.rev}/CHANGELOG.rst"; 72 license = licenses.asl20; 73 maintainers = with maintainers; [ mbalatsko ]; 74 }; 75}