1{ 2 lib, 3 attrs, 4 boto3, 5 buildPythonPackage, 6 cryptography, 7 fetchFromGitHub, 8 mock, 9 pytest-mock, 10 pytestCheckHook, 11 pythonOlder, 12 setuptools, 13 wrapt, 14}: 15 16buildPythonPackage rec { 17 pname = "aws-encryption-sdk"; 18 version = "4.0.3"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.8"; 22 23 src = fetchFromGitHub { 24 owner = "aws"; 25 repo = "aws-encryption-sdk-python"; 26 tag = "v${version}"; 27 hash = "sha256-SlYXob61YLl96NKnmsGZTIU10bfwKYbhLsHjC/tXGI4="; 28 }; 29 30 build-system = [ setuptools ]; 31 32 dependencies = [ 33 attrs 34 boto3 35 cryptography 36 wrapt 37 ]; 38 39 nativeCheckInputs = [ 40 mock 41 pytest-mock 42 pytestCheckHook 43 ]; 44 45 enabledTestPaths = [ "test" ]; 46 47 disabledTestPaths = [ 48 # Tests require networking 49 "examples" 50 "test/integration" 51 # requires yet to be packaged aws-cryptographic-material-providers 52 "test/mpl" 53 ]; 54 55 disabledTests = [ 56 # pytest 8 compat issue 57 "test_happy_version" 58 ]; 59 60 pythonImportsCheck = [ "aws_encryption_sdk" ]; 61 62 meta = with lib; { 63 description = "Python implementation of the AWS Encryption SDK"; 64 homepage = "https://aws-encryption-sdk-python.readthedocs.io/"; 65 changelog = "https://github.com/aws/aws-encryption-sdk-python/blob/v${version}/CHANGELOG.rst"; 66 license = licenses.asl20; 67 maintainers = with maintainers; [ anthonyroussel ]; 68 }; 69}