snowflake-connector-python 5.1.0__tar.gz → 5.2.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.1.0 → snowflake_connector_python-5.2.0}/Cargo.lock +3 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/PKG-INFO +6 -4
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/README.md +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/protoc_installer.rs +65 -42
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/pyproject.toml +16 -9
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/lib.rs +29 -0
- snowflake_connector_python-5.2.0/sf_core/CHANGELOG.md +5 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/Cargo.toml +13 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/a-cancellation-error-now-reports-what.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/a-statementexecuteasync-whose-submission-is-acce.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-connection-free-status-call.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-connection-is-usable-driver.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-cwd-statement-option-that.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-description-internal-property-on.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-driverproviders-injection-point-for.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-per-statement-cloud-request.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-proxy-scheme-connection-parameter.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-put-compress-level-connection.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-put-tempdir-connection-setting.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-python-platform-detection-timeout.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-python-source-distribution-install.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-secondary-roles-connection-parameter.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-shared-operation-cancellation-registry.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-stage-binding-disabled-telemetry.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-token-file-path-connection.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-validate-session-token-wrapper.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-wif-host-connection-parameter.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-an-extra-root-store-path.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-an-opt-in-fips-build.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-apierror-terminates-session-so-an.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-application-path-to-the-login.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-async-first-rpcs-an-rpc.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-asyncarrowbatchfetcher-from-batches-so-an.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-azure-blob-content-md5-on.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-client-crl-stats-on-the-connection.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-configurable-key-pair-jwt-lifetime.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-duo-push-continuation-for-username.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-file-level-parallelism-to-put.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-hot-swappable-file-logging-logmanager.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-impersonation-chain-support-to-the.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-is-fips-to-the-login.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-jdbc-aliases-wifhost-workloadidentityhost.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-native-aks-workload-identity-support.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-nested-column-metadata-for-structured.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-pat-with-external-session-authentication.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-proto-utils-cancellabletransport-and-the.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-result-set-get-async-stream.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-retryreason-to-retried-query-requests.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-rusttransport-database-driver-so-an.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-server-side-query-cancel-capture.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-service-name-header.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-session-token-expires-at-ms.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-snowflake-tls-ciphers.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-sql-script-splitter.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-support-for-snowflake-gcs-force.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-the-file-18-interval-year.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-the-map-type-code-17.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-warehouse-database-schema-and-role.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-workload-identity-azure-client-id.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/adopted-session-heartbeat-from-query-response.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/applied-an-omitted-use.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/arrow-result-chunks-are-decoded-without.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/cancellation-is-now-observed-inside-the.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-a-fips-build-to-reject.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-a-python-build-with-snowflake.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-aws-workload-identity-login-to-build.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-aws-workload-identity-region-discovery.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-client-store-temporary-credential-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-connect-timeout-to-default-to-60.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-connection-is-usable-to-report.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-custom-ca-revocation.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-fips-builds-to-reject-verify.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-login-to-omit-client-session.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-login-to-send-client-session.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-platform-detection-to-run-by.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-put-get-to-build-one.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-query-context-cache-support-in.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-retry-timeout-to-default-to-300.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-sessiontokens-session-id-to-option.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-storage-clients-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-the-crl-download.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-the-message-on-a-failed.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-the-platform-detection.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-the-python-connector-so-it.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-the-session-parameter-cache-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-tls-certificate-checks.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/changed-verified-connection-and-cloud-storage.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/connectiongetqueryresult-is-now-async-first-canc.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/connectiongetresultset-and-connectiongetquerysta.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/connectionrequesttoken-is-now-async-first-so.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/connectionsendhttp-is-now-async-first-the.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/ecdsa-key-pair-auth.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/expanded-leading-tilde-in-token-file-path.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/expanded-the-fips-smoke-lane-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-a-cancel-arriving-during-a.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-a-client-side-query-timeout.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-a-file-column-failing-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-a-get-from-a-stage.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-a-structured-map-column-raising.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-an-empty-account-value-skipping.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-an-issue-where-cached-oauth.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-azure-functions-missing-identity-header.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-azure-get-downloads-being-silently.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-cancelling-a-get-continuing-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-cancelling-a-put-abandoning-an.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-connection-diagnostics-snowflake-allowlist-hosts.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-connectionabortquery-silently-collapsing-g.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-describe-only-prepare-dropping-bind.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-detached-query-repost-on-session-refresh.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-file-operations-on-s3-external.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-gcs-azure-get-of-unloaded-cse-files.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-get-downloads-from-an-s3.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-get-of-a-client-side.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-get-of-unloaded-files-without-key-size.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-intermittent-key-pair-connect-failures.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-jdbc-i-o-errors-so.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-json-timestamp-cells-with-a.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-large-gcs-uploads-restarting-from.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-large-s3-uploads-restarting-from.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-native-okta-login-discarding-snowflake.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-oauth-refresh-token-being-evicted.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-pat-with-external-session-connections.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-python-alter-session-set-cache.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-python-cursor-description-reporting-geogra.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-python-cursor-executemany-so-it.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-python-cursor-request-id-to.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-reauthenticationrequest-missing-a-cause-at.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-session-renewal-after-refusal.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-sf-odbc-ini-discovery-treating.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-snowflake-connections-being-read-as.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-statement-execute-async-missing-a.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-statement-level-parameters-e-g.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-statement-level-timezone-overrides-so.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-statement-prepare-failing-with-server.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-string-private-key-to-accept.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-the-external-browser-callback-listener.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-the-file-based-token-cache.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-unload-and-partitioned-unload-so.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-windows-three-slash-file-uri-paths.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/fixed-workload-identity-federation-attestation-f.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/improved-configuration-errors-for-pat-with.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/improved-connection-setup-time-by-loading.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/improved-first-connection-latency-on-non.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/improved-gcs-put-throughput-by-streaming.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/improved-on-disk-crl-cache-file.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/kept-s3-batch-http-client-typed.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/keyed-telemetry-by-connection-handle-instead.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/keypair-jwt-login-retry.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/moved-crl-cache-and-background-refresh.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/narrowed-platform-detection-s.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/node-s-connection-now-owns-a.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/node-s-statement-cancel-now-cancels.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/operationctx-can-now-carry-cancellation-cleanup.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/pinned-fips-builds-to-aws-lc.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/pinned-h2-to-0-4-18.md +4 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/raised-the-default-multipart-block-size.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/removed-ocsp-mode-from-the-login.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/removed-the-synchronous-default.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/replaced-the-boolean-token-matches-that.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/replaced-the-per-statement-in-flight.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/replaced-the-three-rarely-varied-trailing.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/response-body-reads-for-the-oauth.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/restored-isa-host-cpu-architecture-and.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/restored-the-workload-identity-aws-use.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/restricted-the-workload-identity-authenticator-t.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/routed-first-party-sha-256-hashing.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/scoped-getobjects-metadata-show.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/standardized-the-opt-in-build-feature.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/statementexecuteasync-is-now-async-first-cancell.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/statementexecutequery-is-now-async-first-cancell.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/statementprepare-is-now-async-first-as.md +5 -0
- snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/wifcreateattestation-is-now-async-first-so.md +5 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/connection.rs +468 -144
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/database.rs +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/get_objects.rs +387 -86
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/global_state.rs +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/heartbeat.rs +18 -25
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/logout.rs +3 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/query.rs +2 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/query_submit.rs +54 -19
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/result_set.rs +85 -8
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/statement.rs +7 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/stream_transfer.rs +147 -7
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/arrow_utils.rs +5 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/auth.rs +203 -119
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/bin/collect_chunk_data.rs +3 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/bin/tls_client.rs +1 -1
- snowflake_connector_python-5.2.0/sf_core/src/chunks/arrow_parser.rs +127 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/error.rs +7 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/mod.rs +206 -16
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/connection_config.rs +205 -7
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/private_key.rs +28 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/resolver.rs +192 -15
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/rest_parameters.rs +76 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/retry.rs +39 -11
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/token.rs +42 -5
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/cache.rs +436 -16
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/integration_test.rs +4 -4
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/manager.rs +75 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/mod.rs +2 -1
- snowflake_connector_python-5.2.0/sf_core/src/crl/stats_buffer.rs +309 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/validator.rs +11 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crypto/private_key.rs +428 -69
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/diagnostic/mod.rs +84 -6
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/env_vars.rs +16 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/azure_transfer.rs +13 -22
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/cloud_http.rs +28 -31
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/gcs_transfer.rs +20 -18
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/mod.rs +67 -25
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/path_expansion.rs +57 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/s3_transfer.rs +13 -13
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/types.rs +25 -14
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/lib.rs +1 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/apis/database_driver_v1/converter.rs +3 -8
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/apis/database_driver_v1/mod.rs +12 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/async_exec.rs +18 -13
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/external_browser.rs +118 -19
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/heartbeat.rs +1 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/mod.rs +554 -176
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/native_okta.rs +154 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/authorization_code.rs +258 -32
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/client_credentials.rs +6 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/query_response.rs +36 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/telemetry.rs +1 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/aws.rs +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/azure.rs +110 -18
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/mod.rs +51 -8
- snowflake_connector_python-5.2.0/sf_core/src/sql_script.rs +742 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/stage_binding.rs +2 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/session_batch.rs +7 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/session_telemetry.rs +14 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/aws_http_client.rs +14 -40
- snowflake_connector_python-5.2.0/sf_core/src/tls/cipher_policy.rs +489 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/client.rs +260 -83
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/config.rs +0 -8
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/crl_verifier.rs +9 -10
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/error.rs +7 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/mod.rs +1 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/config.rs +23 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/auth.rs +22 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/oauth.rs +21 -5
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/okta.rs +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/private_key_helper.rs +4 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/snowflake_test_client.rs +11 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/xp_backend/fixtures.rs +1 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_params_spec/src/lib.rs +62 -4
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_params_spec/tests/odbc_legacy_compatibility.rs +2 -2
- snowflake_connector_python-5.2.0/src/snowflake/connector/_internal/_private_key_helper.py +31 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/connection.py +33 -35
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection_config_mixin.py +10 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/base.py +21 -8
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/errorhandler.py +2 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/arrow_stream_iterator.cpp +189 -184
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow_ipc.c +5 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/Logging/logging.cpp +13 -2
- snowflake_connector_python-5.2.0/src/snowflake/connector/_internal/text_utils.py +112 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/write_pandas_operation.py +31 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/connection/_connection.py +31 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/cursor/_base.py +42 -29
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/cursor/_dict_cursor.py +20 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/cursor/_snowflake_cursor.py +20 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/pandas_tools.py +3 -2
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/connection/_connection.py +31 -3
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/connection_config.py +13 -5
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/_base.py +42 -29
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/_dict_cursor.py +20 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/_snowflake_cursor.py +20 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/errors.py +45 -25
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/version.py +1 -1
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/tests/README.md +2 -0
- snowflake_connector_python-5.1.0/sf_core/CHANGELOG.md +0 -164
- snowflake_connector_python-5.1.0/sf_core/src/chunks/arrow_parser.rs +0 -24
- snowflake_connector_python-5.1.0/src/snowflake/connector/_internal/_private_key_helper.py +0 -50
- snowflake_connector_python-5.1.0/src/snowflake/connector/_internal/text_utils.py +0 -283
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/.gitignore +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/build_common.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/ci/anaconda/recipe/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/error_trace/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/error_trace/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/error_trace_derive/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/error_trace_derive/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/hatch_build.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/Cargo.lock +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/csharp_generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/helpers.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/java_generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/json_generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/python_generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/generators/rust_generator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/main.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_generator/src/protobuf.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_utils/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/proto_utils/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/protobuf/database_driver_v1.proto +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/build.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/async_iterator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/batch_converter.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/binary.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/boolean.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/context.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/date.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/decfloat.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/decode.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/interval.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/map.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/number.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/numpy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/real.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/test_util.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/text.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/time.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/timestamp_ltz.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/timestamp_ntz.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/timestamp_tz.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/timezone.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/util.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/converters/vector.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/iterator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/plan.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/scaled_f64.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/stream.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/fixed.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/int_values.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/interval.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/tests.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/time.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/timestamp/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/timestamp/scale.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/timestamp/tz.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table/utils.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/table_iterator.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/arrow/test_support.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/stub_gen/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/stub_gen/src/main.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/rust-toolchain.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/benches/prefetch_bench.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/build.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/cbindgen-xp-providers.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/exports.def +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/include/sf_core_providers.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/alter_session_parser.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/async_query_registry.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/error_kind.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/final_session_names.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/like_pattern.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/multistatement.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/spcs_token.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/database_driver_v1/validation.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/apis/operation_ctx.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/bin/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/bin/spcs_probe.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/c_api.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/async_arrow_batch_fetcher.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/http_downloader.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/json_parser.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/memory_budget.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/mock.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/chunks/prefetch.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/compression.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/compression_types.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/config_manager.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/configured_redirect_uri.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/error_context.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/ini_loader.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/logging_config_loader.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/logout.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/param_registry.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/param_store.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/path_resolver.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/settings.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/config/toml_loader.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/certificate_parser.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/config.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/disk_tests.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crl/worker.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/crypto/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/encryption.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/multipart.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/scheduler.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/file_manager/spool.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/fs_adapter.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/fs_lock.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/handle_manager.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/http/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/http/retry.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/c_api.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/callback_layer.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/log_manager.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/logging/opentelemetry.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/perf_timing/c_api.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/perf_timing/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/apis/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/c_api.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/config_setting_ext.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/generated.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/protobuf/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/query_types/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/query_types/row_type.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/query_types/statement_type.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/refresh.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/auth.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/browser.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/error_context.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/logout.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/dpop.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/http_client.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/loopback_server.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/pkce.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/random.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/oauth/token.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/prompt_lock.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/query_context_cache.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/query_request.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/sql_state.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/gcp.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/host_allowlist.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/rest/snowflake/workload_identity/oidc.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/sensitive.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/environment.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/os_details.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/platform_detection/aws.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/platform_detection/azure.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/platform_detection/gcp.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/platform_detection/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/platform_detection/tests.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/serialization.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/snowflake_exporter.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/snowflake_processor.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/telemetry/types.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/crypto_module.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/revocation.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/test_helpers.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/tls/x509_utils.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/token_cache/file_cache.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/token_cache/keyring_cache.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/token_cache/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/utils/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/utils/sync.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/xp_backend/connection_settings.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/xp_backend/ffi.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/xp_backend/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/xp_backend/registry.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/src/xp_backend/response_compat.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/arrow_deserialize.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/arrow_deserialize_macro/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/arrow_deserialize_macro/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/arrow_extract_value.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/arrow_result_helper.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/browser_opener.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/cloud_gating.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/connect_proxy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/counting_proxy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/crypto_provider.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/dead_proxy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/file_utils.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mitm_port_detector.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mitm_proxy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/external_browser.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/mfa.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/password.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/put_get.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/query.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mocks/session.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/put_get_common.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/test_server.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/test_utils.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/common/tls_proxy.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/xp_backend/fake_host.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/tests/xp_backend/link_sf_core.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/Cargo.lock +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/LICENSE +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/alg_tests.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/aws_lc_rs_algs.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/cert.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/crl/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/crl/types.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha256-absent-params.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha384-absent-params.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/alg-rsa-pkcs1-sha512-absent-params.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMDVTLSCAG3B.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMDVTLSCAG3C.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMEVTLSCAG3B.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMEVTLSCAG3C.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVCSCAG3B.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVCSCAG3C.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVTLSCAG3B.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/data/distrusted/EMOVTLSCAG3C.spki.der +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/der.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/end_entity.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/ring_algs.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/rpk_entity.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/signed_data.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/subject_name/dns_name.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/subject_name/ip_address.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/subject_name/mod.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/test_utils.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/time.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/trust_anchor.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/verify_cert.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_core/third_party/rustls-webpki/src/x509.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_params_spec/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/Cargo.toml +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/binary.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/boolean.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/civil.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/clock.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/date.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/decfloat.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/error.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/fixed.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/interval.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/lib.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/nullable.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/real.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/text.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/time.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/timestamp.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/traits.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/sf_types/src/vector.rs +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_common/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_common/extras.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_common/telemetry.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_common/wif_util.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/api_client/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/api_client/bridge.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/api_client/client_api.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/arrow.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/arrow_context.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/arrow_stream_async.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/arrow_stream_iterator.pyi +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/arrow_stream_utils.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/authenticator_type.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/backward_compatibility.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/binding_converters.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/config_utils.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/connection_types.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/constants.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/decorators.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/freezable_proxy.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/connection/queries.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/cursor_types.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/decorators.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/query_result.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/query_result_waiter.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/result_metadata.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/cursor/result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/decorators.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/error_kinds.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/errorcode.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/fips.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/logging/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/logging/config.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/logging/core_logger.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/logging/native_extension_logger.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/logout_config_mapping.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrayConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrayConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrowTableConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ArrowTableConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BinaryConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BinaryConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BooleanConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/BooleanConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowIterator.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowIterator.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamIterator.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamIterator.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamTableIterator.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/CArrowStreamTableIterator.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ConverterUtil.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ConverterUtil.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DateConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DateConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecFloatConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecFloatConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecimalConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/DecimalConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FixedSizeListConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FixedSizeListConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FloatConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/FloatConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IColumnConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntervalConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/IntervalConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/LICENSE.txt +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/MapConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/MapConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ObjectConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/ObjectConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Common.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Common.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Helpers.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Python/Helpers.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/SnowflakeType.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/SnowflakeType.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/StringConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/StringConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeStampConverter.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/TimeStampConverter.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/macros.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/time.cpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/Util/time.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/arrow_stream_iterator.pyx +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_accessors.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_alloc.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_assert.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_builder.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_emitter.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_endian.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_epilogue.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_flatbuffers.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_identifier.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_iov.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_prologue.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_refmap.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_rtconfig.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_types.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/flatcc_verifier.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/flatcc_portable.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/paligned_alloc.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pattributes.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic_pop.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pdiagnostic_push.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pendian.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pendian_detect.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pinline.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pinttypes.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/portable.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/portable_basic.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstatic_assert.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstdalign.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pstdint.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/punaligned.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pversion.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc/portable/pwarnings.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/flatcc.c +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.c +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/ArrowIterator/nanoarrow_ipc.h +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/nanoarrow_cpp/Logging/logging.hpp +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/protobuf_gen/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_pb2.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_pb2.pyi +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/protobuf_gen/database_driver_v1_services.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/protobuf_gen/proto_exception.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/result_batch.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/snowflake_restful.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/snowpark_backcompat_helpers.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/sqlstate.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/statement_utils.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/type_codes.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/_internal/utils.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/README.md +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/connection/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/cursor/_result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/aio/result_batch.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/auth/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/auth/workload_identity.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/compat.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/config_manager.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/connection/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/constants.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/__init__.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/_chunked_download_reader.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/cursor/_result_set_wrapper.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/description.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/network.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/pandas_tools.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/py.typed +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/result_batch.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/telemetry.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/time_util.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/types.py +0 -0
- {snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/src/snowflake/connector/util_text.py +0 -0
|
@@ -1980,9 +1980,9 @@ checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
|
|
|
1980
1980
|
|
|
1981
1981
|
[[package]]
|
|
1982
1982
|
name = "h2"
|
|
1983
|
-
version = "0.4.
|
|
1983
|
+
version = "0.4.18"
|
|
1984
1984
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1985
|
-
checksum = "
|
|
1985
|
+
checksum = "839c0e8a181239723652be9062bb56ca5bf5f64011f73b623f6f4fc59086a228"
|
|
1986
1986
|
dependencies = [
|
|
1987
1987
|
"atomic-waker",
|
|
1988
1988
|
"bytes",
|
|
@@ -4441,6 +4441,7 @@ dependencies = [
|
|
|
4441
4441
|
"fs2",
|
|
4442
4442
|
"futures",
|
|
4443
4443
|
"glob",
|
|
4444
|
+
"h2",
|
|
4444
4445
|
"hex",
|
|
4445
4446
|
"html-escape",
|
|
4446
4447
|
"http 1.3.1",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: snowflake-connector-python
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.2.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 :: 3.15
|
|
19
20
|
Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
|
|
20
21
|
Classifier: Topic :: Database
|
|
21
22
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
@@ -32,8 +33,9 @@ Requires-Dist: ruff; extra == 'dev'
|
|
|
32
33
|
Requires-Dist: types-protobuf; extra == 'dev'
|
|
33
34
|
Requires-Dist: types-pytz; extra == 'dev'
|
|
34
35
|
Provides-Extra: pandas
|
|
35
|
-
Requires-Dist: pandas
|
|
36
|
-
Requires-Dist: pandas
|
|
36
|
+
Requires-Dist: pandas>=1.0.0; (python_version < '3.13') and extra == 'pandas'
|
|
37
|
+
Requires-Dist: pandas>=2.1.2; (python_version >= '3.13' and python_version < '3.15') and extra == 'pandas'
|
|
38
|
+
Requires-Dist: pandas>=3.0.0; (python_version >= '3.15') and extra == 'pandas'
|
|
37
39
|
Requires-Dist: pyarrow>=14.0.1; extra == 'pandas'
|
|
38
40
|
Provides-Extra: pyarrow
|
|
39
41
|
Requires-Dist: pyarrow>=14.0.1; extra == 'pyarrow'
|
|
@@ -113,7 +115,7 @@ The `dev` environment is designed for **human developers** during active develop
|
|
|
113
115
|
- Installs from sources (`skip-install = false`)
|
|
114
116
|
- Editable mode enabled (`dev-mode = true`)
|
|
115
117
|
- Changes to source code are immediately available
|
|
116
|
-
- Supports Python matrix: 3.11, 3.12, 3.13, 3.14
|
|
118
|
+
- Supports Python matrix: 3.11, 3.12, 3.13, 3.14, 3.15, 3.15t
|
|
117
119
|
|
|
118
120
|
**Usage:**
|
|
119
121
|
```bash
|
|
@@ -54,7 +54,7 @@ The `dev` environment is designed for **human developers** during active develop
|
|
|
54
54
|
- Installs from sources (`skip-install = false`)
|
|
55
55
|
- Editable mode enabled (`dev-mode = true`)
|
|
56
56
|
- Changes to source code are immediately available
|
|
57
|
-
- Supports Python matrix: 3.11, 3.12, 3.13, 3.14
|
|
57
|
+
- Supports Python matrix: 3.11, 3.12, 3.13, 3.14, 3.15, 3.15t
|
|
58
58
|
|
|
59
59
|
**Usage:**
|
|
60
60
|
```bash
|
|
@@ -76,34 +76,24 @@ fn download_and_install(dest: &Path) {
|
|
|
76
76
|
std::fs::create_dir_all(dest).expect("Failed to create protoc cache directory");
|
|
77
77
|
let zip_path = dest.join("protoc.zip");
|
|
78
78
|
|
|
79
|
-
// Two layers of retry guard the build against transient GitHub Releases
|
|
80
|
-
// (
|
|
79
|
+
// Two layers of retry guard the build against transient GitHub Releases
|
|
80
|
+
// failures (HTTP 5xx, 403 under `--fail`, slow connect, partial download):
|
|
81
81
|
//
|
|
82
|
-
// 1. `curl --retry 5`
|
|
83
|
-
//
|
|
84
|
-
//
|
|
85
|
-
//
|
|
86
|
-
//
|
|
87
|
-
// `--retry-all-errors` (added in curl 7.71): the manylinux build
|
|
88
|
-
// container ships an older curl that hard-errors on unknown options
|
|
89
|
-
// (exit 2), which would push every attempt into the outer loop and
|
|
90
|
-
// effectively disable retries. Sticking to flags supported back to
|
|
91
|
-
// ~7.52 (`--retry`, `--retry-delay`, `--retry-max-time`, plus the
|
|
92
|
-
// connect/total timeouts) keeps every CI runner (macOS-15, ubuntu-24,
|
|
93
|
-
// Windows-2022, manylinux_2_*) on the same code path.
|
|
82
|
+
// 1. `curl --retry 5` covers curl's default retry set (408/429/5xx).
|
|
83
|
+
// SNOW-4350375: a GitHub Releases 403 exits 22 under `--fail` and is
|
|
84
|
+
// not in that set. `--retry-all-errors` (curl >= 7.71) covers it.
|
|
85
|
+
// manylinux's older curl hard-errors on unknown options (exit 2), so
|
|
86
|
+
// the flag is passed only when `curl --version` reports >= 7.71.
|
|
94
87
|
//
|
|
95
|
-
// 2. An outer exponential-backoff loop (1s → 2s → 4s → 8s, 5 attempts
|
|
96
|
-
// catches
|
|
97
|
-
//
|
|
98
|
-
//
|
|
99
|
-
//
|
|
100
|
-
//
|
|
101
|
-
//
|
|
102
|
-
// Total worst-case stall ≈ 1+2+4+8 = 15s of outer backoff plus curl's
|
|
103
|
-
// internal retry budget (capped by --retry-max-time at 120s) — well under
|
|
104
|
-
// any CI job budget, and far cheaper than rerunning the whole release
|
|
105
|
-
// pipeline on a 504.
|
|
88
|
+
// 2. An outer exponential-backoff loop (1s → 2s → 4s → 8s, 5 attempts)
|
|
89
|
+
// catches partial downloads, DNS/SSL handshake errors, and 403s that
|
|
90
|
+
// still exhaust curl's inner retry. Each outer attempt deletes the
|
|
91
|
+
// previous zip so extract_zip never sees a half-written file. On
|
|
92
|
+
// failure, response headers are printed so a rate-limit (or not) is
|
|
93
|
+
// visible in the log.
|
|
106
94
|
const MAX_ATTEMPTS: u32 = 5;
|
|
95
|
+
let retry_all_errors = curl_version_at_least_7_71();
|
|
96
|
+
let headers_path = dest.join("curl-headers.txt");
|
|
107
97
|
let mut last_status = None;
|
|
108
98
|
for attempt in 1..=MAX_ATTEMPTS {
|
|
109
99
|
eprintln!(
|
|
@@ -113,23 +103,30 @@ fn download_and_install(dest: &Path) {
|
|
|
113
103
|
// Best-effort cleanup of any partial download from the previous attempt.
|
|
114
104
|
// A corrupt zip would otherwise survive into extract_zip() and fail there.
|
|
115
105
|
let _ = std::fs::remove_file(&zip_path);
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
106
|
+
let _ = std::fs::remove_file(&headers_path);
|
|
107
|
+
|
|
108
|
+
let mut curl = std::process::Command::new("curl");
|
|
109
|
+
curl.args([
|
|
110
|
+
"-sSL",
|
|
111
|
+
"--fail",
|
|
112
|
+
"--retry",
|
|
113
|
+
"5",
|
|
114
|
+
"--retry-delay",
|
|
115
|
+
"2",
|
|
116
|
+
"--retry-max-time",
|
|
117
|
+
"120",
|
|
118
|
+
"--connect-timeout",
|
|
119
|
+
"30",
|
|
120
|
+
"--max-time",
|
|
121
|
+
"300",
|
|
122
|
+
"-D",
|
|
123
|
+
]);
|
|
124
|
+
curl.arg(&headers_path);
|
|
125
|
+
if retry_all_errors {
|
|
126
|
+
curl.arg("--retry-all-errors");
|
|
127
|
+
}
|
|
128
|
+
let status = curl
|
|
129
|
+
.arg("-o")
|
|
133
130
|
.arg(&zip_path)
|
|
134
131
|
.arg(&url)
|
|
135
132
|
.status()
|
|
@@ -140,6 +137,9 @@ fn download_and_install(dest: &Path) {
|
|
|
140
137
|
break;
|
|
141
138
|
}
|
|
142
139
|
last_status = Some(status);
|
|
140
|
+
if let Ok(headers) = std::fs::read_to_string(&headers_path) {
|
|
141
|
+
eprintln!("curl response headers:\n{headers}");
|
|
142
|
+
}
|
|
143
143
|
|
|
144
144
|
if attempt < MAX_ATTEMPTS {
|
|
145
145
|
let backoff_ms = 1_000u64 * (1u64 << (attempt - 1));
|
|
@@ -171,9 +171,32 @@ fn download_and_install(dest: &Path) {
|
|
|
171
171
|
}
|
|
172
172
|
|
|
173
173
|
let _ = std::fs::remove_file(&zip_path);
|
|
174
|
+
let _ = std::fs::remove_file(&headers_path);
|
|
174
175
|
eprintln!("protoc v{PROTOC_VERSION} installed to {}", dest.display());
|
|
175
176
|
}
|
|
176
177
|
|
|
178
|
+
fn curl_version_at_least_7_71() -> bool {
|
|
179
|
+
// `curl --help` on 8.x is a short summary and does not list
|
|
180
|
+
// `--retry-all-errors`. `curl --version` is stable on old and new curl.
|
|
181
|
+
let output = std::process::Command::new("curl").arg("--version").output();
|
|
182
|
+
let Ok(output) = output else {
|
|
183
|
+
return false;
|
|
184
|
+
};
|
|
185
|
+
let stdout = String::from_utf8_lossy(&output.stdout);
|
|
186
|
+
// First line: `curl 8.5.0 (x86_64-pc-linux-gnu) ...`
|
|
187
|
+
let Some(version) = stdout.split_whitespace().nth(1) else {
|
|
188
|
+
return false;
|
|
189
|
+
};
|
|
190
|
+
let mut parts = version.split('.');
|
|
191
|
+
let Ok(major) = parts.next().unwrap_or("").parse::<u32>() else {
|
|
192
|
+
return false;
|
|
193
|
+
};
|
|
194
|
+
let Ok(minor) = parts.next().unwrap_or("0").parse::<u32>() else {
|
|
195
|
+
return false;
|
|
196
|
+
};
|
|
197
|
+
major > 7 || (major == 7 && minor >= 71)
|
|
198
|
+
}
|
|
199
|
+
|
|
177
200
|
#[cfg(unix)]
|
|
178
201
|
fn extract_zip(zip_path: &Path, dest: &Path) {
|
|
179
202
|
let status = std::process::Command::new("unzip")
|
|
@@ -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 :: 3.15",
|
|
23
24
|
"Programming Language :: Python :: Free Threading :: 2 - Beta",
|
|
24
25
|
]
|
|
25
26
|
requires-python = ">=3.11"
|
|
@@ -47,8 +48,9 @@ pyarrow = [
|
|
|
47
48
|
]
|
|
48
49
|
pandas = [
|
|
49
50
|
"pyarrow>=14.0.1",
|
|
50
|
-
"pandas>=1.0.0
|
|
51
|
-
"pandas>=2.1.2
|
|
51
|
+
"pandas>=1.0.0; python_version < '3.13'",
|
|
52
|
+
"pandas>=2.1.2; python_version >= '3.13' and python_version < '3.15'",
|
|
53
|
+
"pandas>=3.0.0; python_version >= '3.15'",
|
|
52
54
|
]
|
|
53
55
|
test = [
|
|
54
56
|
"pytest>=8",
|
|
@@ -78,6 +80,10 @@ dev = [
|
|
|
78
80
|
"types-protobuf",
|
|
79
81
|
]
|
|
80
82
|
|
|
83
|
+
# 0.13.4 removes the compromised eMudhra root. 0.13.5 also rejects those intermediate keys.
|
|
84
|
+
[tool.uv]
|
|
85
|
+
required-version = ">=0.13.5"
|
|
86
|
+
|
|
81
87
|
[tool.hatch.version]
|
|
82
88
|
path = "src/snowflake/connector/version.py"
|
|
83
89
|
|
|
@@ -162,7 +168,8 @@ addopts = [
|
|
|
162
168
|
"-p", "pytest_junit_retry_plugin",
|
|
163
169
|
# Flaky tests are excluded by default; the python_flaky_tests CI job
|
|
164
170
|
# overrides this with `-m flaky` to run them in isolation.
|
|
165
|
-
|
|
171
|
+
# Slow tests are on demand (`-m slow`). Packaging overrides this filter.
|
|
172
|
+
"-m", "not flaky and not requires_no_mfa and not slow",
|
|
166
173
|
]
|
|
167
174
|
# Default timeout for tests (2 minutes) - prevents hanging tests on CI
|
|
168
175
|
timeout = 120
|
|
@@ -170,7 +177,7 @@ markers = [
|
|
|
170
177
|
"skip_reference(reason: str=''): skip when --connector=reference",
|
|
171
178
|
"skip_universal(reason: str=''): skip when --connector=universal",
|
|
172
179
|
"skip_unless_native_arrow(reason: str=''): skip unless sf_core_python.native_arrow_enabled() (Cython/reference Arrow converter)",
|
|
173
|
-
"slow:
|
|
180
|
+
"slow: excluded from the default suite; run with -m slow (large results, full builds)",
|
|
174
181
|
"skip_for_json_result_set(reason: str=''): skip when QUERY_RESULT_FORMAT=JSON (tests requiring Arrow precision)",
|
|
175
182
|
"require_vpn: test requires VPN access (skipped outside Jenkins CI)",
|
|
176
183
|
"requires_browser: test requires headless browser container (skipped unless SF_TEST_HEADLESS_BROWSER=true)",
|
|
@@ -306,7 +313,7 @@ PARAMETER_PATH = "{env:PARAMETER_PATH:../parameters.json}"
|
|
|
306
313
|
SKIP_CORE_BUILD = "{env:SKIP_CORE_BUILD:1}"
|
|
307
314
|
|
|
308
315
|
[[tool.hatch.envs.dev.matrix]]
|
|
309
|
-
python = ["3.11", "3.12", "3.13", "3.14", "3.
|
|
316
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.15", "3.15t"]
|
|
310
317
|
|
|
311
318
|
[tool.hatch.envs.dev.scripts]
|
|
312
319
|
# Per-test retries come from addopts --reruns 2 (not a second whole-suite run).
|
|
@@ -329,7 +336,7 @@ skip-install = true
|
|
|
329
336
|
dev-mode = false
|
|
330
337
|
|
|
331
338
|
[[tool.hatch.envs.test.matrix]]
|
|
332
|
-
python = ["3.11", "3.12", "3.13", "3.14", "3.
|
|
339
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.15", "3.15t"]
|
|
333
340
|
|
|
334
341
|
[tool.hatch.envs.test.scripts]
|
|
335
342
|
# Install from wheel
|
|
@@ -351,7 +358,7 @@ no_mfa = "pytest tests/e2e/authentication/test_user_password.py -m requires_no_m
|
|
|
351
358
|
template = "test"
|
|
352
359
|
|
|
353
360
|
[[tool.hatch.envs.test-native-arrow.matrix]]
|
|
354
|
-
python = ["3.13", "3.
|
|
361
|
+
python = ["3.13", "3.15t"]
|
|
355
362
|
|
|
356
363
|
[tool.hatch.envs.test-native-arrow.env-vars]
|
|
357
364
|
SNOWFLAKE_TEST_USE_CORE_ARROW = "1"
|
|
@@ -362,7 +369,7 @@ template = "test"
|
|
|
362
369
|
features = ["test", "dev", "pandas"]
|
|
363
370
|
|
|
364
371
|
[[tool.hatch.envs.test-pandas.matrix]]
|
|
365
|
-
python = ["3.11", "3.12", "3.13", "3.14", "3.
|
|
372
|
+
python = ["3.11", "3.12", "3.13", "3.14", "3.15", "3.15t"]
|
|
366
373
|
|
|
367
374
|
[tool.hatch.envs.test-pandas.scripts]
|
|
368
375
|
cov = "pytest tests/e2e/pandas tests/e2e/numpy --cov=src/snowflake --cov-report=xml --cov-report=html {args}"
|
|
@@ -379,7 +386,7 @@ python = ["3.13"]
|
|
|
379
386
|
[tool.hatch.envs.packaging.scripts]
|
|
380
387
|
# no parallelism - each packaging test does a full Rust compile; runing them concurrently can thrash the runner
|
|
381
388
|
# {args:...}: default to the whole packaging suite; CI passes a single file
|
|
382
|
-
test = "pytest -n 0 {args:tests/packaging}"
|
|
389
|
+
test = "pytest -n 0 -m \"not flaky and not requires_no_mfa\" {args:tests/packaging}"
|
|
383
390
|
|
|
384
391
|
# Reference connector environments install only the reference connector.
|
|
385
392
|
# UD driver is uninstalled; only the old driver is present.
|
{snowflake_connector_python-5.1.0 → snowflake_connector_python-5.2.0}/python_bridge/src/lib.rs
RENAMED
|
@@ -262,6 +262,34 @@ fn native_arrow_enabled() -> bool {
|
|
|
262
262
|
cfg!(feature = "native-arrow")
|
|
263
263
|
}
|
|
264
264
|
|
|
265
|
+
/// Split a SQL script into statements.
|
|
266
|
+
///
|
|
267
|
+
/// Each item is the statement text and a PUT/GET flag: `True` for `PUT` and
|
|
268
|
+
/// `GET`, `False` for other statements and `!` commands, and `None` when the
|
|
269
|
+
/// text is empty or comment-only. The delimiter is rewritten as `;`.
|
|
270
|
+
///
|
|
271
|
+
/// An unterminated quote, block comment, or dollar quote keeps the rest of
|
|
272
|
+
/// the script in that statement. An empty delimiter raises `ValueError`.
|
|
273
|
+
#[pyfunction]
|
|
274
|
+
fn split_sql_script(
|
|
275
|
+
sql: &str,
|
|
276
|
+
delimiter: &str,
|
|
277
|
+
remove_comments: bool,
|
|
278
|
+
) -> PyResult<Vec<(String, Option<bool>)>> {
|
|
279
|
+
let options = sf_core::sql_script::SplitOptions {
|
|
280
|
+
delimiter: delimiter.to_owned(),
|
|
281
|
+
remove_comments,
|
|
282
|
+
};
|
|
283
|
+
sf_core::sql_script::split_sql_script(sql, &options)
|
|
284
|
+
.map(|spans| {
|
|
285
|
+
spans
|
|
286
|
+
.into_iter()
|
|
287
|
+
.map(|span| (span.text, span.is_file_transfer))
|
|
288
|
+
.collect()
|
|
289
|
+
})
|
|
290
|
+
.map_err(|err| pyo3::exceptions::PyValueError::new_err(err.to_string()))
|
|
291
|
+
}
|
|
292
|
+
|
|
265
293
|
#[pymodule(gil_used = false)]
|
|
266
294
|
fn sf_core_python(m: &Bound<'_, PyModule>) -> PyResult<()> {
|
|
267
295
|
m.add_function(wrap_pyfunction!(init, m)?)?;
|
|
@@ -272,6 +300,7 @@ fn sf_core_python(m: &Bound<'_, PyModule>) -> PyResult<()> {
|
|
|
272
300
|
m.add_function(wrap_pyfunction!(get_perf_data, m)?)?;
|
|
273
301
|
m.add_function(wrap_pyfunction!(reset_perf_metrics, m)?)?;
|
|
274
302
|
m.add_function(wrap_pyfunction!(native_arrow_enabled, m)?)?;
|
|
303
|
+
m.add_function(wrap_pyfunction!(split_sql_script, m)?)?;
|
|
275
304
|
#[cfg(feature = "native-arrow")]
|
|
276
305
|
m.add_class::<ArrowStreamIterator>()?;
|
|
277
306
|
#[cfg(feature = "native-arrow")]
|
|
@@ -86,6 +86,19 @@ bytes = "1"
|
|
|
86
86
|
# panics ("No provider set"), which is why every client construction path calls
|
|
87
87
|
# `tls::ensure_crypto_provider()` first.
|
|
88
88
|
reqwest = { version = "0.12.23", default-features = false, features = ["json", "rustls-tls-no-provider", "rustls-tls-native-roots-no-provider", "rustls-tls-webpki-roots-no-provider", "gzip", "stream", "http2", "charset", "macos-system-configuration"] }
|
|
89
|
+
# Exact pin. reqwest's `http2` feature pulls `h2` transitively, and result
|
|
90
|
+
# chunks from GCS download over HTTP/2. GCS pads its DATA frames today and
|
|
91
|
+
# often sends frames that carry only padding.
|
|
92
|
+
# - h2 0.4.12 leaves padding out of the connection flow-control window, so
|
|
93
|
+
# after about 0.5 GB on one connection it stops sending WINDOW_UPDATE and
|
|
94
|
+
# the download stalls until GCS resets the stream.
|
|
95
|
+
# - From 0.4.19, h2 counts a padding-only frame as an empty DATA frame and
|
|
96
|
+
# closes the connection with GOAWAY(ENHANCE_YOUR_CALM,
|
|
97
|
+
# "too_many_data_frames") after 100 of them. The count never resets and
|
|
98
|
+
# no builder option changes the limit.
|
|
99
|
+
# 0.4.18 has neither problem. A later release, including a security update,
|
|
100
|
+
# keeps the empty-frame limit unless upstream changes it.
|
|
101
|
+
h2 = "=0.4.18"
|
|
89
102
|
serde = { version = "1.0.219", features = ["derive"] }
|
|
90
103
|
serde_json = { version = "1.0.143", features = ["raw_value"] }
|
|
91
104
|
futures = "0.3"
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- A cancellation error now reports what its abort-request achieved: `DriverException.cancellation_abort_outcome` is `ABORTED` (server acknowledged), `NOT_RUNNING` (nothing was running), or `NOT_CONFIRMED` (issued, outcome unknown), and is left unset when no abort was issued at all — the operation was cancelled before its query reached the server. This is the acknowledgement `StatementCancel` used to return to the canceller, delivered instead to the caller whose query was cancelled. (snowflakedb/drivers#1491)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- A `StatementExecuteAsync` whose submission is accepted but which returns no usable query ID now aborts that query and reports an internal error, instead of reporting an invalid-argument error and leaving a query running that the caller has no ID for. (snowflakedb/drivers#1549)
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-connection-free-status-call.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a connection-free status call that reports whether this process is the FIPS driver. Python `get_fips_status()`, JDBC `getFipsStatus()`, Node.js `getFipsStatus()`, .NET `GetFipsStatus()`, and ODBC `SFGetFipsStatus` return the same `is_fips` value. (snowflakedb/drivers#2562)
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-connection-is-usable-driver.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `connection_is_usable` driver API that reports whether a connection can take a request, and distinguishes a connection that has yet to log in from one whose session is gone. It answers under a single lock what `connection_is_closed`, `connection_is_expired` and `connection_is_initialized` answer under three. (snowflakedb/drivers#2096)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `_description_internal` property on the Python cursor, exposing the new-format `ResultMetadataV2` metadata for the last executed statement. Callers that probe for it (Snowpark) previously fell back to the PEP 249 `description`, losing `fields` and `vector_dimension`. (snowflakedb/drivers#1627)
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-per-statement-cloud-request.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: internal
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a per-statement cloud-request budget for PUT/GET: every request that moves object bytes or reads object metadata takes a slot from one shared `TransferScheduler` sized from the server's `PARALLEL`, so part-level and file-level concurrency cannot multiply into `PARALLEL²` simultaneous requests now that file fan-out has landed. (snowflakedb/drivers#1449)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a Python `platform_detection_timeout_seconds` connection parameter that limits each cloud-metadata platform check. Setting it to `0` skips those HTTP and STS queries and keeps only environment-based detection, matching the legacy Python connector. (snowflakedb/drivers#2186)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `secondary_roles` connection parameter that lets a client control secondary-role activation at login (e.g. `ALL` or `NONE`) without relying on the user's `DEFAULT_SECONDARY_ROLES` setting, ported from legacy snowflake-connector-python. Also restores parity with legacy ODBC's `SecondaryRoles` connection attribute, and is newly available (with no legacy equivalent) for JDBC. (snowflakedb/drivers#954)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a shared operation-cancellation registry and `RustTransport::handle_message_cancellable`, letting a bridge cancel an in-flight RPC by handle from any thread and surface cancellation as `DriverException` with `ERROR_KIND_CANCELLED`; the async C API now cancels through this registry. (snowflakedb/drivers#TBD)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: internal
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `stage_binding_disabled` telemetry event recorded once per connection, the first time `CREATE STAGE` fails for the session-scoped array-bind stage. Previously ODBC alone reported a similar event on every statement that subsequently retried with inline JSON bindings. (snowflakedb/drivers#2205)
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-a-token-file-path-connection.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `token_file_path` connection parameter that loads a PAT, legacy OAuth, or OIDC bearer token from a file (including from `connections.toml`), matching the legacy Python connector. If both `token` and `token_file_path` are set, the file contents are used. (snowflakedb/drivers#1445)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: change
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `validate_session_token` wrapper preset, on for every wrapper but Node.js. When off, a login with pre-acquired session and master tokens adopts the pair as handed over instead of proving it with a token-request RENEW first, so the pair is not rotated and adopting it costs no round-trip. Such a connection has no server-reported session id and therefore emits no per-operation telemetry; authentication, queries and logout are unaffected. This restores the legacy `snowflake-connector-nodejs` `deserializeConnection` contract. (snowflakedb/drivers#2042)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `wif_host` connection parameter that sets the AWS STS endpoint for Workload Identity Federation, including the pre-signed GetCallerIdentity request, AssumeRole impersonation, and outbound GetWebIdentityToken; unset keeps the AWS SDK regional STS hostname. (snowflakedb/drivers#2439)
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-async-first-rpcs-an-rpc.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added async-first RPCs: an RPC marked `async_first` in the proto generates a `Future`-returning client method, and JDBC's `ConnectionInit` now uses it via new `nativeSubmitMessage`/`nativeAwaitMessage`/`nativeCancel` JNI entries. (snowflakedb/drivers#TBD)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added a `jwt_timeout` connection parameter, exposed in Node.js as `jwtTimeout`, to configure the lifetime in seconds of each key-pair authentication JWT, including tokens re-signed on login retry. The default remains 120 seconds; `0` selects the default and negative or non-integer values are rejected (snowflakedb/drivers#3141).
|
snowflake_connector_python-5.2.0/sf_core/changelog/unreleased/added-file-level-parallelism-to-put.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added file-level parallelism to PUT and GET: a multi-file transfer now uploads or downloads several files at once instead of one at a time, bounded by the statement's `PARALLEL` value, and result rows keep their original file order. Fail-fast now lets files already in flight (up to `PARALLEL` of them) finish and land on the stage after the first error, instead of stopping after only the current file. (snowflakedb/drivers#1451)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: internal
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added hot-swappable file logging: `LogManager` exposes a `LogReloadHandle` that re-applies the core and troubleshooting file sinks (log level and destination path) in place, without rebuilding the tracing dispatch, session registry, or negotiated encoding, so a wrapper can re-read its logging configuration at runtime. (snowflakedb/drivers#2588)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added impersonation-chain support to the standalone `create_attestation` RPC, so callers can acquire a Workload Identity Federation attestation for an assumed AWS role, delegated GCP service account, or impersonated Azure service principal without an active connection. (snowflakedb/drivers#1027)
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
---
|
|
2
|
+
category: feature
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
- Added native AKS Workload Identity support for Azure: when the Azure Workload Identity webhook injects `AZURE_CLIENT_ID`, `AZURE_TENANT_ID` and `AZURE_FEDERATED_TOKEN_FILE` into a pod and the projected token file exists on disk, `workload_identity_provider="AZURE"` now exchanges that federated token for an Entra ID access token directly, instead of requiring the projected-volume/OIDC workaround. `workload_identity_impersonation_path` is not supported in this environment. (snowflakedb/drivers#1367)
|