Skip to content

Commit 44f8479

Browse files
authored
Migrate slack provider to common.compat (apache#57110)
1 parent b153d5e commit 44f8479

File tree

9 files changed

+11
-40
lines changed

9 files changed

+11
-40
lines changed

providers/slack/src/airflow/providers/slack/hooks/slack.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,16 @@
3939
from typing_extensions import NotRequired
4040

4141
from airflow.exceptions import AirflowException, AirflowNotFoundException
42+
from airflow.providers.common.compat.sdk import BaseHook
4243
from airflow.providers.slack.utils import ConnectionExtraConfig, get_async_connection
43-
from airflow.providers.slack.version_compat import BaseHook
4444
from airflow.utils.helpers import exactly_one
4545

4646
if TYPE_CHECKING:
4747
from slack_sdk.http_retry import RetryHandler
4848
from slack_sdk.web.async_client import AsyncSlackResponse
4949
from slack_sdk.web.slack_response import SlackResponse
5050

51-
from airflow.providers.slack.version_compat import Connection
51+
from airflow.providers.common.compat.sdk import Connection
5252

5353

5454
class FileUploadTypeDef(TypedDict):

providers/slack/src/airflow/providers/slack/hooks/slack_webhook.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
from slack_sdk.webhook.async_client import AsyncWebhookClient
2828

2929
from airflow.exceptions import AirflowException, AirflowNotFoundException
30+
from airflow.providers.common.compat.sdk import BaseHook
3031
from airflow.providers.slack.utils import ConnectionExtraConfig, get_async_connection
31-
from airflow.providers.slack.version_compat import BaseHook
3232

3333
if TYPE_CHECKING:
3434
from slack_sdk.http_retry import RetryHandler

providers/slack/src/airflow/providers/slack/operators/slack.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,13 @@
2424
from typing import TYPE_CHECKING, Any, Literal
2525

2626
from airflow.exceptions import AirflowProviderDeprecationWarning
27+
from airflow.providers.common.compat.sdk import BaseOperator
2728
from airflow.providers.slack.hooks.slack import SlackHook
28-
from airflow.providers.slack.version_compat import BaseOperator
2929

3030
if TYPE_CHECKING:
3131
from slack_sdk.http_retry import RetryHandler
3232

33-
try:
34-
from airflow.sdk.definitions.context import Context
35-
except ImportError:
36-
# TODO: Remove once provider drops support for Airflow 2
37-
from airflow.utils.context import Context
33+
from airflow.providers.common.compat.sdk import Context
3834

3935

4036
class SlackAPIOperator(BaseOperator):

providers/slack/src/airflow/providers/slack/operators/slack_webhook.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,13 @@
2121
from functools import cached_property
2222
from typing import TYPE_CHECKING
2323

24+
from airflow.providers.common.compat.sdk import BaseOperator
2425
from airflow.providers.slack.hooks.slack_webhook import SlackWebhookHook
25-
from airflow.providers.slack.version_compat import BaseOperator
2626

2727
if TYPE_CHECKING:
2828
from slack_sdk.http_retry import RetryHandler
2929

30-
try:
31-
from airflow.sdk.definitions.context import Context
32-
except ImportError:
33-
# TODO: Remove once provider drops support for Airflow 2
34-
from airflow.utils.context import Context
30+
from airflow.providers.common.compat.sdk import Context
3531

3632

3733
class SlackWebhookOperator(BaseOperator):

providers/slack/src/airflow/providers/slack/transfers/base_sql_to_slack.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from typing import TYPE_CHECKING, Any
2121

2222
from airflow.exceptions import AirflowException
23-
from airflow.providers.slack.version_compat import BaseHook, BaseOperator
23+
from airflow.providers.common.compat.sdk import BaseHook, BaseOperator
2424

2525
if TYPE_CHECKING:
2626
import pandas as pd

providers/slack/src/airflow/providers/slack/transfers/sql_to_slack.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,7 @@
2828
from airflow.providers.slack.utils import parse_filename
2929

3030
if TYPE_CHECKING:
31-
try:
32-
from airflow.sdk.definitions.context import Context
33-
except ImportError:
34-
# TODO: Remove once provider drops support for Airflow 2
35-
from airflow.utils.context import Context
31+
from airflow.providers.common.compat.sdk import Context
3632

3733

3834
class SqlToSlackApiFileOperator(BaseSqlToSlackOperator):

providers/slack/src/airflow/providers/slack/transfers/sql_to_slack_webhook.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,7 @@
2626
from airflow.providers.slack.transfers.base_sql_to_slack import BaseSqlToSlackOperator
2727

2828
if TYPE_CHECKING:
29-
try:
30-
from airflow.sdk.definitions.context import Context
31-
except ImportError:
32-
# TODO: Remove once provider drops support for Airflow 2
33-
from airflow.utils.context import Context
29+
from airflow.providers.common.compat.sdk import Context
3430

3531

3632
class SqlToSlackWebhookOperator(BaseSqlToSlackOperator):

providers/slack/src/airflow/providers/slack/utils/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
from asgiref.sync import sync_to_async
2424

25-
from airflow.providers.slack.version_compat import BaseHook, Connection
25+
from airflow.providers.common.compat.sdk import BaseHook, Connection
2626
from airflow.utils.types import NOTSET
2727

2828

providers/slack/src/airflow/providers/slack/version_compat.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,20 +35,7 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
3535
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
3636
AIRFLOW_V_3_1_PLUS: bool = get_base_airflow_version_tuple() >= (3, 1, 0)
3737

38-
if AIRFLOW_V_3_0_PLUS:
39-
from airflow.sdk import BaseOperator, Connection
40-
else:
41-
from airflow.models import BaseOperator, Connection # type: ignore[assignment]
42-
43-
if AIRFLOW_V_3_1_PLUS:
44-
from airflow.sdk import BaseHook
45-
else:
46-
from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
47-
4838
__all__ = [
4939
"AIRFLOW_V_3_0_PLUS",
5040
"AIRFLOW_V_3_1_PLUS",
51-
"BaseHook",
52-
"BaseOperator",
53-
"Connection",
5441
]

0 commit comments

Comments
 (0)