Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion providers/snowflake/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ requires-python = ">=3.10"
# After you modify the dependencies, and rebuild your Breeze CI image with ``breeze ci-image build``
dependencies = [
"apache-airflow>=2.10.0",
"apache-airflow-providers-common-compat>=1.6.0",
"apache-airflow-providers-common-compat>=1.7.4", # + TODO: bump to next version
"apache-airflow-providers-common-sql>=1.27.5",
'pandas>=2.1.2; python_version <"3.13"',
'pandas>=2.2.3; python_version >="3.13"',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,11 @@
from __future__ import annotations

from collections.abc import Callable, Sequence
from typing import TYPE_CHECKING

from airflow.providers.snowflake.version_compat import AIRFLOW_V_3_0_PLUS

if AIRFLOW_V_3_0_PLUS:
from airflow.sdk.bases.decorator import DecoratedOperator, task_decorator_factory
else:
from airflow.decorators.base import DecoratedOperator, task_decorator_factory # type: ignore[no-redef]

from airflow.providers.common.compat.sdk import DecoratedOperator, TaskDecorator, task_decorator_factory
from airflow.providers.snowflake.operators.snowpark import SnowparkOperator
from airflow.providers.snowflake.utils.snowpark import inject_session_into_op_kwargs

if TYPE_CHECKING:
from airflow.sdk.bases.decorator import TaskDecorator


class _SnowparkDecoratedOperator(DecoratedOperator, SnowparkOperator):
"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,12 @@

from airflow.configuration import conf
from airflow.exceptions import AirflowException
from airflow.providers.common.compat.sdk import Connection
from airflow.providers.common.sql.hooks.handlers import return_single_query_results
from airflow.providers.common.sql.hooks.sql import DbApiHook
from airflow.providers.snowflake.utils.openlineage import fix_snowflake_sqlalchemy_uri
from airflow.utils.strings import to_boolean

try:
from airflow.sdk import Connection
except ImportError:
from airflow.models.connection import Connection # type: ignore[assignment]

T = TypeVar("T")
if TYPE_CHECKING:
from airflow.providers.openlineage.extractors import OperatorLineage
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,7 @@
from airflow.providers.snowflake.triggers.snowflake_trigger import SnowflakeSqlApiTrigger

if TYPE_CHECKING:
try:
from airflow.sdk.definitions.context import Context
except ImportError:
# TODO: Remove once provider drops support for Airflow 2
from airflow.utils.context import Context
from airflow.providers.common.compat.sdk import Context


class SnowflakeCheckOperator(SQLCheckOperator):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@
from collections.abc import Sequence
from typing import Any

from airflow.providers.common.compat.sdk import BaseOperator
from airflow.providers.snowflake.hooks.snowflake import SnowflakeHook
from airflow.providers.snowflake.utils.common import enclose_param
from airflow.providers.snowflake.version_compat import BaseOperator


def _validate_parameter(param_name: str, value: str | None) -> str | None:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,6 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:

AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)

if AIRFLOW_V_3_0_PLUS:
from airflow.sdk import BaseOperator
else:
from airflow.models import BaseOperator

__all__ = [
"AIRFLOW_V_3_0_PLUS",
"BaseOperator",
]
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,7 @@
pytest.importorskip("snowflake-snowpark-python")


from tests_common.test_utils.version_compat import AIRFLOW_V_3_0_PLUS

if AIRFLOW_V_3_0_PLUS:
from airflow.sdk import task
else:
from airflow.decorators import task # type: ignore[attr-defined,no-redef]
from airflow.providers.common.compat.sdk import task
from airflow.utils import timezone

from tests_common.test_utils.version_compat import AIRFLOW_V_3_0_PLUS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,7 @@

from tests_common.test_utils.dag import sync_dag_to_db
from tests_common.test_utils.db import clear_db_dag_bundles, clear_db_dags, clear_db_runs
from tests_common.test_utils.version_compat import AIRFLOW_V_3_0_PLUS, AIRFLOW_V_3_1_PLUS

if AIRFLOW_V_3_1_PLUS:
from airflow.sdk import timezone
else:
from airflow.utils import timezone # type: ignore[attr-defined,no-redef]
from tests_common.test_utils.version_compat import AIRFLOW_V_3_0_PLUS, timezone

DEFAULT_DATE = timezone.datetime(2015, 1, 1)
DEFAULT_DATE_ISO = DEFAULT_DATE.isoformat()
Expand Down