1{ 2 lib, 3 boto3, 4 botocore, 5 buildPythonPackage, 6 fastparquet, 7 fetchPypi, 8 fsspec, 9 hatchling, 10 pandas, 11 pyarrow, 12 pythonOlder, 13 sqlalchemy, 14 tenacity, 15}: 16 17buildPythonPackage rec { 18 pname = "pyathena"; 19 version = "3.8.2"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.8"; 23 24 src = fetchPypi { 25 inherit pname version; 26 hash = "sha256-uVYnhxQJy6BvSZ/7JbKZPtE+uJkOtEZrd3uTokfZ3f8="; 27 }; 28 29 nativeBuildInputs = [ hatchling ]; 30 31 propagatedBuildInputs = [ 32 boto3 33 botocore 34 fsspec 35 tenacity 36 ]; 37 38 passthru.optional-dependencies = { 39 pandas = [ pandas ]; 40 sqlalchemy = [ sqlalchemy ]; 41 arrow = [ pyarrow ]; 42 fastparquet = [ fastparquet ]; 43 }; 44 45 # Nearly all tests depend on a working AWS Athena instance, 46 # therefore deactivating them. 47 # https://github.com/laughingman7743/PyAthena/#testing 48 doCheck = false; 49 50 pythonImportsCheck = [ "pyathena" ]; 51 52 meta = with lib; { 53 description = "Python DB API 2.0 (PEP 249) client for Amazon Athena"; 54 homepage = "https://github.com/laughingman7743/PyAthena/"; 55 changelog = "https://github.com/laughingman7743/PyAthena/releases/tag/v${version}"; 56 license = licenses.mit; 57 maintainers = with maintainers; [ turion ]; 58 }; 59}