Releases: snowflakedb/snowflake-connector-python
Releases · snowflakedb/snowflake-connector-python
3.15.0
- v3.15.0(Apr 29,2025)
- Bumped up min boto and botocore version to 1.24.
- OCSP: terminate certificates chain traversal if a trusted certificate already reached.
- Added new authentication methods support for programmatic access tokens (PATs), OAuth 2.0 Authorization Code Flow, OAuth 2.0 Client Credentials Flow, and OAuth Token caching.
- For OAuth 2.0 Authorization Code Flow:
- Added the
oauth_client_id
,oauth_client_secret
,oauth_authorization_url
,oauth_token_request_url
,oauth_redirect_uri
,oauth_scope
,oauth_disable_pkce
,oauth_enable_refresh_tokens
andoauth_enable_single_use_refresh_tokens
parameters. - Added the
OAUTH_AUTHORIZATION_CODE
value for the parameter authenticator.
- Added the
- For OAuth 2.0 Client Credentials Flow:
- Added the
oauth_client_id
,oauth_client_secret
,oauth_token_request_url
, andoauth_scope
parameters. - Added the
OAUTH_CLIENT_CREDENTIALS
value for the parameter authenticator.
- Added the
- For OAuth Token caching: Passing a username to driver configuration is required, and the
client_store_temporary_credential property
is to be set totrue
.
- For OAuth 2.0 Authorization Code Flow:
3.14.1
- v3.14.1(April 21, 2025)
- Added support for Python 3.13.
- NOTE: Windows 64 support is still experimental and should not yet be used for production environments.
- Dropped support for Python 3.8.
- Added basic decimal floating-point type support.
- Added experimental authentication methods.
- Added support of GCS regional endpoints.
- Added support of GCS virtual urls. See more: https://cloud.google.com/storage/docs/request-endpoints#xml-api
- Added
client_fetch_threads
experimental parameter to better utilize threads for fetching query results. - Added
check_arrow_conversion_error_on_every_column
connection property that can be set toFalse
to restore previous behaviour in which driver will ignore errors until it occurs in the last column. This flag's purpose is to unblock workflows that may be impacted by the bugfix and will be removed in later releases. - Lowered log levels from info to debug for some of the messages to make the output easier to follow.
- Allowed the connector to inherit a UUID4 generated upstream, provided in statement parameters (field:
requestId
), rather than automatically generate a UUID4 to use for the HTTP Request ID. - Improved logging in urllib3, boto3, botocore - assured data masking even after migration to the external owned library in the future.
- Improved error message for client-side query cancellations due to timeouts.
- Improved security and robustness for the temporary credentials cache storage.
- Fixed a bug that caused driver to fail silently on
TO_DATE
arrow to python conversion when invalid date was followed by the correct one. - Fixed expired S3 credentials update and increment retry when expired credentials are found.
- Deprecated
insecure_mode
connection property and replaced it withdisable_ocsp_checks
with the same behavior as the former property.
- Added support for Python 3.13.
3.14.0
- v3.14.0(March 03, 2025)
- Bumped pyOpenSSL dependency upper boundary from <25.0.0 to <26.0.0.
- Added a <19.0.0 pin to pyarrow as a workaround to a bug affecting Azure Batch.
- Optimized distribution package lookup to speed up import.
- Fixed a bug where privatelink OCSP Cache url could not be determined if privatelink account name was specified in uppercase.
- Added support for iceberg tables to
write_pandas
. - Fixed base64 encoded private key tests.
- Fixed a bug where file permission check happened on Windows.
- Added support for File types.
- Added
unsafe_file_write
connection parameter that restores the previous behaviour of saving files downloaded with GET with 644 permissions.
3.13.2
- v3.13.2(January 29, 2025)
- Changed not to use scoped temporary objects.
3.13.1
- v3.13.1(January 29, 2025)
- Remedied SQL injection vulnerability in snowflake.connector.pandas_tools.write_pandas. See more GHSA-2vpq-fh52-j3wv
- Remedied vulnerability in deserialization of the OCSP response cache. See more: GHSA-m4f6-vcj4-w5mx
- Remedied vulnerability connected to cache files permissions. See more: GHSA-r2x6-cjg7-8r43
3.13.0
- v3.13.0(January 23,2025)
- Added a feature to limit the sizes of IO-bound ThreadPoolExecutors during PUT and GET commands.
- Updated README.md to include instructions on how to verify package signatures using
cosign
. - Updated the log level for cursor's chunk rowcount from INFO to DEBUG.
- Added a feature to verify if the connection is still good enough to send queries over.
- Added support for base64-encoded DER private key strings in the
private_key
authentication type.
3.12.4
- v3.12.4(December 3,2024)
- Fixed a bug where multipart uploads to Azure would be missing their MD5 hashes.
- Fixed a bug where OpenTelemetry header injection would sometimes cause Exceptions to be thrown.
- Fixed a bug where OCSP checks would throw TypeError and make mainly GCP blob storage unreachable.
- Bumped pyOpenSSL dependency from >=16.2.0,<25.0.0 to >=22.0.0,<25.0.0.
3.12.3
- v3.12.3(October 25,2024)
- Improved the error message for SSL-related issues to provide clearer guidance when an SSL error occurs.
- Improved error message for SQL execution cancellations caused by timeout.
3.12.2
- v3.12.2(September 11,2024)
- Improved error handling for asynchronous queries, providing more detailed and informative error messages when an async query fails.
- Improved inference of top-level domains for accounts specifying a region in China, now defaulting to snowflakecomputing.cn.
- Improved implementation of the
snowflake.connector.util_text.random_string
to reduce the likelihood of collisions. - Updated the log level for OCSP fail-open warning messages from ERROR to WARNING.
3.12.1
- v3.12.1(August 20,2024)
- Fixed a bug that logged the session token when renewing a session.
- Fixed a bug where disabling client telemetry did not work.
- Fixed a bug where passing
login_timeout
as a string raised aTypeError
during the login retry step. - Use
pathlib
instead ofos
for default config file location resolution. - Removed upper
cryptogaphy
version pin. - Removed reference to script
snowflake-export-certs
(its backing module was already removed long ago) - Enhanced retry mechanism for handling transient network failures during query result polling when no server response is received.