NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1294 most downloaded on PyPI
Provider package apache-airflow-providers-snowflake for Apache Airflow
Last release 6 days ago
29 Sep 2026
Ships on a steady schedule
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
6 versions withdrawn
withdrawn after publishing
6 years old
191 releases · first in 2020
- Template every connection id accepted by provider operators
Release Date: 2026-09-29
Template every connection id accepted by provider operators (#73286)
Add SnowflakeNotebookOperator for executing Snowflake Notebooks (#63470)
Add Cortex Agent management methods to SnowflakeCortexAgentHook (#70101)
Validate Snowflake account and region before building the SQL API URL (#72174)
Fix Snowflake SQL API OAuth for client_credentials and azure_conn_id (#73162)
Log when a Snowpark container job returns no logs (#73011)
Template every connection id accepted by provider operators (#73286)
Add SnowflakeNotebookOperator for executing Snowflake Notebooks (#63470)
Add Cortex Agent management methods to SnowflakeCortexAgentHook (#70101)
Validate Snowflake account and region before building the SQL API URL (#72174)
Fix Snowflake SQL API OAuth for client_credentials and azure_conn_id (#73162)
Log when a Snowpark container job returns no logs (#73011)
One column per quarter.
Nothing published for this version
SnowparkContainerJobOperator now applies a default timeout of 24 hours where it previously polled indefinitely, so a task running longer than a day no
Release Date: 2026-09-14
Warning
SnowparkContainerJobOperator now applies a default timeout of 24 hours where it previously polled indefinitely, so a task running longer than a day now fails. Increase timeout to allow more time.
Add external access integrations to SnowparkContainerJobOperator (#72602)
Add deferrable mode to SnowparkContainerJobOperator (#70103)
Cancel Snowflake queries when a user kills the deferred task (#69635)
Remove redundant _set_context in SnowflakeSqlApiTrigger (#71659)
Remove the TaskFlow recommendation from the Snowflake documentation (#72090)
Warning
SnowparkContainerJobOperator now applies a default timeout of 24 hours where it previously polled indefinitely, so a task running longer than a day now fails. Increase timeout to allow more time.
Add external access integrations to SnowparkContainerJobOperator (#72602)
Add deferrable mode to SnowparkContainerJobOperator (#70103)
Cancel Snowflake queries when a user kills the deferred task (#69635)
Remove redundant _set_context in SnowflakeSqlApiTrigger (#71659)
Remove the TaskFlow recommendation from the Snowflake documentation (#72090)
Nothing published for this version
- Make 'durable' reach 'default_args' and warn when set below Airflow 3.3
Release Date: 2026-08-23
Make 'durable' reach 'default_args' and warn when set below Airflow 3.3 (#71531)
Document how clearing tasks works with task state store on durable operators (#71358)
Make 'durable' reach 'default_args' and warn when set below Airflow 3.3 (#71531)
Document how clearing tasks works with task state store on durable operators (#71358)
Nothing published for this version
- Add SnowflakeCortexAgentOperator to Snowflake Provider
Release Date: 2026-08-08
Add SnowflakeCortexAgentOperator to Snowflake Provider (#69939)
Log check_query_output response via format string in Snowflake SQL API hook (#67848)
Fix snowflake provider installs picking an unimportable pyOpenSSL (#71145)
Use common.compat.sdk for timezone imports in providers (#70492)
Move the SnowparkContainerJobOperator required-argument check to execute() (#70332, #70874)
Document effect of state-store cleanup for operators with durable execution (#70721)
Add SnowflakeCortexAgentOperator to Snowflake Provider (#69939)
Log check_query_output response via format string in Snowflake SQL API hook (#67848)
Fix snowflake provider installs picking an unimportable pyOpenSSL (#71145)
Use common.compat.sdk for timezone imports in providers (#70492)
Move the SnowparkContainerJobOperator required-argument check to execute() (#70332, #70874)
Document effect of state-store cleanup for operators with durable execution (#70721)
Nothing published for this version
Nothing published for this version
- Add durable execution to SnowflakeSqlApiOperator
Release Date: 2026-07-28
Add durable execution to SnowflakeSqlApiOperator (#69477)
Add SnowflakeCortexAgentHook (#68942)
Add SnowparkContainerJobOperator (#68259)
Set stream=False for Snowflake Cortex Agent requests. (#69731)
Fix SnowflakeSqlApiOperator polling to avoid needless sleeps (#69450)
Align hook run() annotations with None-able handler results (#69230)
Flag conn-fields in hook but absent from provider.yaml in static checks (#69655)
Extract configuration-specific logic from _get_static_conn_params() (#68597)
SnowflakeHook: extract OAuth token lifecycle management into dedicated helper (#68549)
Link task state store docs in durable execution across providers (#69851)
Add durable execution to SnowflakeSqlApiOperator (#69477)
Add SnowflakeCortexAgentHook (#68942)
Add SnowparkContainerJobOperator (#68259)
Set stream=False for Snowflake Cortex Agent requests. (#69731)
Fix SnowflakeSqlApiOperator polling to avoid needless sleeps (#69450)
Align hook run() annotations with None-able handler results (#69230)
Flag conn-fields in hook but absent from provider.yaml in static checks (#69655)
Extract configuration-specific logic from _get_static_conn_params() (#68597)
SnowflakeHook: extract OAuth token lifecycle management into dedicated helper (#68549)
Link task state store docs in durable execution across providers (#69851)
Nothing published for this version
Nothing published for this version
- Add Snowflake Workload Identity Federation (WIF) support
Release Date: 2026-06-22
Add Snowflake Workload Identity Federation (WIF) support (#68107)
Improve SnowflakeSqlApiOperator error message on query status check failure (#66642)
Add Snowflake Workload Identity Federation (WIF) support (#68107)
Improve SnowflakeSqlApiOperator error message on query status check failure (#66642)
Nothing published for this version
- Add uri sanitizers and asset factories for new schemes
Release Date: 2026-05-23
Add uri sanitizers and asset factories for new schemes (#66426)
Add statement timeout support in SnowflakeSqlApiHook & Operator (#63575)
Replace AirflowExceptions with native exceptions in Snowflake provider (#66279)
Add PAT connection to snowflake in SnowflakeHook (#66953)
Add Snowflake data quality operator examples to provider docs and system tests (#65623)
Add uri sanitizers and asset factories for new schemes (#66426)
Add statement timeout support in SnowflakeSqlApiHook & Operator (#63575)
Replace AirflowExceptions with native exceptions in Snowflake provider (#66279)
Add PAT connection to snowflake in SnowflakeHook (#66953)
Add Snowflake data quality operator examples to provider docs and system tests (#65623)
Nothing published for this version
- Fix ''SnowflakeHook'' transaction support: multi-statement SQL and 'AUTOCOMMIT'
Release Date: 2026-04-26
Fix ''SnowflakeHook'' transaction support: multi-statement SQL and 'AUTOCOMMIT' (#65040)
Mark Snowflake connection form 'Proxy Port' field optional (#65444)
Fix ''SnowflakeHook'' transaction support: multi-statement SQL and 'AUTOCOMMIT' (#65040)
Mark Snowflake connection form 'Proxy Port' field optional (#65444)
Nothing published for this version
- Load hook metadata from YAML without importing Hook class
Release Date: 2026-04-12
Load hook metadata from YAML without importing Hook class (#63826)
enhance SnowflakeSqlApi docstring (statement_count) (#64727)
Load hook metadata from YAML without importing Hook class (#63826)
enhance SnowflakeSqlApi docstring (statement_count) (#64727)
Nothing published for this version
- Add PAT authentication support to SnowflakeSqlApiHook
Release Date: 2026-03-28
Add PAT authentication support to SnowflakeSqlApiHook (#62162)
Add Python 3.14 Support (#63520)
Adds documentation for previously added support (#63487)
Remove 3.12 warning (#63325)
Add PAT authentication support to SnowflakeSqlApiHook (#62162)
Add Python 3.14 Support (#63520)
Adds documentation for previously added support (#63487)
Remove 3.12 warning (#63325)
Nothing published for this version
- Allow SnowflakeHook + SnowflakeSqlApiHook 'private_key_content' to use raw key in addition to base64 encoding
Release Date: 2026-03-13
Allow SnowflakeHook + SnowflakeSqlApiHook 'private_key_content' to use raw key in addition to base64 encoding (#62378)
Centralize OAuth grant_type validation in SnowflakeHook (#61969)
Lazy load 'snowflake' imports in Snowflake provider. (#62365)
Allow SnowflakeHook + SnowflakeSqlApiHook 'private_key_content' to use raw key in addition to base64 encoding (#62378)
Centralize OAuth grant_type validation in SnowflakeHook (#61969)
Lazy load 'snowflake' imports in Snowflake provider. (#62365)
Nothing published for this version
- Add missing conn-fields for providers migrated to yaml
Release Date: 2026-03-02
Add missing conn-fields for providers migrated to yaml (#62116)
feat: Add Hook Level Lineage to SQL hooks (#61535)
Added retry logic for Snowflake OAuth token requests (#61796)
Add missing conn-fields for providers migrated to yaml (#62116)
feat: Add Hook Level Lineage to SQL hooks (#61535)
Added retry logic for Snowflake OAuth token requests (#61796)
Nothing published for this version
- Handle HTTP 422 responses via _process_response instead of raising immediately in Snowflake SQL API hook
Release Date: 2026-02-14
Handle HTTP 422 responses via _process_response instead of raising immediately in Snowflake SQL API hook (#60891)
Handle HTTP 422 responses via _process_response instead of raising immediately in Snowflake SQL API hook (#60891)
Nothing published for this version
- (feat): add HTTP request customization parameters to 'SnowflakeSqlApiHook'
Release Date: 2026-02-02
(feat): add HTTP request customization parameters to 'SnowflakeSqlApiHook' (#60689)
reformat add proxy support commit (#60432)
(feat): add HTTP request customization parameters to 'SnowflakeSqlApiHook' (#60689)
reformat add proxy support commit (#60432)
Nothing published for this version
- Fix OAuth token refresh for long-running SnowflakeHook tasks and add tests.
Release Date: 2026-01-17
Fix OAuth token refresh for long-running SnowflakeHook tasks and add tests. (#60027)
Consume ''AirflowOptionalProviderFeatureException'' from compat sdk in providers (#60335)
New year means updated Copyright notices (#60344)
Migrated conf imports for snowflake provider to use sdk config (#60002)
Improve changelog descriptions in PR #59947 (latest versions only) (#60036)
Fix OAuth token refresh for long-running SnowflakeHook tasks and add tests. (#60027)
Consume ''AirflowOptionalProviderFeatureException'' from compat sdk in providers (#60335)
New year means updated Copyright notices (#60344)
Migrated conf imports for snowflake provider to use sdk config (#60002)
Improve changelog descriptions in PR #59947 (latest versions only) (#60036)
Nothing published for this version
- Remove unneeded call to SnowflakeSqlApiHook
Release Date: 2026-01-02
Remove unneeded call to SnowflakeSqlApiHook (#59470)
Nothing published for this version
- Support optional scope in OAuth token request
Release Date: 2025-12-13
Support optional scope in OAuth token request (#58871)
chore: use OL macros instead of building OL ids from scratch (#59197)
Add backcompat for exceptions in providers (#58727)
Support optional scope in OAuth token request (#58871)
chore: use OL macros instead of building OL ids from scratch (#59197)
Add backcompat for exceptions in providers (#58727)
Nothing published for this version
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy < https://github.com/apache/a
Release Date: 2025-11-30
Note
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy < https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers >_.
Add support for cancelling running queries via SQL API (#56164)
Bump minimum Airflow version in providers to Airflow 2.11.0 (#58612)
Note
This release of provider is only available for Airflow 2.11+ as explained in the Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>_.
Add support for cancelling running queries via SQL API (#56164)
Bump minimum Airflow version in providers to Airflow 2.11.0 (#58612)
Nothing published for this version
- Convert all airflow distributions to be compliant with ASF requirements
Release Date: 2025-11-17
Convert all airflow distributions to be compliant with ASF requirements (#58138)
better error handling in SnowflakeHook and PostgresHook when old version of AzureBaseHook (#57184)
Bump snowflake-connector-python>=3.16.0 (#57420)
Convert all airflow distributions to be compliant with ASF requirements (#58138)
better error handling in SnowflakeHook and PostgresHook when old version of AzureBaseHook (#57184)
Bump snowflake-connector-python>=3.16.0 (#57420)
Nothing published for this version
- Update Snowflake docs with breaking change
Release Date: 2025-10-26
Add Azure IAM/Entra ID support for SnowflakeHook (#55874)
Add 'snowflake-snowpark-python' pip resolver hint for Python 3.13 (#56606)
Migrate snowflake provider to ''common.compat'' (#57003)
Fix path of how-to-guide docs for copy_into_snowflake.rst(#56527)
Update Snowflake docs with breaking change (#56516)
Add Azure IAM/Entra ID support for SnowflakeHook (#55874)
Add 'snowflake-snowpark-python' pip resolver hint for Python 3.13 (#56606)
Migrate snowflake provider to ''common.compat'' (#57003)
Fix path of how-to-guide docs for copy_into_snowflake.rst(#56527)
Update Snowflake docs with breaking change (#56516)
Nothing published for this version
- Switch all airflow logging to structlog
Release Date: 2025-09-22
Switch all airflow logging to structlog (#52651)
Nothing published for this version
- fix(snowflake): enhance error message formatting for SQL errors
Release Date: 2025-09-09
fix(snowflake): enhance error message formatting for SQL errors (#54063)
Make term Dag consistent in providers docs (#55101)
fix(snowflake): enhance error message formatting for SQL errors (#54063)
Make term Dag consistent in providers docs (#55101)
Nothing published for this version
- Fix SnowflakeCheckOperator and SnowflakeValueCheckOperator to use parameters arg correctly
Release Date: 2025-08-11
Fix SnowflakeCheckOperator and SnowflakeValueCheckOperator to use parameters arg correctly (#53837)
Fix SnowflakeCheckOperator and SnowflakeValueCheckOperator to use parameters arg correctly (#53837)
Nothing published for this version
- Deprecate decorators from Core
Release Date: 2025-08-02
Add Python 3.13 support for Airflow. (#46891)
another magic pip resolver hint (#53329)
fix: Improve logging and timeouts in OL helpers (#53139)
Remove upper-binding for "python-requires" (#52980)
Cleanup type ignores in snowflake provider where possible (#53258)
Remove type ignore across codebase after mypy upgrade (#53243)
Make snowpark optional for snowflake provider and disable it for Python 3.13 (#53489)
Deprecate decorators from Core (#53629)
Add Python 3.13 support for Airflow. (#46891)
another magic pip resolver hint (#53329)
fix: Improve logging and timeouts in OL helpers (#53139)
Remove upper-binding for "python-requires" (#52980)
Cleanup type ignores in snowflake provider where possible (#53258)
Remove type ignore across codebase after mypy upgrade (#53243)
Make snowpark optional for snowflake provider and disable it for Python 3.13 (#53489)
Deprecate decorators from Core (#53629)
Nothing published for this version
- feat: Add explicit support for SnowflakeSqlApiHook to Openlineage helper
Release Date: 2025-07-06
feat: Add explicit support for SnowflakeSqlApiHook to Openlineage helper (#52161)
feat: Add new query related methods to SnowflakeSqlApiHook (#52157)
feat: Add SnowflakeSqlApiHook Retry Logic (#51463)
Provider Migration: Update Snowflake provider for Airflow 3.0 compatibility (#52629)
Disable UP038 ruff rule and revert mandatory 'X | Y' in insintance checks (#52644)
Bump pyarrow to 16.1.0 minimum version for several providers (#52635)
Replace models.BaseOperator to Task SDK one for Common Providers (#52443)
Relax snowflake-snowpark-python for Python>=3.12 (#52356)
Drop support for Python 3.9 (#52072)
Replace 'models.BaseOperator' to Task SDK one for Standard Provider (#52292)
Bump upper binding on pandas in all providers (#52060)
feat: Add explicit support for SnowflakeSqlApiHook to Openlineage helper (#52161)
feat: Add new query related methods to SnowflakeSqlApiHook (#52157)
feat: Add SnowflakeSqlApiHook Retry Logic (#51463)
Provider Migration: Update Snowflake provider for Airflow 3.0 compatibility (#52629)
Disable UP038 ruff rule and revert mandatory 'X | Y' in insintance checks (#52644)
Bump pyarrow to 16.1.0 minimum version for several providers (#52635)
Replace models.BaseOperator to Task SDK one for Common Providers (#52443)
Relax snowflake-snowpark-python for Python>=3.12 (#52356)
Drop support for Python 3.9 (#52072)
Replace 'models.BaseOperator' to Task SDK one for Standard Provider (#52292)
Bump upper binding on pandas in all providers (#52060)
Nothing published for this version
- Extend SnowflakeHook OAuth implementation to support external IDPs and client_credentials grant
Release Date: 2025-06-18
Extend SnowflakeHook OAuth implementation to support external IDPs and client_credentials grant (#51620)
fix: make query_ids in SnowflakeSqlApiOperator in deferrable mode consistent (#51542)
fix: Duplicate region in Snowflake URI no longer breaks OpenLineage (#50831)
Do not allow semicolons in CopyFromExternalStageToSnowflakeOperator fieldS (#51734)
Port ''ti.run'' to Task SDK execution path (#50141)
Extend SnowflakeHook OAuth implementation to support external IDPs and client_credentials grant (#51620)
fix: make query_ids in SnowflakeSqlApiOperator in deferrable mode consistent (#51542)
fix: Duplicate region in Snowflake URI no longer breaks OpenLineage (#50831)
Do not allow semicolons in CopyFromExternalStageToSnowflakeOperator fieldS (#51734)
Port ''ti.run'' to Task SDK execution path (#50141)
Nothing published for this version
- fix: Adjust OpenLineage task state check for Airflow 3
Release Date: 2025-05-18
fix: Adjust OpenLineage task state check for Airflow 3 (#50380)
nit: Switch to emitting OL events with adapter and not client directly (#50398)
docs: remove stale warning about SnowflakeOperator (#50450)
fix: Adjust OpenLineage task state check for Airflow 3 (#50380)
nit: Switch to emitting OL events with adapter and not client directly (#50398)
docs: remove stale warning about SnowflakeOperator (#50450)
Nothing published for this version
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy .
Release Date: 2025-05-10
Note
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy .
Note
private_key_content in Snowflake connection should now be base64 encoded. To encode your private key, you can use the following Python snippet:
import base64 with open ( "path/to/your/private_key.pem" , "rb" ) as key_file : encoded_key = base64 . b64encode ( key_file . read ()) . decode ( "utf-8" ) print ( encoded_key )
Adding OAuth support for SnowflakeHook (#47191)
Warning
Existing connections using key pairs break as a result of changing the connection string to be base64 encoded.
make 'private_key_content' in snowflake connection to be a base64 encoded string (#49467)
Fix SnowflakeSqlApiHook backwards compatibility for get_oauth_token method (#49482)
Fix mypy for get_oauth_token signature in SnowflakeSqlApiHook (#49449)
Fix infinite recursive call of _get_conn_params while getting oauth token from snowflake (#50344)
Fix: adjust dag_run extraction for Airflow 3 in OL utils (#50346)
Remove AIRFLOW_2_10_PLUS conditions (#49877)
Bump min Airflow version in providers to 2.10 (#49843)
enhance: logs SQL before execution in 'snowflake' and 'databricks_sql' (#48942)
chore: import paths use the stable functions (#49460)
add root parent information to OpenLineage events (#49237)
Note
This release of provider is only available for Airflow 2.10+ as explained in the Apache Airflow providers support policy.
Note
private_key_content in Snowflake connection should now be base64 encoded. To encode your private key, you can use the following Python snippet:
import base64
with open("path/to/your/private_key.pem", "rb") as key_file:
encoded_key = base64.b64encode(key_file.read()).decode("utf-8")
print(encoded_key)
Adding OAuth support for SnowflakeHook (#47191)
Warning
Existing connections using key pairs break as a result of changing the connection string to be base64 encoded.
make 'private_key_content' in snowflake connection to be a base64 encoded string (#49467)
Fix SnowflakeSqlApiHook backwards compatibility for get_oauth_token method (#49482)
Fix mypy for get_oauth_token signature in SnowflakeSqlApiHook (#49449)
Fix infinite recursive call of _get_conn_params while getting oauth token from snowflake (#50344)
Fix: adjust dag_run extraction for Airflow 3 in OL utils (#50346)
Remove AIRFLOW_2_10_PLUS conditions (#49877)
Bump min Airflow version in providers to 2.10 (#49843)
enhance: logs SQL before execution in 'snowflake' and 'databricks_sql' (#48942)
chore: import paths use the stable functions (#49460)
add root parent information to OpenLineage events (#49237)
Nothing published for this version
Nothing published for this version
- remove superfluous else block
Release Date: 2025-04-19
remove superfluous else block (#49199)
Your coding agent can read these notes before it upgrades. Set up the MCP server →