1{ 2 backoff, 3 sparqlwrapper, 4 boto3, 5 buildPythonPackage, 6 fetchFromGitHub, 7 gremlinpython, 8 jsonpath-ng, 9 lib, 10 moto, 11 openpyxl, 12 opensearch-py, 13 pandas, 14 pg8000, 15 poetry-core, 16 progressbar2, 17 pyarrow, 18 pymysql, 19 pyodbc, 20 pyparsing, 21 pytestCheckHook, 22 pythonOlder, 23 pythonRelaxDepsHook, 24 redshift-connector, 25 requests-aws4auth, 26}: 27 28buildPythonPackage rec { 29 pname = "awswrangler"; 30 version = "3.7.3"; 31 pyproject = true; 32 33 disabled = pythonOlder "3.8"; 34 35 src = fetchFromGitHub { 36 owner = "aws"; 37 repo = "aws-sdk-pandas"; 38 rev = "refs/tags/${version}"; 39 hash = "sha256-gm6ieteW+NcY+AOLcMZLUPcSi2Z/Mo27rzd1i9imp5I="; 40 }; 41 42 pythonRelaxDeps = [ "packaging" ]; 43 44 build-system = [ poetry-core ]; 45 46 nativeBuildInputs = [ pythonRelaxDepsHook ]; 47 48 dependencies = [ 49 boto3 50 gremlinpython 51 jsonpath-ng 52 openpyxl 53 opensearch-py 54 pandas 55 pg8000 56 progressbar2 57 pyarrow 58 pymysql 59 redshift-connector 60 requests-aws4auth 61 ]; 62 63 passthru.optional-dependencies = { 64 sqlserver = [ pyodbc ]; 65 sparql = [ sparqlwrapper ]; 66 }; 67 68 nativeCheckInputs = [ 69 moto 70 pyparsing 71 pytestCheckHook 72 ]; 73 74 pythonImportsCheck = [ "awswrangler" ]; 75 76 pytestFlagsArray = [ 77 # Subset of tests that run in upstream CI (many others require credentials) 78 # https://github.com/aws/aws-sdk-pandas/blob/20fec775515e9e256e8cee5aee12966516608840/.github/workflows/minimal-tests.yml#L36-L43 79 "tests/unit/test_metadata.py" 80 "tests/unit/test_session.py" 81 "tests/unit/test_utils.py" 82 "tests/unit/test_moto.py" 83 ]; 84 85 meta = with lib; { 86 description = "Pandas on AWS"; 87 homepage = "https://github.com/aws/aws-sdk-pandas"; 88 changelog = "https://github.com/aws/aws-sdk-pandas/releases/tag/${version}"; 89 license = licenses.asl20; 90 maintainers = with maintainers; [ mcwitt ]; 91 }; 92}