snowflake-connector-python 5.0.0rc4__tar.gz → 5.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/Cargo.lock +7 -16
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/Cargo.toml +5 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/PKG-INFO +5 -6
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/README.md +1 -4
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/hatch_build.py +56 -20
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/protobuf/database_driver_v1.proto +29 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/pyproject.toml +29 -27
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/Cargo.toml +3 -8
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/build.rs +3 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/context.rs +2 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/converters/map.rs +187 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/mod.rs +10 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/number.rs +37 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/timezone.rs +7 -3
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/util.rs +61 -4
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/error.rs +67 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/iterator.rs +58 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/mod.rs +3 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/plan.rs +113 -17
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/scaled_f64.rs +1 -1
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/fixed.rs +49 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/int_values.rs +99 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/interval.rs +19 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/mod.rs +222 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/tests.rs +1178 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/time.rs +54 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/timestamp/mod.rs +72 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/timestamp/scale.rs +244 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/timestamp/tz.rs +36 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table/utils.rs +43 -0
- snowflake_connector_python-5.1.0/python_bridge/src/arrow/table_iterator.rs +361 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/lib.rs +4 -2
- snowflake_connector_python-5.1.0/rust-toolchain.toml +4 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/CHANGELOG.md +48 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/Cargo.toml +39 -46
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/README.md +27 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/connection.rs +383 -142
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/database.rs +4 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/error_kind.rs +38 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/global_state.rs +170 -86
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/logout.rs +5 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/query.rs +10 -7
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/result_set.rs +112 -11
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/statement.rs +84 -63
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/stream_transfer.rs +32 -10
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/validation.rs +218 -20
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/auth.rs +96 -23
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/bin/collect_chunk_data.rs +21 -9
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/bin/tls_client.rs +8 -4
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/connection_config.rs +403 -45
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/ini_loader.rs +58 -18
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/mod.rs +2 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/private_key.rs +1 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/resolver.rs +31 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/rest_parameters.rs +255 -18
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/token.rs +30 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/cache.rs +144 -150
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/disk_tests.rs +8 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/error.rs +7 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/integration_test.rs +7 -4
- snowflake_connector_python-5.1.0/sf_core/src/crl/manager.rs +161 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/mod.rs +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/validator.rs +7 -8
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/worker.rs +1 -10
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crypto/private_key.rs +77 -90
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/diagnostic/mod.rs +9 -10
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/env_vars.rs +4 -5
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/azure_transfer.rs +19 -13
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/cloud_http.rs +22 -24
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/gcs_transfer.rs +82 -16
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/mod.rs +14 -8
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/s3_transfer.rs +157 -65
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/types.rs +19 -20
- snowflake_connector_python-5.1.0/sf_core/src/handle_manager.rs +335 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/error.rs +8 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/log_manager.rs +312 -84
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/mod.rs +299 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/apis/database_driver_v1/converter.rs +98 -9
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/apis/database_driver_v1/mod.rs +56 -46
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/query_types/statement_type.rs +24 -3
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/async_exec.rs +65 -51
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/auth.rs +37 -8
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/error_context.rs +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/heartbeat.rs +17 -10
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/mod.rs +436 -66
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/dpop.rs +1 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/error.rs +1 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/random.rs +1 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/query_response.rs +130 -90
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/telemetry.rs +5 -4
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/aws.rs +573 -110
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/azure.rs +67 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/gcp.rs +4 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/mod.rs +12 -20
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/oidc.rs +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/stage_binding.rs +10 -5
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/environment.rs +67 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/mod.rs +21 -15
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/platform_detection/aws.rs +9 -3
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/platform_detection/mod.rs +112 -62
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/platform_detection/tests.rs +34 -28
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/serialization.rs +65 -3
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/session_batch.rs +13 -13
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/session_telemetry.rs +70 -62
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/snowflake_exporter.rs +33 -19
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/snowflake_processor.rs +38 -11
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/aws_http_client.rs +211 -55
- snowflake_connector_python-5.1.0/sf_core/src/tls/client.rs +1953 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/config.rs +80 -4
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/crl_verifier.rs +111 -59
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/crypto_module.rs +25 -14
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/error.rs +18 -2
- snowflake_connector_python-5.1.0/sf_core/src/tls/mod.rs +220 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/test_helpers.rs +19 -23
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/x509_utils.rs +8 -29
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/token_cache/mod.rs +2 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/config.rs +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/oauth.rs +17 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/password.rs +2 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/snowflake_test_client.rs +11 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/tls_proxy.rs +4 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/xp_backend/fixtures.rs +1 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/Cargo.lock +843 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/Cargo.toml +172 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/LICENSE +19 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/README.md +79 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/alg_tests.rs +648 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/aws_lc_rs_algs.rs +381 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/cert.rs +749 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/crl/mod.rs +374 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/crl/types.rs +1291 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha256-absent-params.der +1 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha384-absent-params.der +1 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha512-absent-params.der +1 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMDVTLSCAG3B.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMDVTLSCAG3C.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMEVTLSCAG3B.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMEVTLSCAG3C.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVCSCAG3B.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVCSCAG3C.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVTLSCAG3B.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVTLSCAG3C.spki.der +0 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/der.rs +908 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/end_entity.rs +241 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/error.rs +466 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/lib.rs +221 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/ring_algs.rs +303 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/rpk_entity.rs +84 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/signed_data.rs +269 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/subject_name/dns_name.rs +1059 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/subject_name/ip_address.rs +706 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/subject_name/mod.rs +472 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/test_utils.rs +47 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/time.rs +283 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/trust_anchor.rs +141 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/verify_cert.rs +1523 -0
- snowflake_connector_python-5.1.0/sf_core/third_party/rustls-webpki/src/x509.rs +119 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_params_spec/src/lib.rs +557 -223
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_params_spec/tests/odbc_legacy_compatibility.rs +26 -23
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/text.rs +2 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/__init__.py +5 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_common/wif_util.py +5 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/api_client/client_api.py +11 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/arrow.py +14 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/arrow_stream_async.py +8 -7
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/arrow_stream_utils.py +34 -11
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/authenticator_type.py +1 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/connection.py +1 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection_config_mixin.py +7 -1
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/base.py +8 -5
- snowflake_connector_python-5.1.0/src/snowflake/connector/_internal/fips.py +28 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DateConverter.cpp +5 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecimalConverter.cpp +5 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeConverter.cpp +6 -2
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/arrow_stream_iterator.cpp +220 -220
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/arrow_stream_iterator.pyx +1 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/Logging/logging.cpp +1 -3
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/Logging/logging.hpp +3 -0
- snowflake_connector_python-5.1.0/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_pb2.py +408 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_pb2.pyi +95 -6
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_services.py +33 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/result_batch.py +4 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/utils.py +11 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/connection/_connection.py +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/cursor/_base.py +51 -10
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/result_batch.py +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/connection/_connection.py +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/connection_config.py +44 -13
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/_base.py +47 -5
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/network.py +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/result_batch.py +2 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/version.py +1 -1
- snowflake_connector_python-5.0.0rc4/sf_core/src/handle_manager.rs +0 -136
- snowflake_connector_python-5.0.0rc4/sf_core/src/tls/client.rs +0 -940
- snowflake_connector_python-5.0.0rc4/sf_core/src/tls/mod.rs +0 -230
- snowflake_connector_python-5.0.0rc4/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_pb2.py +0 -402
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/.gitignore +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/build_common.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/ci/anaconda/recipe/README.md +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/error_trace/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/error_trace/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/error_trace_derive/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/error_trace_derive/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/Cargo.lock +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/README.md +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/csharp_generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/helpers.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/java_generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/json_generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/python_generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/generators/rust_generator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/main.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/protobuf.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_generator/src/protoc_installer.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_utils/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/proto_utils/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/async_iterator.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/batch_converter.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/binary.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/boolean.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/date.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/decfloat.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/decode.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/interval.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/numpy.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/real.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/test_util.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/text.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/time.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/timestamp_ltz.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/timestamp_ntz.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/timestamp_tz.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/converters/vector.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/stream.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/src/arrow/test_support.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/stub_gen/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/stub_gen/src/main.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/benches/prefetch_bench.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/build.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/cbindgen-xp-providers.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/exports.def +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/include/sf_core_providers.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/alter_session_parser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/async_query_registry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/error.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/final_session_names.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/get_objects.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/heartbeat.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/like_pattern.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/multistatement.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/query_submit.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/database_driver_v1/spcs_token.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/apis/operation_ctx.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/arrow_utils.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/bin/README.md +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/bin/spcs_probe.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/c_api.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/arrow_parser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/async_arrow_batch_fetcher.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/error.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/http_downloader.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/json_parser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/memory_budget.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/mock.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/chunks/prefetch.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/compression.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/compression_types.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/config_manager.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/configured_redirect_uri.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/error_context.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/logging_config_loader.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/logout.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/param_registry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/param_store.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/path_resolver.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/retry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/settings.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/config/toml_loader.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/certificate_parser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crl/config.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/crypto/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/encryption.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/multipart.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/path_expansion.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/scheduler.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/file_manager/spool.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/fs_adapter.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/fs_lock.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/http/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/http/retry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/c_api.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/callback_layer.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/logging/opentelemetry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/perf_timing/c_api.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/perf_timing/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/apis/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/c_api.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/config_setting_ext.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/generated.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/protobuf/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/query_types/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/query_types/row_type.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/refresh.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/browser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/external_browser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/logout.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/native_okta.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/authorization_code.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/client_credentials.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/http_client.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/loopback_server.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/pkce.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/oauth/token.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/prompt_lock.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/query_context_cache.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/query_request.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/sql_state.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/rest/snowflake/workload_identity/host_allowlist.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/sensitive.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/os_details.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/platform_detection/azure.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/platform_detection/gcp.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/telemetry/types.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/tls/revocation.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/token_cache/file_cache.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/token_cache/keyring_cache.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/utils/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/utils/sync.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/xp_backend/connection_settings.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/xp_backend/ffi.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/xp_backend/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/xp_backend/registry.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/src/xp_backend/response_compat.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/arrow_deserialize.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/arrow_deserialize_macro/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/arrow_deserialize_macro/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/arrow_extract_value.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/arrow_result_helper.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/browser_opener.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/cloud_gating.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/connect_proxy.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/counting_proxy.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/crypto_provider.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/dead_proxy.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/file_utils.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mitm_port_detector.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mitm_proxy.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/auth.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/external_browser.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/mfa.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/okta.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/put_get.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/query.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mocks/session.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/mod.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/private_key_helper.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/put_get_common.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/test_server.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/common/test_utils.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/xp_backend/fake_host.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_core/tests/xp_backend/link_sf_core.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_params_spec/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/Cargo.toml +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/binary.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/boolean.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/civil.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/clock.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/date.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/decfloat.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/error.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/fixed.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/interval.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/lib.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/nullable.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/real.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/time.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/timestamp.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/traits.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/sf_types/src/vector.rs +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_common/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_common/extras.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_common/telemetry.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/_private_key_helper.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/api_client/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/api_client/bridge.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/arrow_context.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/arrow_stream_iterator.pyi +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/backward_compatibility.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/binding_converters.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/config_utils.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/connection_types.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/constants.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/decorators.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/freezable_proxy.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/connection/queries.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/cursor_types.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/decorators.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/query_result.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/query_result_waiter.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/result_metadata.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/cursor/result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/decorators.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/error_kinds.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/errorcode.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/errorhandler.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/logging/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/logging/config.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/logging/core_logger.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/logging/native_extension_logger.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/logout_config_mapping.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrayConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrayConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrowTableConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrowTableConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BinaryConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BinaryConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BooleanConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BooleanConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowIterator.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowIterator.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamIterator.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamIterator.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamTableIterator.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamTableIterator.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ConverterUtil.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ConverterUtil.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DateConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecFloatConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecFloatConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecimalConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FixedSizeListConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FixedSizeListConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FloatConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FloatConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IColumnConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntervalConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntervalConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/LICENSE.txt +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/MapConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/MapConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ObjectConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ObjectConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Common.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Common.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Helpers.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Helpers.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/SnowflakeType.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/SnowflakeType.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/StringConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/StringConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeStampConverter.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeStampConverter.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/macros.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/time.cpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/time.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_accessors.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_alloc.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_assert.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_builder.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_emitter.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_endian.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_epilogue.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_flatbuffers.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_identifier.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_iov.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_prologue.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_refmap.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_rtconfig.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_types.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_verifier.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/flatcc_portable.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/paligned_alloc.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pattributes.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic_pop.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic_push.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pendian.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pendian_detect.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pinline.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pinttypes.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/portable.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/portable_basic.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstatic_assert.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstdalign.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstdint.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/punaligned.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pversion.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pwarnings.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc.c +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.c +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.hpp +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow_ipc.c +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow_ipc.h +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/protobuf_gen/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/protobuf_gen/proto_exception.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/snowflake_restful.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/snowpark_backcompat_helpers.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/sqlstate.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/statement_utils.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/text_utils.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/type_codes.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/_internal/write_pandas_operation.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/README.md +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/connection/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/cursor/_dict_cursor.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/cursor/_result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/cursor/_snowflake_cursor.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/aio/pandas_tools.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/auth/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/auth/workload_identity.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/compat.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/config_manager.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/connection/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/constants.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/_chunked_download_reader.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/_dict_cursor.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/_result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/cursor/_snowflake_cursor.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/description.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/errors.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/pandas_tools.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/py.typed +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/telemetry.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/time_util.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/types.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/src/snowflake/connector/util_text.py +0 -0
- {snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/tests/README.md +0 -0
|
@@ -2434,15 +2434,6 @@ dependencies = [
|
|
|
2434
2434
|
"either",
|
|
2435
2435
|
]
|
|
2436
2436
|
|
|
2437
|
-
[[package]]
|
|
2438
|
-
name = "itertools"
|
|
2439
|
-
version = "0.11.0"
|
|
2440
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2441
|
-
checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
|
|
2442
|
-
dependencies = [
|
|
2443
|
-
"either",
|
|
2444
|
-
]
|
|
2445
|
-
|
|
2446
2437
|
[[package]]
|
|
2447
2438
|
name = "itertools"
|
|
2448
2439
|
version = "0.14.0"
|
|
@@ -3646,7 +3637,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
3646
3637
|
checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
|
|
3647
3638
|
dependencies = [
|
|
3648
3639
|
"anyhow",
|
|
3649
|
-
"itertools 0.
|
|
3640
|
+
"itertools 0.10.5",
|
|
3650
3641
|
"proc-macro2",
|
|
3651
3642
|
"quote",
|
|
3652
3643
|
"syn 2.0.117",
|
|
@@ -4230,9 +4221,7 @@ dependencies = [
|
|
|
4230
4221
|
|
|
4231
4222
|
[[package]]
|
|
4232
4223
|
name = "rustls-webpki"
|
|
4233
|
-
version = "0.103.
|
|
4234
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
4235
|
-
checksum = "8572f3c2cb9934231157b45499fc41e1f58c589fdfb81a844ba873265e80f8eb"
|
|
4224
|
+
version = "0.103.16"
|
|
4236
4225
|
dependencies = [
|
|
4237
4226
|
"aws-lc-rs",
|
|
4238
4227
|
"ring",
|
|
@@ -4423,6 +4412,7 @@ dependencies = [
|
|
|
4423
4412
|
"async-trait",
|
|
4424
4413
|
"aws-config",
|
|
4425
4414
|
"aws-credential-types",
|
|
4415
|
+
"aws-lc-fips-sys",
|
|
4426
4416
|
"aws-lc-rs",
|
|
4427
4417
|
"aws-runtime",
|
|
4428
4418
|
"aws-sdk-s3",
|
|
@@ -4452,7 +4442,6 @@ dependencies = [
|
|
|
4452
4442
|
"futures",
|
|
4453
4443
|
"glob",
|
|
4454
4444
|
"hex",
|
|
4455
|
-
"hmac",
|
|
4456
4445
|
"html-escape",
|
|
4457
4446
|
"http 1.3.1",
|
|
4458
4447
|
"http-body 1.0.1",
|
|
@@ -4485,6 +4474,7 @@ dependencies = [
|
|
|
4485
4474
|
"rustls",
|
|
4486
4475
|
"rustls-native-certs",
|
|
4487
4476
|
"rustls-pemfile",
|
|
4477
|
+
"rustls-webpki",
|
|
4488
4478
|
"scopeguard",
|
|
4489
4479
|
"serde",
|
|
4490
4480
|
"serde_json",
|
|
@@ -4515,6 +4505,7 @@ dependencies = [
|
|
|
4515
4505
|
"urlencoding",
|
|
4516
4506
|
"uuid",
|
|
4517
4507
|
"webbrowser",
|
|
4508
|
+
"webpki-roots",
|
|
4518
4509
|
"wiremock",
|
|
4519
4510
|
"x509-cert",
|
|
4520
4511
|
"x509-parser",
|
|
@@ -5599,9 +5590,9 @@ dependencies = [
|
|
|
5599
5590
|
|
|
5600
5591
|
[[package]]
|
|
5601
5592
|
name = "webpki-roots"
|
|
5602
|
-
version = "1.0.
|
|
5593
|
+
version = "1.0.10"
|
|
5603
5594
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
5604
|
-
checksum = "
|
|
5595
|
+
checksum = "1c1c8e20c8a38fc7d65abfe74eb7280e4aa667e8eec8bc84996d2874810748d9"
|
|
5605
5596
|
dependencies = [
|
|
5606
5597
|
"rustls-pki-types",
|
|
5607
5598
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: snowflake-connector-python
|
|
3
|
-
Version: 5.0
|
|
3
|
+
Version: 5.1.0
|
|
4
4
|
Summary: Snowflake DB driver for Python
|
|
5
5
|
Project-URL: Homepage, https://github.com/snowflakedb/drivers
|
|
6
6
|
Project-URL: Bug Reports, https://github.com/snowflakedb/drivers/issues
|
|
@@ -16,6 +16,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.13
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.14
|
|
19
|
+
Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
|
|
19
20
|
Classifier: Topic :: Database
|
|
20
21
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
21
22
|
Requires-Python: >=3.11
|
|
@@ -32,7 +33,7 @@ Requires-Dist: types-protobuf; extra == 'dev'
|
|
|
32
33
|
Requires-Dist: types-pytz; extra == 'dev'
|
|
33
34
|
Provides-Extra: pandas
|
|
34
35
|
Requires-Dist: pandas<3.0.0,>=1.0.0; (python_version < '3.13') and extra == 'pandas'
|
|
35
|
-
Requires-Dist: pandas
|
|
36
|
+
Requires-Dist: pandas<3.0.0,>=2.1.2; (python_version >= '3.13') and extra == 'pandas'
|
|
36
37
|
Requires-Dist: pyarrow>=14.0.1; extra == 'pandas'
|
|
37
38
|
Provides-Extra: pyarrow
|
|
38
39
|
Requires-Dist: pyarrow>=14.0.1; extra == 'pyarrow'
|
|
@@ -45,6 +46,7 @@ Requires-Dist: numpy>=2.1.0; (python_version >= '3.13') and extra == 'test'
|
|
|
45
46
|
Requires-Dist: pytest-cov; extra == 'test'
|
|
46
47
|
Requires-Dist: pytest-json-report; extra == 'test'
|
|
47
48
|
Requires-Dist: pytest-randomly; extra == 'test'
|
|
49
|
+
Requires-Dist: pytest-rerunfailures; extra == 'test'
|
|
48
50
|
Requires-Dist: pytest-split; extra == 'test'
|
|
49
51
|
Requires-Dist: pytest-timeout; extra == 'test'
|
|
50
52
|
Requires-Dist: pytest-xdist; extra == 'test'
|
|
@@ -57,9 +59,6 @@ Description-Content-Type: text/markdown
|
|
|
57
59
|
|
|
58
60
|
# Snowflake Connector for Python
|
|
59
61
|
|
|
60
|
-
> [!CAUTION]
|
|
61
|
-
> This version of the driver is in public preview and is not ready for use with production data and may be unstable.
|
|
62
|
-
|
|
63
62
|
This package includes the Snowflake Connector for Python, which conforms to the [Python DB API 2.0](https://www.python.org/dev/peps/pep-0249/) specification.
|
|
64
63
|
|
|
65
64
|
The Snowflake Connector for Python provides an interface for developing Python
|
|
@@ -186,4 +185,4 @@ PYTHON_REFERENCE_DRIVER_VERSION='==4.3.0' hatch run reference:test
|
|
|
186
185
|
## References
|
|
187
186
|
|
|
188
187
|
- [PEP 249 - Python Database API Specification v2.0](https://peps.python.org/pep-0249/)
|
|
189
|
-
- [Python Database API Specification v2.0](https://www.python.org/dev/peps/pep-0249/)
|
|
188
|
+
- [Python Database API Specification v2.0](https://www.python.org/dev/peps/pep-0249/)
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
# Snowflake Connector for Python
|
|
2
2
|
|
|
3
|
-
> [!CAUTION]
|
|
4
|
-
> This version of the driver is in public preview and is not ready for use with production data and may be unstable.
|
|
5
|
-
|
|
6
3
|
This package includes the Snowflake Connector for Python, which conforms to the [Python DB API 2.0](https://www.python.org/dev/peps/pep-0249/) specification.
|
|
7
4
|
|
|
8
5
|
The Snowflake Connector for Python provides an interface for developing Python
|
|
@@ -129,4 +126,4 @@ PYTHON_REFERENCE_DRIVER_VERSION='==4.3.0' hatch run reference:test
|
|
|
129
126
|
## References
|
|
130
127
|
|
|
131
128
|
- [PEP 249 - Python Database API Specification v2.0](https://peps.python.org/pep-0249/)
|
|
132
|
-
- [Python Database API Specification v2.0](https://www.python.org/dev/peps/pep-0249/)
|
|
129
|
+
- [Python Database API Specification v2.0](https://www.python.org/dev/peps/pep-0249/)
|
|
@@ -125,15 +125,38 @@ class BuildHook(BuildHookInterface):
|
|
|
125
125
|
build_data["pure_python"] = False
|
|
126
126
|
build_data["infer_tag"] = True
|
|
127
127
|
|
|
128
|
+
def _fips_requested(self) -> bool:
|
|
129
|
+
"""Return whether this build should link the FIPS module.
|
|
130
|
+
|
|
131
|
+
``SNOWFLAKE_FIPS`` applies only when the project root is an unpacked
|
|
132
|
+
sdist (it carries ``PKG-INFO``). A checkout, an editable install, or a
|
|
133
|
+
wheel build fails when the variable is set.
|
|
134
|
+
"""
|
|
135
|
+
if os.environ.get("SNOWFLAKE_FIPS", "").lower() not in ("1", "true"):
|
|
136
|
+
return False
|
|
137
|
+
if (Path(self.root) / "PKG-INFO").is_file():
|
|
138
|
+
return True
|
|
139
|
+
raise RuntimeError(
|
|
140
|
+
"SNOWFLAKE_FIPS is set, but this build is not an unpacked sdist "
|
|
141
|
+
"(PKG-INFO is absent). The variable applies only to an sdist install."
|
|
142
|
+
)
|
|
143
|
+
|
|
128
144
|
def _select_core_extension(self, build_data: dict[str, Any]) -> None:
|
|
129
145
|
"""Force-include only the sf_core_python binary matching this interpreter."""
|
|
130
146
|
ext_name = f"sf_core_python{sysconfig.get_config_var('EXT_SUFFIX')}"
|
|
131
|
-
|
|
147
|
+
core_dir = Path(self.root) / "src" / "snowflake" / "connector" / "_core"
|
|
148
|
+
core_ext = core_dir / ext_name
|
|
132
149
|
if not core_ext.is_file():
|
|
133
150
|
return
|
|
134
|
-
build_data.setdefault("force_include", {})
|
|
135
|
-
|
|
136
|
-
|
|
151
|
+
force_include = build_data.setdefault("force_include", {})
|
|
152
|
+
force_include[str(core_ext)] = f"snowflake/connector/_core/{ext_name}"
|
|
153
|
+
# macOS and Windows sdist installs link shared aws-lc libraries that
|
|
154
|
+
# must ship beside the extension. Linux links that module statically.
|
|
155
|
+
if not self._fips_requested():
|
|
156
|
+
return
|
|
157
|
+
for lib in core_dir.iterdir():
|
|
158
|
+
if lib.is_file() and "aws_lc_fips" in lib.name and lib.suffix in (".dylib", ".so", ".dll"):
|
|
159
|
+
force_include[str(lib)] = f"snowflake/connector/_core/{lib.name}"
|
|
137
160
|
|
|
138
161
|
def _generate_protobuf(self) -> None:
|
|
139
162
|
"""Generate Python protobuf code using the Rust proto_generator binary."""
|
|
@@ -146,8 +169,7 @@ class BuildHook(BuildHookInterface):
|
|
|
146
169
|
|
|
147
170
|
if not proto_input.exists():
|
|
148
171
|
raise RuntimeError(
|
|
149
|
-
f"Proto file not found at {proto_input}. "
|
|
150
|
-
"Cannot build package without protobuf definitions."
|
|
172
|
+
f"Proto file not found at {proto_input}. Cannot build package without protobuf definitions."
|
|
151
173
|
)
|
|
152
174
|
|
|
153
175
|
cargo_manifest = python_dir / "Cargo.toml"
|
|
@@ -156,8 +178,7 @@ class BuildHook(BuildHookInterface):
|
|
|
156
178
|
# Rust toolchain), fall back to previously generated files if they exist.
|
|
157
179
|
if any(protobuf_gen_dir.glob("*_pb2.py")):
|
|
158
180
|
warnings.warn(
|
|
159
|
-
"Cargo.toml not found; skipping protobuf regeneration. "
|
|
160
|
-
"Using previously generated protobuf files.",
|
|
181
|
+
"Cargo.toml not found; skipping protobuf regeneration. Using previously generated protobuf files.",
|
|
161
182
|
stacklevel=1,
|
|
162
183
|
)
|
|
163
184
|
return
|
|
@@ -315,11 +336,13 @@ class BuildHook(BuildHookInterface):
|
|
|
315
336
|
# Suppress warnings for vendored/generated C files (Unix only, GCC/Clang flags)
|
|
316
337
|
if is_unix and src.endswith(vendored_c_files):
|
|
317
338
|
extra_postargs = list(extra_postargs)
|
|
318
|
-
extra_postargs.extend(
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
339
|
+
extra_postargs.extend(
|
|
340
|
+
[
|
|
341
|
+
"-Wno-unused-variable",
|
|
342
|
+
"-Wno-unused-const-variable",
|
|
343
|
+
"-Wno-unreachable-code",
|
|
344
|
+
]
|
|
345
|
+
)
|
|
323
346
|
return original_compile(obj, src, ext_arg, cc_args, extra_postargs, pp_opts)
|
|
324
347
|
|
|
325
348
|
self.compiler._compile = new_compile
|
|
@@ -344,7 +367,6 @@ class BuildHook(BuildHookInterface):
|
|
|
344
367
|
Produces a version-tagged ``sf_core_python.<EXT_SUFFIX>`` native
|
|
345
368
|
extension (e.g. ``.cpython-313-darwin.so`` / ``.cp313-win_amd64.pyd``).
|
|
346
369
|
"""
|
|
347
|
-
|
|
348
370
|
if os.environ.get("SKIP_CORE_BUILD", "").lower() in self.POSITIVE_VALUES:
|
|
349
371
|
return
|
|
350
372
|
|
|
@@ -380,9 +402,8 @@ class BuildHook(BuildHookInterface):
|
|
|
380
402
|
if os.environ.get("SF_PERF_METRICS", "").lower() in ("1", "true"):
|
|
381
403
|
extra_cargo_args.extend(["--features", "sf_core/perf_timing"])
|
|
382
404
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
extra_cargo_args.extend(["--features", "native-arrow"])
|
|
405
|
+
if self._fips_requested():
|
|
406
|
+
extra_cargo_args.extend(["--features", "fips"])
|
|
386
407
|
|
|
387
408
|
# Use a stable target dir when CORE_CARGO_TARGET_DIR is set (enables
|
|
388
409
|
# incremental Rust compilation and CI caching). Otherwise fall back to a
|
|
@@ -465,9 +486,24 @@ class BuildHook(BuildHookInterface):
|
|
|
465
486
|
found_core = True
|
|
466
487
|
break
|
|
467
488
|
if not found_core:
|
|
468
|
-
raise Exception(
|
|
469
|
-
|
|
470
|
-
|
|
489
|
+
raise Exception(f"No sf_core_python shared library (.dll/.so/.dylib) found in {release_dir}")
|
|
490
|
+
|
|
491
|
+
# aws-lc-fips-sys emits its shared libraries under release/build/, not
|
|
492
|
+
# release/. Copy those by name; do not bundle the rest of the tree.
|
|
493
|
+
copied_fips: set[str] = set()
|
|
494
|
+
if self._fips_requested():
|
|
495
|
+
for lib in release_dir.rglob("*"):
|
|
496
|
+
if not lib.is_file() or "aws_lc_fips" not in lib.name:
|
|
497
|
+
continue
|
|
498
|
+
if lib.suffix not in (".dylib", ".so", ".dll") or lib.name in copied_fips:
|
|
499
|
+
continue
|
|
500
|
+
copied_fips.add(lib.name)
|
|
501
|
+
lib_tmp = target_dir / (lib.name + ".tmp")
|
|
502
|
+
shutil.copy2(lib, lib_tmp)
|
|
503
|
+
os.replace(lib_tmp, target_dir / lib.name)
|
|
504
|
+
for old in target_dir.iterdir():
|
|
505
|
+
if old.is_file() and "aws_lc_fips" in old.name and old.name not in copied_fips:
|
|
506
|
+
old.unlink()
|
|
471
507
|
|
|
472
508
|
# No OpenSSL DLLs are bundled next to sf_core_python. The driver
|
|
473
509
|
# stopped linking OpenSSL entirely; `openssl` survives only as an
|
|
@@ -37,6 +37,18 @@ enum ErrorKind {
|
|
|
37
37
|
ERROR_KIND_STAGE_BINDING = 15;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
+
// Distinguishes ERROR_KIND_IO failures that share one kind but different
|
|
41
|
+
// legacy JDBC vendor codes. Unset when kind is not ERROR_KIND_IO, and when
|
|
42
|
+
// an I/O failure has no JDBC vendor code.
|
|
43
|
+
enum IoClass {
|
|
44
|
+
IO_CLASS_UNSPECIFIED = 0;
|
|
45
|
+
IO_CLASS_GENERIC = 1;
|
|
46
|
+
IO_CLASS_NETWORK = 2;
|
|
47
|
+
IO_CLASS_FILE_UPLOAD = 3;
|
|
48
|
+
IO_CLASS_FILE_DOWNLOAD = 4;
|
|
49
|
+
IO_CLASS_NO_SPACE_LEFT = 5;
|
|
50
|
+
}
|
|
51
|
+
|
|
40
52
|
// Info codes corresponding to Thrift InfoCode enum
|
|
41
53
|
enum InfoCode {
|
|
42
54
|
INFO_CODE_UNSPECIFIED = 0;
|
|
@@ -120,6 +132,8 @@ message DriverException {
|
|
|
120
132
|
// What the abort-request fired on cancellation achieved. Set only when kind is
|
|
121
133
|
// ERROR_KIND_CANCELLED *and* an abort was actually issued; unset otherwise.
|
|
122
134
|
optional CancellationAbortOutcome cancellation_abort_outcome = 13;
|
|
135
|
+
// Present when kind is ERROR_KIND_IO and the failure has a legacy JDBC vendor code.
|
|
136
|
+
optional IoClass io_class = 14;
|
|
123
137
|
}
|
|
124
138
|
|
|
125
139
|
// Column metadata for description
|
|
@@ -288,6 +302,7 @@ message WrapperIdentity {
|
|
|
288
302
|
optional string language_version = 4;
|
|
289
303
|
optional string language_compiler = 5;
|
|
290
304
|
optional string release_type = 6;
|
|
305
|
+
optional string application_path = 7;
|
|
291
306
|
}
|
|
292
307
|
|
|
293
308
|
message ConnectionInitRequest {
|
|
@@ -1015,6 +1030,15 @@ message ConfigGetPathsResponse {
|
|
|
1015
1030
|
string connections_file = 2;
|
|
1016
1031
|
}
|
|
1017
1032
|
|
|
1033
|
+
// Reports whether this process is the FIPS driver. Does not open a connection.
|
|
1034
|
+
message DriverGetFipsStatusRequest {}
|
|
1035
|
+
|
|
1036
|
+
message DriverGetFipsStatusResponse {
|
|
1037
|
+
// True when this binary was built with the fips feature and its linked TLS
|
|
1038
|
+
// provider is in FIPS mode. A standard build returns false.
|
|
1039
|
+
bool is_fips = 1;
|
|
1040
|
+
}
|
|
1041
|
+
|
|
1018
1042
|
// =============================================================================
|
|
1019
1043
|
// WORKLOAD IDENTITY FEDERATION (WIF) - standalone attestation
|
|
1020
1044
|
// =============================================================================
|
|
@@ -1039,6 +1063,8 @@ message WifCreateAttestationRequest {
|
|
|
1039
1063
|
// of the default pre-signed GetCallerIdentity attestation. Takes precedence
|
|
1040
1064
|
// over SNOWFLAKE_ENABLE_AWS_WIF_OUTBOUND_TOKEN.
|
|
1041
1065
|
optional bool aws_use_outbound_token = 5;
|
|
1066
|
+
// AWS STS hostname override. Empty/unset uses the regional STS default.
|
|
1067
|
+
optional string wif_host = 6;
|
|
1042
1068
|
}
|
|
1043
1069
|
|
|
1044
1070
|
message WifCreateAttestationResponse {
|
|
@@ -1081,6 +1107,9 @@ message TelemetrySendLogRequest {
|
|
|
1081
1107
|
// Database Driver service definition
|
|
1082
1108
|
service DatabaseDriver {
|
|
1083
1109
|
option (service_error) = "DriverException";
|
|
1110
|
+
// Available without a database or connection handle, even in standard builds.
|
|
1111
|
+
rpc DriverGetFipsStatus(DriverGetFipsStatusRequest) returns (DriverGetFipsStatusResponse);
|
|
1112
|
+
|
|
1084
1113
|
// Database operations
|
|
1085
1114
|
rpc DatabaseNew(DatabaseNewRequest) returns (DatabaseNewResponse);
|
|
1086
1115
|
rpc DatabaseSetOptions(DatabaseSetOptionsRequest) returns (DatabaseSetOptionsResponse);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["hatchling", "editables", "Cython", "setuptools", "mypy-protobuf~=5.0"]
|
|
2
|
+
requires = ["hatchling", "editables", "Cython>=3.1", "setuptools", "mypy-protobuf~=5.0"]
|
|
3
3
|
build-backend = "hatchling.build"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
@@ -20,6 +20,7 @@ classifiers = [
|
|
|
20
20
|
"Programming Language :: Python :: 3.12",
|
|
21
21
|
"Programming Language :: Python :: 3.13",
|
|
22
22
|
"Programming Language :: Python :: 3.14",
|
|
23
|
+
"Programming Language :: Python :: Free Threading :: 2 - Beta",
|
|
23
24
|
]
|
|
24
25
|
requires-python = ">=3.11"
|
|
25
26
|
dependencies = [
|
|
@@ -47,7 +48,7 @@ pyarrow = [
|
|
|
47
48
|
pandas = [
|
|
48
49
|
"pyarrow>=14.0.1",
|
|
49
50
|
"pandas>=1.0.0,<3.0.0; python_version < '3.13'",
|
|
50
|
-
"pandas>=2.1.2; python_version >= '3.13'",
|
|
51
|
+
"pandas>=2.1.2,<3.0.0; python_version >= '3.13'",
|
|
51
52
|
]
|
|
52
53
|
test = [
|
|
53
54
|
"pytest>=8",
|
|
@@ -57,6 +58,7 @@ test = [
|
|
|
57
58
|
"pytest-xdist",
|
|
58
59
|
"pytest-randomly",
|
|
59
60
|
"pytest-timeout",
|
|
61
|
+
"pytest-rerunfailures",
|
|
60
62
|
"hypothesis",
|
|
61
63
|
"requests",
|
|
62
64
|
"brotli",
|
|
@@ -101,6 +103,7 @@ exclude = [
|
|
|
101
103
|
"src/snowflake/connector/_internal/nanoarrow_cpp/scripts",
|
|
102
104
|
# Exclude Rust build artifacts
|
|
103
105
|
"sf_core/target/",
|
|
106
|
+
"sf_core/third_party/rustls-webpki/target/",
|
|
104
107
|
"python_bridge/target/",
|
|
105
108
|
"sf_params_spec/target/",
|
|
106
109
|
"sf_types/target/",
|
|
@@ -109,6 +112,9 @@ exclude = [
|
|
|
109
112
|
"sf_core/tests/e2e/",
|
|
110
113
|
"sf_core/tests/integration/",
|
|
111
114
|
"sf_core/tests/*.rs",
|
|
115
|
+
# Vendored rustls-webpki unit-test fixtures. The library build does not read them.
|
|
116
|
+
"sf_core/third_party/rustls-webpki/tests/",
|
|
117
|
+
"sf_core/third_party/rustls-webpki/third-party/",
|
|
112
118
|
]
|
|
113
119
|
|
|
114
120
|
# Individual files need force-include (file symlinks are not dereferenced)
|
|
@@ -116,6 +122,7 @@ exclude = [
|
|
|
116
122
|
"Cargo.toml.sdist" = "Cargo.toml"
|
|
117
123
|
"Cargo.lock.sdist" = "Cargo.lock"
|
|
118
124
|
"../build_common.rs" = "build_common.rs"
|
|
125
|
+
"../rust-toolchain.toml" = "rust-toolchain.toml"
|
|
119
126
|
|
|
120
127
|
[tool.hatch.build.targets.wheel]
|
|
121
128
|
packages = ["src/snowflake"]
|
|
@@ -139,6 +146,8 @@ testpaths = ["tests"]
|
|
|
139
146
|
python_files = ["test_*.py"]
|
|
140
147
|
python_classes = ["Test*"]
|
|
141
148
|
python_functions = ["test_*"]
|
|
149
|
+
# Dedicated plugin dir only — do not put all of scripts/ on pythonpath (import shadow).
|
|
150
|
+
pythonpath = ["../scripts/pytest_junit_retry_plugin"]
|
|
142
151
|
addopts = [
|
|
143
152
|
"--strict-markers",
|
|
144
153
|
"--strict-config",
|
|
@@ -147,6 +156,10 @@ addopts = [
|
|
|
147
156
|
# minimum 8 workers configured via pytest_xdist_auto_num_workers in conftest.py
|
|
148
157
|
"-n", "auto",
|
|
149
158
|
"--max-worker-restart=4",
|
|
159
|
+
# Two extra attempts after the first failure (3 total).
|
|
160
|
+
"--reruns", "2",
|
|
161
|
+
# Stock junitxml keeps only the last attempt; this plugin writes flakyFailure.
|
|
162
|
+
"-p", "pytest_junit_retry_plugin",
|
|
150
163
|
# Flaky tests are excluded by default; the python_flaky_tests CI job
|
|
151
164
|
# overrides this with `-m flaky` to run them in isolation.
|
|
152
165
|
"-m", "not flaky and not requires_no_mfa",
|
|
@@ -282,7 +295,7 @@ fix = [
|
|
|
282
295
|
skip-install = false
|
|
283
296
|
dev-mode = true
|
|
284
297
|
dependencies = [
|
|
285
|
-
"Cython",
|
|
298
|
+
"Cython>=3.1",
|
|
286
299
|
"setuptools",
|
|
287
300
|
]
|
|
288
301
|
|
|
@@ -293,13 +306,12 @@ PARAMETER_PATH = "{env:PARAMETER_PATH:../parameters.json}"
|
|
|
293
306
|
SKIP_CORE_BUILD = "{env:SKIP_CORE_BUILD:1}"
|
|
294
307
|
|
|
295
308
|
[[tool.hatch.envs.dev.matrix]]
|
|
296
|
-
python = ["3.11", "3.12", "3.13", "3.14"]
|
|
309
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.14t"]
|
|
297
310
|
|
|
298
311
|
[tool.hatch.envs.dev.scripts]
|
|
299
|
-
#
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
integ = "pytest tests/integ {args} || pytest tests/integ --lf --maxfail=5 {args}"
|
|
312
|
+
# Per-test retries come from addopts --reruns 2 (not a second whole-suite run).
|
|
313
|
+
unit = "pytest tests/unit {args}"
|
|
314
|
+
integ = "pytest tests/integ {args}"
|
|
303
315
|
# End-to-end tests
|
|
304
316
|
e2e = "pytest tests/e2e {args}"
|
|
305
317
|
# All tests
|
|
@@ -317,14 +329,13 @@ skip-install = true
|
|
|
317
329
|
dev-mode = false
|
|
318
330
|
|
|
319
331
|
[[tool.hatch.envs.test.matrix]]
|
|
320
|
-
python = ["3.11", "3.12", "3.13", "3.14"]
|
|
332
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.14t"]
|
|
321
333
|
|
|
322
334
|
[tool.hatch.envs.test.scripts]
|
|
323
335
|
# Install from wheel
|
|
324
336
|
install-wheel = "uv pip install {env:WHEEL_PATH:dist/*.whl}"
|
|
325
|
-
# Split suites used by CI
|
|
326
|
-
#
|
|
327
|
-
# failures from GitHub Actions, and `dev:e2e` does not ignore pandas.
|
|
337
|
+
# Split suites used by CI. Override the `dev` template so `dev:e2e` does not
|
|
338
|
+
# ignore pandas. Per-test retries come from addopts --reruns 2.
|
|
328
339
|
unit = "pytest tests/unit {args}"
|
|
329
340
|
integ = "pytest tests/integ {args}"
|
|
330
341
|
e2e = "pytest tests/e2e --ignore=tests/e2e/pandas --ignore=tests/e2e/numpy {args}"
|
|
@@ -335,24 +346,15 @@ flaky = "pytest tests/ --ignore=tests/packaging --ignore=tests/e2e/pandas --igno
|
|
|
335
346
|
# Runs @pytest.mark.requires_no_mfa tests (parameters_aws_local.json).
|
|
336
347
|
no_mfa = "pytest tests/e2e/authentication/test_user_password.py -m requires_no_mfa -n 0 --no-cov {args}"
|
|
337
348
|
|
|
338
|
-
#
|
|
349
|
+
# Same unit/integ/e2e split as `test`. The harness sets use_core_arrow.
|
|
339
350
|
[tool.hatch.envs.test-native-arrow]
|
|
340
351
|
template = "test"
|
|
341
|
-
features = ["test", "dev", "pyarrow"]
|
|
342
352
|
|
|
343
353
|
[[tool.hatch.envs.test-native-arrow.matrix]]
|
|
344
|
-
python = ["3.13"]
|
|
354
|
+
python = ["3.13", "3.14t"]
|
|
345
355
|
|
|
346
|
-
[tool.hatch.envs.test-native-arrow.
|
|
347
|
-
|
|
348
|
-
install-wheel = [
|
|
349
|
-
"uv pip install {env:WHEEL_PATH:dist/*.whl}",
|
|
350
|
-
"python hatch_native_arrow.py",
|
|
351
|
-
]
|
|
352
|
-
# BOOLEAN, REAL, TEXT, BINARY, NUMBER, DECFLOAT, DATE, TIME, TIMESTAMP_LTZ, VECTOR,
|
|
353
|
-
# DictCursor, and numpy (NUMBER/REAL/DECFLOAT, DATE, TIMESTAMP_NTZ, INTERVAL) are live.
|
|
354
|
-
# Table and insert cases can run because execute_query status rows are NUMBER.
|
|
355
|
-
cov = "pytest tests/unit/test_arrow_stream_utils.py tests/integ/test_cursor.py::TestDictCursorCreation tests/integ/test_cursor.py::TestDictCursorFetchOne tests/integ/test_cursor.py::TestDictCursorFetchMany tests/integ/test_cursor.py::TestDictCursorFetchAll tests/integ/test_cursor.py::TestDictCursorIteration tests/integ/test_cursor.py::TestDictCursorLargeResults tests/integ/test_cursor.py::TestDictCursorMultipleQueries tests/e2e/types/test_boolean.py tests/e2e/types/test_float.py tests/e2e/types/test_string.py tests/e2e/types/test_binary.py tests/e2e/types/test_number.py tests/e2e/types/test_int.py tests/e2e/types/test_decfloat.py tests/e2e/types/test_date.py tests/e2e/types/test_time.py tests/e2e/types/test_timestamp_ltz.py tests/e2e/types/test_vector.py tests/e2e/types/numpy/test_number_numpy.py tests/e2e/types/numpy/test_float_numpy.py tests/e2e/types/numpy/test_decfloat_numpy.py tests/e2e/types/numpy/test_date_numpy.py tests/e2e/types/numpy/test_timestamp_ntz_numpy.py tests/e2e/types/numpy/test_interval_numpy.py --cov=src/snowflake --cov-report=xml --cov-report=html {args}"
|
|
356
|
+
[tool.hatch.envs.test-native-arrow.env-vars]
|
|
357
|
+
SNOWFLAKE_TEST_USE_CORE_ARROW = "1"
|
|
356
358
|
|
|
357
359
|
# Pandas and NumPy consumer CI test environment
|
|
358
360
|
[tool.hatch.envs.test-pandas]
|
|
@@ -360,7 +362,7 @@ template = "test"
|
|
|
360
362
|
features = ["test", "dev", "pandas"]
|
|
361
363
|
|
|
362
364
|
[[tool.hatch.envs.test-pandas.matrix]]
|
|
363
|
-
python = ["3.11", "3.12", "3.13", "3.14"]
|
|
365
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.14t"]
|
|
364
366
|
|
|
365
367
|
[tool.hatch.envs.test-pandas.scripts]
|
|
366
368
|
cov = "pytest tests/e2e/pandas tests/e2e/numpy --cov=src/snowflake --cov-report=xml --cov-report=html {args}"
|
|
@@ -369,7 +371,7 @@ cov = "pytest tests/e2e/pandas tests/e2e/numpy --cov=src/snowflake --cov-report=
|
|
|
369
371
|
[tool.hatch.envs.packaging]
|
|
370
372
|
features = ["test"]
|
|
371
373
|
installer = "uv"
|
|
372
|
-
extra-dependencies = ["build"]
|
|
374
|
+
extra-dependencies = ["build", "hatchling"]
|
|
373
375
|
|
|
374
376
|
[[tool.hatch.envs.packaging.matrix]]
|
|
375
377
|
python = ["3.13"]
|
{snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/Cargo.toml
RENAMED
|
@@ -8,15 +8,10 @@ name = "sf_core_python"
|
|
|
8
8
|
crate-type = ["cdylib", "rlib"]
|
|
9
9
|
|
|
10
10
|
[features]
|
|
11
|
-
default = ["extension-module"]
|
|
11
|
+
default = ["extension-module", "native-arrow"]
|
|
12
12
|
extension-module = ["pyo3/extension-module"]
|
|
13
13
|
native-arrow = ["dep:arrow", "dep:snafu", "dep:error_trace", "dep:sf_types", "dep:chrono", "pyo3/chrono"]
|
|
14
|
-
|
|
15
|
-
# aws-lc-sys. Despite the name it is no longer TLS-only: JWT signing, DPoP,
|
|
16
|
-
# stage file encryption and private-key parsing now run on the same module. The
|
|
17
|
-
# name and the caveat both stand -- see the `fips-tls` feature comment in
|
|
18
|
-
# sf_core/Cargo.toml for why this is still not a FIPS artifact on its own.
|
|
19
|
-
fips-tls = ["sf_core/fips-tls"]
|
|
14
|
+
fips = ["sf_core/fips"]
|
|
20
15
|
|
|
21
16
|
[dependencies]
|
|
22
17
|
arrow = { version = ">=54.0.0, <59", features = ["ffi"], optional = true }
|
|
@@ -35,7 +30,7 @@ futures = "0.3"
|
|
|
35
30
|
tracing = "0.1.41"
|
|
36
31
|
|
|
37
32
|
[dev-dependencies]
|
|
38
|
-
#
|
|
33
|
+
# `native-arrow` is a default feature. `--no-default-features` drops it.
|
|
39
34
|
pyo3 = { version = "0.29.0", features = ["auto-initialize"] }
|
|
40
35
|
arrow = { version = ">=54.0.0, <59", features = ["ffi"] }
|
|
41
36
|
tracing-subscriber = { version = "0.3.19", features = ["fmt"] }
|
{snowflake_connector_python-5.0.0rc4 → snowflake_connector_python-5.1.0}/python_bridge/build.rs
RENAMED
|
@@ -2,8 +2,11 @@ fn main() {
|
|
|
2
2
|
// On macOS, Python extension modules leave Python symbols undefined at
|
|
3
3
|
// link time - they are resolved at load time by the interpreter. Without
|
|
4
4
|
// this flag the linker rejects the build with "symbol(s) not found".
|
|
5
|
+
// FIPS builds also link shared aws-lc libraries whose install name is
|
|
6
|
+
// `@rpath`, so the extension looks beside itself.
|
|
5
7
|
if std::env::var("CARGO_CFG_TARGET_OS").as_deref() == Ok("macos") {
|
|
6
8
|
println!("cargo:rustc-cdylib-link-arg=-undefined");
|
|
7
9
|
println!("cargo:rustc-cdylib-link-arg=dynamic_lookup");
|
|
10
|
+
println!("cargo:rustc-cdylib-link-arg=-Wl,-rpath,@loader_path");
|
|
8
11
|
}
|
|
9
12
|
}
|
|
@@ -14,6 +14,7 @@ use super::boolean;
|
|
|
14
14
|
use super::date;
|
|
15
15
|
use super::decfloat;
|
|
16
16
|
use super::interval;
|
|
17
|
+
use super::map;
|
|
17
18
|
use super::number;
|
|
18
19
|
use super::numpy::NumpyProvider;
|
|
19
20
|
use super::real;
|
|
@@ -167,6 +168,7 @@ impl ConversionContext {
|
|
|
167
168
|
self.use_numpy,
|
|
168
169
|
),
|
|
169
170
|
SnowflakeFieldType::Vector { .. } => vector::from_column(array, field_type),
|
|
171
|
+
SnowflakeFieldType::ArrowMap => map::from_column(self, array),
|
|
170
172
|
}
|
|
171
173
|
}
|
|
172
174
|
}
|