Astronomer Providers

raw JSON →
1.19.4 verified Mon Apr 27 auth: no python

Apache Airflow Providers containing deferrable (async) operators and sensors for various services, originally developed by Astronomer. Version 1.19.4 is the latest; support is actively maintained but many operators are deprecated in favor of upstream Apache Airflow providers.

pip install astronomer-providers
error ModuleNotFoundError: No module named 'astronomer_providers'
cause Incorrect import path - package name uses dots, not underscores.
fix
Use 'astronomer.providers' instead of 'astronomer_providers'.
error AttributeError: module 'astronomer.providers.snowflake.operators.snowflake' has no attribute 'SnowflakeOperatorAsync'
cause Operator deprecated and removed in newer versions, or imported from wrong module.
fix
Check deprecation warnings; consider using upstream Airflow provider's equivalent with deferrable=True.
error AirflowException: The conn_id `snowflake_default` isn't defined
cause The Airflow connection for the provider is not configured.
fix
Set up the connection in Airflow UI or environment variables (e.g., AIRFLOW_CONN_SNOWFLAKE_DEFAULT).
breaking Version 1.19.0 deprecated many operators and sensors in favor of upstream Apache Airflow providers' deferrable counterparts. These deprecated operators now act as proxies and may be removed in the future.
fix Migrate to the upstream Airflow provider's deferrable version (e.g., use SnowflakeOperator from apache-airflow-providers-snowflake with deferrable=True).
deprecated Support for Python <3.8 dropped in version 1.19.0.
fix Upgrade Python to 3.8 or later.
gotcha Import paths use dots (e.g., 'astronomer.providers.snowflake...'), not underscores. Common mistake: using 'astronomer_providers'.
fix Use 'astronomer.providers' in import statements.

Minimal DAG using a deferrable Snowflake operator.

from datetime import datetime
from airflow import DAG
from astronomer.providers.snowflake.operators.snowflake import SnowflakeOperatorAsync

dag = DAG(
    dag_id='example_async_snowflake',
    start_date=datetime(2023, 1, 1),
    schedule=None,
    catchup=False,
)

task = SnowflakeOperatorAsync(
    task_id='run_query',
    sql="SELECT 1;",
    snowflake_conn_id='snowflake_default',
    dag=dag,
)