1{ 2 lib, 3 asn1crypto, 4 buildPythonPackage, 5 certifi, 6 cffi, 7 charset-normalizer, 8 cython, 9 fetchPypi, 10 filelock, 11 idna, 12 keyring, 13 oscrypto, 14 packaging, 15 pandas, 16 platformdirs, 17 pyarrow, 18 pycryptodomex, 19 pyjwt, 20 pyopenssl, 21 pythonOlder, 22 pythonRelaxDepsHook, 23 pytz, 24 requests, 25 setuptools, 26 sortedcontainers, 27 tomlkit, 28 typing-extensions, 29 wheel, 30}: 31 32buildPythonPackage rec { 33 pname = "snowflake-connector-python"; 34 version = "3.8.1"; 35 pyproject = true; 36 37 disabled = pythonOlder "3.8"; 38 39 src = fetchPypi { 40 inherit pname version; 41 hash = "sha256-m8zhoNniEs7s9F7c6gLRjiBalfiMwEcK2kqLrLVCR9U="; 42 }; 43 44 build-system = [ 45 cython 46 setuptools 47 wheel 48 ]; 49 50 nativeBuildInputs = [ pythonRelaxDepsHook ]; 51 52 dependencies = [ 53 asn1crypto 54 certifi 55 cffi 56 charset-normalizer 57 filelock 58 idna 59 oscrypto 60 packaging 61 platformdirs 62 pycryptodomex 63 pyjwt 64 pyopenssl 65 pytz 66 requests 67 sortedcontainers 68 tomlkit 69 typing-extensions 70 ]; 71 72 passthru.optional-dependencies = { 73 pandas = [ 74 pandas 75 pyarrow 76 ]; 77 secure-local-storage = [ keyring ]; 78 }; 79 80 # Tests require encrypted secrets, see 81 # https://github.com/snowflakedb/snowflake-connector-python/tree/master/.github/workflows/parameters 82 doCheck = false; 83 84 pythonImportsCheck = [ 85 "snowflake" 86 "snowflake.connector" 87 ]; 88 89 meta = with lib; { 90 description = "Snowflake Connector for Python"; 91 homepage = "https://github.com/snowflakedb/snowflake-connector-python"; 92 changelog = "https://github.com/snowflakedb/snowflake-connector-python/blob/v${version}/DESCRIPTION.md"; 93 license = licenses.asl20; 94 maintainers = with maintainers; [ ]; 95 }; 96}