Releases: snowflakedb/snowflake-connector-python
Releases · snowflakedb/snowflake-connector-python
4.2.0
- v4.2.0(January 07,2026)
- Added
SnowflakeCursor.statsproperty to expose granular DML statistics (rows inserted, deleted, updated, and duplicates) for operations like CTAS whererowcountis insufficient. - Added support for injecting SPCS service identifier token (
SPCS_TOKEN) into login requests when present in SPCS containers. - Introduced shared library for extended telemetry to identify and prepare testing platform for native rust extensions.
- Added
4.1.1
- v4.1.1(TBD)
- Relaxed pandas dependency requirements for Python below 3.12.
- Changed CRL cache cleanup background task to daemon to avoid blocking main thread.
- Fixed NO_PROXY issues with PUT operations
4.1.0
- v4.1.0(November 18,2025)
- Added the
SNOWFLAKE_AUTH_FORCE_SERVERenvironment variable to force the use of the local-listening server when using theexternalbrowserauth method.- This allows headless environments (like Docker or Airflow) running locally to auth via a browser URL.
- Fix compilation error when building from sources with libc++.
- Pin lower versions of dependencies to oldest version without vulnerabilities.
- Added no_proxy parameter for proxy configuration without using environmental variables.
- Added OAUTH_AUTHORIZATION_CODE and OAUTH_CLIENT_CREDENTIALS to list of authenticators that don't require user to be set
- Added
oauth_socket_uriconnection parameter allowing to separate server and redirect URIs for local OAuth server. - Made platform_detection logs silent and improved its timeout handling. Added support for ENV_VAR_DISABLE_PLATFORM_DETECTION environment variable.
- Fixed FIPS environments md5 hash issues with multipart upload on Azure.
- Added the
4.0.0
- v4.0.0(October 09,2025)
- Added support for checking certificates revocation using revocation lists (CRLs)
- Added
CERT_REVOCATION_CHECK_MODEtoCLIENT_ENVIRONMENT - Added the
workload_identity_impersonation_pathparameter to support service account impersonation for Workload Identity Federation on GCP and AWS workloads only - Fixed
get_results_from_sfqidwhen usingDictCursorand executing multiple statements at once - Added the
oauth_credentials_in_bodyparameter supporting an option to send the oauth client credentials in the request body - Fix retry behavior for
ECONNRESETerror - Added an option to exclude
botocoreandboto3dependencies by settingSNOWFLAKE_NO_BOTOenvironment variable during installation - Revert changing exception type in case of token expired scenario for
Oauthauthenticator back toDatabaseError - Enhanced configuration file security checks with stricter permission validation.
- Configuration files writable by group or others now raise a
ConfigSourceErrorwith detailed permission information, preventing potential credential tampering.
- Configuration files writable by group or others now raise a
- Fixed the return type of
SnowflakeConnection.cursor(cursor_class)to match the type ofcursor_class - Constrained the types of
fetchone,fetchmany,fetchall- As part of this fix,
DictCursoris no longer a subclass ofSnowflakeCursor; useSnowflakeCursorBaseas a superclass of both.
- As part of this fix,
- Fix "No AWS region was found" error if AWS region was set in
AWS_DEFAULT_REGIONvariable instead ofAWS_REGIONforWORKLOAD_IDENTITYauthenticator - Add
ocsp_root_certs_dict_lock_timeoutconnection parameter to set the timeout (in seconds) for acquiring the lock on the OCSP root certs dictionary. Default value for this parameter is -1 which indicates no timeout. - Fixed behaviour of trying S3 Transfer Accelerate endpoint by default for internal stages, and always getting HTTP403 due to permissions missing on purpose. Now /accelerate is not attempted.
3.18.0
- v3.18.0(October 03,2025)
- Added support for pandas conversion for Day-time and Year-Month Interval types
3.17.4
- v3.17.4(September 22,2025)
- Added support for intermediate certificates as roots when they are stored in the trust store
- Bumped up vendored
urllib3to2.5.0andrequeststov2.32.5
3.17.3
- v3.17.3(September 02,2025)
- Enhanced configuration file permission warning messages.
- Improved warning messages for readable permission issues to include clear instructions on how to skip warnings using the
SF_SKIP_WARNING_FOR_READ_PERMISSIONS_ON_CONFIG_FILEenvironment variable.
- Improved warning messages for readable permission issues to include clear instructions on how to skip warnings using the
- Fixed the bug with staging pandas dataframes on AWS - the regional endpoint is used when required
- This addresses the issue with
create_dataframecall on Snowpark
- This addresses the issue with
- Enhanced configuration file permission warning messages.
3.17.2
- v3.17.2(August 23,2025)
- Fixed a bug where platform_detection was retrying failed requests with warnings to non-existent endpoints.
- Added disabling endpoint-based platform detection by setting
platform_detection_timeout_secondsto zero.
3.17.1
- v3.17.1(August 17,2025)
- Added
infer_schemaparameter towrite_pandasto perform schema inference on the passed data. - Namespace
snowlakereverted back to non-module.
- Added
3.17.0
- v3.17.0(August 16,2025)
- Added in-band HTTP exception telemetry.
- Added an
unsafe_skip_file_permissions_checkflag to skip file permission checks on the cache and configuration. - Added
APPLICATION_PATHwithinCLIENT_ENVIRONMENTto distinguish between multiple scripts using the Python Connector in the same environment. - Added basic JSON support for Interval types.
- Added in-band OCSP exception telemetry.
- Added support for new authentication methods with Workload Identity Federation (WIF).
- Added the
WORKLOAD_IDENTITYvalue for the authenticator type. - Added the
workload_identity_providerandworkload_identity_entra_resourceparameters.
- Added the
- Added support for the
use_vectorized_scannerparameter in the write_pandas function. - Added support of proxy setup using connection parameters without emitting environment variables.
- Added populating of
type_codeinResultMetadatafor interval types. - Introduced the
snowflake_versionproperty to the connection. - Moved
OAUTH_TYPEtoCLIENT_ENVIROMENT. - Relaxed the
pyarrowversion constrain; versions >= 19 can now be used. - Disabled token caching for OAuth Client Credentials authentication.
- Fixed OAuth authenticator values.
- Fixed a bug where a PAT with an external session authenticator was used while
external_session_idwas not provided inSnowflakeRestful.fetch. - Fixed the case-sensitivity of
Oauthandprogrammatic_access_tokenauthenticator values. - Fixed unclear error messages for incorrect
authenticatorvalues. - Fixed GCS staging by ensuring the endpoint has a scheme.
- Fixed a bug where time-zoned timestamps fetched as a
pandas.DataFrameorpyarrow.Tablewould overflow due to unnecessary precision. A clear error will now be raised if an overflow cannot be prevented.