apache-airflow-providers-standard 1.9.0rc1__py3-none-any.whl → 1.9.1rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. airflow/providers/standard/__init__.py +1 -1
  2. airflow/providers/standard/decorators/bash.py +7 -13
  3. airflow/providers/standard/decorators/branch_external_python.py +2 -8
  4. airflow/providers/standard/decorators/branch_python.py +2 -7
  5. airflow/providers/standard/decorators/branch_virtualenv.py +2 -7
  6. airflow/providers/standard/decorators/external_python.py +2 -7
  7. airflow/providers/standard/decorators/python.py +2 -7
  8. airflow/providers/standard/decorators/python_virtualenv.py +2 -9
  9. airflow/providers/standard/decorators/sensor.py +2 -9
  10. airflow/providers/standard/decorators/short_circuit.py +2 -8
  11. airflow/providers/standard/decorators/stub.py +6 -12
  12. airflow/providers/standard/example_dags/example_bash_decorator.py +1 -6
  13. airflow/providers/standard/example_dags/example_branch_operator.py +1 -6
  14. airflow/providers/standard/example_dags/example_branch_operator_decorator.py +1 -6
  15. airflow/providers/standard/example_dags/example_external_task_parent_deferrable.py +2 -6
  16. airflow/providers/standard/example_dags/example_hitl_operator.py +1 -1
  17. airflow/providers/standard/example_dags/example_sensors.py +1 -6
  18. airflow/providers/standard/example_dags/example_short_circuit_decorator.py +1 -6
  19. airflow/providers/standard/example_dags/example_short_circuit_operator.py +1 -6
  20. airflow/providers/standard/hooks/filesystem.py +1 -1
  21. airflow/providers/standard/hooks/package_index.py +1 -1
  22. airflow/providers/standard/hooks/subprocess.py +1 -1
  23. airflow/providers/standard/operators/bash.py +3 -12
  24. airflow/providers/standard/operators/branch.py +1 -1
  25. airflow/providers/standard/operators/datetime.py +2 -6
  26. airflow/providers/standard/operators/empty.py +1 -1
  27. airflow/providers/standard/operators/hitl.py +1 -1
  28. airflow/providers/standard/operators/latest_only.py +1 -6
  29. airflow/providers/standard/operators/python.py +3 -6
  30. airflow/providers/standard/operators/smooth.py +1 -1
  31. airflow/providers/standard/operators/trigger_dagrun.py +9 -19
  32. airflow/providers/standard/operators/weekday.py +2 -6
  33. airflow/providers/standard/sensors/bash.py +2 -6
  34. airflow/providers/standard/sensors/date_time.py +2 -6
  35. airflow/providers/standard/sensors/external_task.py +4 -9
  36. airflow/providers/standard/sensors/filesystem.py +1 -1
  37. airflow/providers/standard/sensors/python.py +2 -6
  38. airflow/providers/standard/sensors/time.py +1 -6
  39. airflow/providers/standard/sensors/time_delta.py +3 -7
  40. airflow/providers/standard/sensors/weekday.py +2 -7
  41. airflow/providers/standard/triggers/temporal.py +1 -5
  42. airflow/providers/standard/utils/skipmixin.py +1 -7
  43. airflow/providers/standard/version_compat.py +5 -21
  44. {apache_airflow_providers_standard-1.9.0rc1.dist-info → apache_airflow_providers_standard-1.9.1rc1.dist-info}/METADATA +32 -11
  45. {apache_airflow_providers_standard-1.9.0rc1.dist-info → apache_airflow_providers_standard-1.9.1rc1.dist-info}/RECORD +47 -47
  46. {apache_airflow_providers_standard-1.9.0rc1.dist-info → apache_airflow_providers_standard-1.9.1rc1.dist-info}/WHEEL +0 -0
  47. {apache_airflow_providers_standard-1.9.0rc1.dist-info → apache_airflow_providers_standard-1.9.1rc1.dist-info}/entry_points.txt +0 -0
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "1.9.0"
32
+ __version__ = "1.9.1"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.10.0"
@@ -21,24 +21,18 @@ import warnings
21
21
  from collections.abc import Callable, Collection, Mapping, Sequence
22
22
  from typing import TYPE_CHECKING, Any, ClassVar
23
23
 
24
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
25
-
26
- if AIRFLOW_V_3_0_PLUS:
27
- from airflow.sdk.bases.decorator import DecoratedOperator, TaskDecorator, task_decorator_factory
28
- else:
29
- from airflow.decorators.base import ( # type: ignore[no-redef]
30
- DecoratedOperator,
31
- TaskDecorator,
32
- task_decorator_factory,
33
- )
34
-
24
+ from airflow.providers.common.compat.sdk import (
25
+ DecoratedOperator,
26
+ TaskDecorator,
27
+ context_merge,
28
+ task_decorator_factory,
29
+ )
35
30
  from airflow.providers.standard.operators.bash import BashOperator
36
- from airflow.providers.standard.version_compat import context_merge
37
31
  from airflow.sdk.definitions._internal.types import SET_DURING_EXECUTION
38
32
  from airflow.utils.operator_helpers import determine_kwargs
39
33
 
40
34
  if TYPE_CHECKING:
41
- from airflow.sdk.definitions.context import Context
35
+ from airflow.providers.common.compat.sdk import Context
42
36
 
43
37
 
44
38
  class _BashDecoratedOperator(DecoratedOperator, BashOperator):
@@ -19,18 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
28
-
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
29
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
30
24
  from airflow.providers.standard.operators.python import BranchExternalPythonOperator
31
25
 
32
26
  if TYPE_CHECKING:
33
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
34
28
 
35
29
 
36
30
  class _BranchExternalPythonDecoratedOperator(_PythonDecoratedOperator, BranchExternalPythonOperator):
@@ -19,17 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
28
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
29
24
  from airflow.providers.standard.operators.python import BranchPythonOperator
30
25
 
31
26
  if TYPE_CHECKING:
32
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
33
28
 
34
29
 
35
30
  class _BranchPythonDecoratedOperator(_PythonDecoratedOperator, BranchPythonOperator):
@@ -19,17 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
28
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
29
24
  from airflow.providers.standard.operators.python import BranchPythonVirtualenvOperator
30
25
 
31
26
  if TYPE_CHECKING:
32
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
33
28
 
34
29
 
35
30
  class _BranchPythonVirtualenvDecoratedOperator(_PythonDecoratedOperator, BranchPythonVirtualenvOperator):
@@ -19,17 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
28
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
29
24
  from airflow.providers.standard.operators.python import ExternalPythonOperator
30
25
 
31
26
  if TYPE_CHECKING:
32
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
33
28
 
34
29
 
35
30
  class _PythonExternalDecoratedOperator(_PythonDecoratedOperator, ExternalPythonOperator):
@@ -19,16 +19,11 @@ from __future__ import annotations
19
19
  from collections.abc import Callable, Sequence
20
20
  from typing import TYPE_CHECKING
21
21
 
22
+ from airflow.providers.common.compat.sdk import DecoratedOperator, task_decorator_factory
22
23
  from airflow.providers.standard.operators.python import PythonOperator
23
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
24
-
25
- if AIRFLOW_V_3_0_PLUS:
26
- from airflow.sdk.bases.decorator import DecoratedOperator, task_decorator_factory
27
- else:
28
- from airflow.decorators.base import DecoratedOperator, task_decorator_factory # type: ignore[no-redef]
29
24
 
30
25
  if TYPE_CHECKING:
31
- from airflow.sdk.bases.decorator import TaskDecorator
26
+ from airflow.providers.common.compat.sdk import TaskDecorator
32
27
 
33
28
 
34
29
  class _PythonDecoratedOperator(DecoratedOperator, PythonOperator):
@@ -19,19 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
28
-
29
-
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
30
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
31
24
  from airflow.providers.standard.operators.python import PythonVirtualenvOperator
32
25
 
33
26
  if TYPE_CHECKING:
34
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
35
28
 
36
29
 
37
30
  class _PythonVirtualenvDecoratedOperator(_PythonDecoratedOperator, PythonVirtualenvOperator):
@@ -20,18 +20,11 @@ from __future__ import annotations
20
20
  from collections.abc import Callable, Sequence
21
21
  from typing import TYPE_CHECKING, ClassVar
22
22
 
23
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
24
-
25
- if AIRFLOW_V_3_0_PLUS:
26
- from airflow.sdk.bases.decorator import get_unique_task_id, task_decorator_factory
27
- else:
28
- from airflow.decorators.base import get_unique_task_id, task_decorator_factory # type: ignore[no-redef]
29
-
30
-
23
+ from airflow.providers.common.compat.sdk import get_unique_task_id, task_decorator_factory
31
24
  from airflow.providers.standard.sensors.python import PythonSensor
32
25
 
33
26
  if TYPE_CHECKING:
34
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
35
28
 
36
29
 
37
30
  class DecoratedSensorOperator(PythonSensor):
@@ -19,18 +19,12 @@ from __future__ import annotations
19
19
  from collections.abc import Callable
20
20
  from typing import TYPE_CHECKING
21
21
 
22
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
23
-
24
- if AIRFLOW_V_3_0_PLUS:
25
- from airflow.sdk.bases.decorator import task_decorator_factory
26
- else:
27
- from airflow.decorators.base import task_decorator_factory # type: ignore[no-redef]
28
-
22
+ from airflow.providers.common.compat.sdk import task_decorator_factory
29
23
  from airflow.providers.standard.decorators.python import _PythonDecoratedOperator
30
24
  from airflow.providers.standard.operators.python import ShortCircuitOperator
31
25
 
32
26
  if TYPE_CHECKING:
33
- from airflow.sdk.bases.decorator import TaskDecorator
27
+ from airflow.providers.common.compat.sdk import TaskDecorator
34
28
 
35
29
 
36
30
  class _ShortCircuitDecoratedOperator(_PythonDecoratedOperator, ShortCircuitOperator):
@@ -21,20 +21,14 @@ import ast
21
21
  from collections.abc import Callable
22
22
  from typing import TYPE_CHECKING, Any
23
23
 
24
- if TYPE_CHECKING:
25
- from airflow.sdk.bases.decorator import DecoratedOperator, TaskDecorator, task_decorator_factory
26
- else:
27
- try:
28
- from airflow.sdk.bases.decorator import DecoratedOperator, TaskDecorator, task_decorator_factory
29
- except ModuleNotFoundError:
30
- from airflow.decorators.base import (
31
- DecoratedOperator,
32
- TaskDecorator,
33
- task_decorator_factory,
34
- )
24
+ from airflow.providers.common.compat.sdk import (
25
+ DecoratedOperator,
26
+ TaskDecorator,
27
+ task_decorator_factory,
28
+ )
35
29
 
36
30
  if TYPE_CHECKING:
37
- from airflow.sdk.definitions.context import Context
31
+ from airflow.providers.common.compat.sdk import Context
38
32
 
39
33
 
40
34
  class _StubOperator(DecoratedOperator):
@@ -20,16 +20,11 @@ from __future__ import annotations
20
20
  import pendulum
21
21
 
22
22
  from airflow.exceptions import AirflowSkipException
23
+ from airflow.providers.common.compat.sdk import TriggerRule
23
24
  from airflow.providers.standard.operators.empty import EmptyOperator
24
25
  from airflow.providers.standard.utils.weekday import WeekDay
25
26
  from airflow.sdk import chain, dag, task
26
27
 
27
- try:
28
- from airflow.sdk import TriggerRule
29
- except ImportError:
30
- # Compatibility for Airflow < 3.1
31
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
32
-
33
28
 
34
29
  @dag(schedule=None, start_date=pendulum.datetime(2023, 1, 1, tz="UTC"), catchup=False)
35
30
  def example_bash_decorator():
@@ -29,6 +29,7 @@ from pathlib import Path
29
29
 
30
30
  import pendulum
31
31
 
32
+ from airflow.providers.common.compat.sdk import TriggerRule
32
33
  from airflow.providers.standard.operators.empty import EmptyOperator
33
34
  from airflow.providers.standard.operators.python import (
34
35
  BranchExternalPythonOperator,
@@ -40,12 +41,6 @@ from airflow.providers.standard.operators.python import (
40
41
  )
41
42
  from airflow.sdk import DAG, Label
42
43
 
43
- try:
44
- from airflow.sdk import TriggerRule
45
- except ImportError:
46
- # Compatibility for Airflow < 3.1
47
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
48
-
49
44
  PATH_TO_PYTHON_BINARY = sys.executable
50
45
 
51
46
  with DAG(
@@ -30,15 +30,10 @@ import tempfile
30
30
 
31
31
  import pendulum
32
32
 
33
+ from airflow.providers.common.compat.sdk import TriggerRule
33
34
  from airflow.providers.standard.operators.empty import EmptyOperator
34
35
  from airflow.sdk import DAG, Label, task
35
36
 
36
- try:
37
- from airflow.sdk import TriggerRule
38
- except ImportError:
39
- # Compatibility for Airflow < 3.1
40
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
41
-
42
37
  PATH_TO_PYTHON_BINARY = sys.executable
43
38
 
44
39
  with DAG(
@@ -17,18 +17,14 @@
17
17
  from __future__ import annotations
18
18
 
19
19
  from airflow import DAG
20
+ from airflow.providers.common.compat.sdk import timezone
20
21
  from airflow.providers.standard.operators.empty import EmptyOperator
21
22
  from airflow.providers.standard.operators.trigger_dagrun import TriggerDagRunOperator
22
23
  from airflow.providers.standard.sensors.external_task import ExternalTaskSensor
23
24
 
24
- try:
25
- from airflow.sdk.timezone import datetime
26
- except ImportError:
27
- from airflow.utils.timezone import datetime # type: ignore[no-redef]
28
-
29
25
  with DAG(
30
26
  dag_id="example_external_task",
31
- start_date=datetime(2022, 1, 1),
27
+ start_date=timezone.datetime(2022, 1, 1),
32
28
  schedule="@once",
33
29
  catchup=False,
34
30
  tags=["example", "async", "core"],
@@ -32,7 +32,7 @@ from airflow.sdk import DAG, Param, task
32
32
  from airflow.sdk.bases.notifier import BaseNotifier
33
33
 
34
34
  if TYPE_CHECKING:
35
- from airflow.sdk.definitions.context import Context
35
+ from airflow.providers.common.compat.sdk import Context
36
36
 
37
37
  # [START hitl_tutorial]
38
38
 
@@ -21,6 +21,7 @@ import datetime
21
21
 
22
22
  import pendulum
23
23
 
24
+ from airflow.providers.common.compat.sdk import TriggerRule
24
25
  from airflow.providers.standard.operators.bash import BashOperator
25
26
  from airflow.providers.standard.sensors.bash import BashSensor
26
27
  from airflow.providers.standard.sensors.filesystem import FileSensor
@@ -31,12 +32,6 @@ from airflow.providers.standard.sensors.weekday import DayOfWeekSensor
31
32
  from airflow.providers.standard.utils.weekday import WeekDay
32
33
  from airflow.sdk import DAG
33
34
 
34
- try:
35
- from airflow.sdk import TriggerRule
36
- except ImportError:
37
- # Compatibility for Airflow < 3.1
38
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
39
-
40
35
 
41
36
  # [START example_callables]
42
37
  def success_callable():
@@ -20,15 +20,10 @@ from __future__ import annotations
20
20
 
21
21
  import pendulum
22
22
 
23
+ from airflow.providers.common.compat.sdk import TriggerRule
23
24
  from airflow.providers.standard.operators.empty import EmptyOperator
24
25
  from airflow.sdk import chain, dag, task
25
26
 
26
- try:
27
- from airflow.sdk import TriggerRule
28
- except ImportError:
29
- # Compatibility for Airflow < 3.1
30
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
31
-
32
27
 
33
28
  @dag(schedule=None, start_date=pendulum.datetime(2021, 1, 1, tz="UTC"), catchup=False, tags=["example"])
34
29
  def example_short_circuit_decorator():
@@ -21,16 +21,11 @@ from __future__ import annotations
21
21
 
22
22
  import pendulum
23
23
 
24
+ from airflow.providers.common.compat.sdk import TriggerRule
24
25
  from airflow.providers.standard.operators.empty import EmptyOperator
25
26
  from airflow.providers.standard.operators.python import ShortCircuitOperator
26
27
  from airflow.sdk import DAG, chain
27
28
 
28
- try:
29
- from airflow.sdk import TriggerRule
30
- except ImportError:
31
- # Compatibility for Airflow < 3.1
32
- from airflow.utils.trigger_rule import TriggerRule # type: ignore[no-redef,attr-defined]
33
-
34
29
  with DAG(
35
30
  dag_id="example_short_circuit_operator",
36
31
  schedule=None,
@@ -20,7 +20,7 @@ from __future__ import annotations
20
20
  from pathlib import Path
21
21
  from typing import Any
22
22
 
23
- from airflow.providers.standard.version_compat import BaseHook
23
+ from airflow.providers.common.compat.sdk import BaseHook
24
24
 
25
25
 
26
26
  class FSHook(BaseHook):
@@ -23,7 +23,7 @@ import subprocess
23
23
  from typing import Any
24
24
  from urllib.parse import quote, urlparse
25
25
 
26
- from airflow.providers.standard.version_compat import BaseHook
26
+ from airflow.providers.common.compat.sdk import BaseHook
27
27
 
28
28
 
29
29
  class PackageIndexHook(BaseHook):
@@ -24,7 +24,7 @@ from collections.abc import Iterator
24
24
  from subprocess import PIPE, STDOUT, Popen
25
25
  from tempfile import TemporaryDirectory, gettempdir
26
26
 
27
- from airflow.providers.standard.version_compat import BaseHook
27
+ from airflow.providers.common.compat.sdk import BaseHook
28
28
 
29
29
  SubprocessResult = namedtuple("SubprocessResult", ["exit_code", "output"])
30
30
 
@@ -25,23 +25,14 @@ from functools import cached_property
25
25
  from typing import TYPE_CHECKING, Any, cast
26
26
 
27
27
  from airflow.exceptions import AirflowException, AirflowSkipException
28
+ from airflow.providers.common.compat.sdk import context_to_airflow_vars
28
29
  from airflow.providers.standard.hooks.subprocess import SubprocessHook, SubprocessResult, working_directory
29
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseOperator
30
-
31
- if AIRFLOW_V_3_0_PLUS:
32
- from airflow.sdk.execution_time.context import context_to_airflow_vars
33
- else:
34
- from airflow.utils.operator_helpers import context_to_airflow_vars # type: ignore[no-redef, attr-defined]
30
+ from airflow.providers.standard.version_compat import BaseOperator
35
31
 
36
32
  if TYPE_CHECKING:
33
+ from airflow.providers.common.compat.sdk import Context
37
34
  from airflow.utils.types import ArgNotSet
38
35
 
39
- try:
40
- from airflow.sdk.definitions.context import Context
41
- except ImportError:
42
- # TODO: Remove once provider drops support for Airflow 2
43
- from airflow.utils.context import Context
44
-
45
36
 
46
37
  class BashOperator(BaseOperator):
47
38
  r"""
@@ -30,7 +30,7 @@ else:
30
30
  from airflow.models.skipmixin import SkipMixin
31
31
 
32
32
  if TYPE_CHECKING:
33
- from airflow.sdk.definitions.context import Context
33
+ from airflow.providers.common.compat.sdk import Context
34
34
  from airflow.sdk.types import RuntimeTaskInstanceProtocol
35
35
 
36
36
 
@@ -21,15 +21,11 @@ from collections.abc import Iterable
21
21
  from typing import TYPE_CHECKING
22
22
 
23
23
  from airflow.exceptions import AirflowException
24
+ from airflow.providers.common.compat.sdk import timezone
24
25
  from airflow.providers.standard.operators.branch import BaseBranchOperator
25
- from airflow.utils import timezone
26
26
 
27
27
  if TYPE_CHECKING:
28
- try:
29
- from airflow.sdk.definitions.context import Context
30
- except ImportError:
31
- # TODO: Remove once provider drops support for Airflow 2
32
- from airflow.utils.context import Context
28
+ from airflow.providers.common.compat.sdk import Context
33
29
 
34
30
 
35
31
  class BranchDateTimeOperator(BaseBranchOperator):
@@ -21,7 +21,7 @@ from typing import TYPE_CHECKING
21
21
  from airflow.providers.standard.version_compat import BaseOperator
22
22
 
23
23
  if TYPE_CHECKING:
24
- from airflow.sdk.definitions.context import Context
24
+ from airflow.providers.common.compat.sdk import Context
25
25
 
26
26
 
27
27
  class EmptyOperator(BaseOperator):
@@ -40,7 +40,7 @@ from airflow.sdk.execution_time.hitl import upsert_hitl_detail
40
40
  from airflow.sdk.timezone import utcnow
41
41
 
42
42
  if TYPE_CHECKING:
43
- from airflow.sdk.definitions.context import Context
43
+ from airflow.providers.common.compat.sdk import Context
44
44
  from airflow.sdk.execution_time.hitl import HITLUser
45
45
  from airflow.sdk.types import RuntimeTaskInstanceProtocol
46
46
 
@@ -33,12 +33,7 @@ if TYPE_CHECKING:
33
33
  from pendulum.datetime import DateTime
34
34
 
35
35
  from airflow.models import DagRun
36
-
37
- try:
38
- from airflow.sdk.definitions.context import Context
39
- except ImportError:
40
- # TODO: Remove once provider drops support for Airflow 2
41
- from airflow.utils.context import Context
36
+ from airflow.providers.common.compat.sdk import Context
42
37
 
43
38
 
44
39
  class LatestOnlyOperator(BaseBranchOperator):
@@ -49,9 +49,10 @@ from airflow.exceptions import (
49
49
  DeserializingResultError,
50
50
  )
51
51
  from airflow.models.variable import Variable
52
+ from airflow.providers.common.compat.sdk import context_merge
52
53
  from airflow.providers.standard.hooks.package_index import PackageIndexHook
53
54
  from airflow.providers.standard.utils.python_virtualenv import prepare_virtualenv, write_python_script
54
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseOperator, context_merge
55
+ from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseOperator
55
56
  from airflow.utils import hashlib_wrapper
56
57
  from airflow.utils.file import get_unique_dag_module_name
57
58
  from airflow.utils.operator_helpers import KeywordParameters
@@ -72,14 +73,10 @@ if TYPE_CHECKING:
72
73
 
73
74
  from pendulum.datetime import DateTime
74
75
 
76
+ from airflow.providers.common.compat.sdk import Context
75
77
  from airflow.sdk.execution_time.callback_runner import ExecutionCallableRunner
76
78
  from airflow.sdk.execution_time.context import OutletEventAccessorsProtocol
77
79
 
78
- try:
79
- from airflow.sdk.definitions.context import Context
80
- except ImportError: # TODO: Remove once provider drops support for Airflow 2
81
- from airflow.utils.context import Context
82
-
83
80
  _SerializerTypeDef = Literal["pickle", "cloudpickle", "dill"]
84
81
 
85
82
 
@@ -22,7 +22,7 @@ from typing import TYPE_CHECKING
22
22
  from airflow.providers.standard.version_compat import BaseOperator
23
23
 
24
24
  if TYPE_CHECKING:
25
- from airflow.sdk.definitions.context import Context
25
+ from airflow.providers.common.compat.sdk import Context
26
26
 
27
27
 
28
28
  class SmoothOperator(BaseOperator):
@@ -37,13 +37,9 @@ from airflow.exceptions import (
37
37
  from airflow.models.dag import DagModel
38
38
  from airflow.models.dagrun import DagRun
39
39
  from airflow.models.serialized_dag import SerializedDagModel
40
+ from airflow.providers.common.compat.sdk import BaseOperatorLink, XCom, timezone
40
41
  from airflow.providers.standard.triggers.external_task import DagStateTrigger
41
- from airflow.providers.standard.version_compat import (
42
- AIRFLOW_V_3_0_PLUS,
43
- BaseOperator,
44
- BaseOperatorLink,
45
- timezone,
46
- )
42
+ from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseOperator
47
43
  from airflow.utils.state import DagRunState
48
44
  from airflow.utils.types import NOTSET, ArgNotSet, DagRunType
49
45
 
@@ -55,17 +51,7 @@ if TYPE_CHECKING:
55
51
  from sqlalchemy.orm.session import Session
56
52
 
57
53
  from airflow.models.taskinstancekey import TaskInstanceKey
58
-
59
- try:
60
- from airflow.sdk.definitions.context import Context
61
- except ImportError:
62
- # TODO: Remove once provider drops support for Airflow 2
63
- from airflow.utils.context import Context
64
-
65
- if AIRFLOW_V_3_0_PLUS:
66
- from airflow.sdk.execution_time.xcom import XCom
67
- else:
68
- from airflow.models import XCom
54
+ from airflow.providers.common.compat.sdk import Context
69
55
 
70
56
 
71
57
  class DagIsPaused(AirflowException):
@@ -203,6 +189,9 @@ class TriggerDagRunOperator(BaseOperator):
203
189
  f"Expected str, datetime.datetime, or None for parameter 'logical_date'. Got {type(logical_date).__name__}"
204
190
  )
205
191
 
192
+ if fail_when_dag_is_paused and AIRFLOW_V_3_0_PLUS:
193
+ raise NotImplementedError("Setting `fail_when_dag_is_paused` not yet supported for Airflow 3.x")
194
+
206
195
  def execute(self, context: Context):
207
196
  if self.logical_date is NOTSET:
208
197
  # If no logical_date is provided we will set utcnow()
@@ -232,8 +221,9 @@ class TriggerDagRunOperator(BaseOperator):
232
221
  if self.fail_when_dag_is_paused:
233
222
  dag_model = DagModel.get_current(self.trigger_dag_id)
234
223
  if dag_model.is_paused:
235
- if AIRFLOW_V_3_0_PLUS:
236
- raise DagIsPaused(dag_id=self.trigger_dag_id)
224
+ # TODO: enable this when dag state endpoint available from task sdk
225
+ # if AIRFLOW_V_3_0_PLUS:
226
+ # raise DagIsPaused(dag_id=self.trigger_dag_id)
237
227
  raise AirflowException(f"Dag {self.trigger_dag_id} is paused")
238
228
 
239
229
  if AIRFLOW_V_3_0_PLUS:
@@ -20,16 +20,12 @@ from __future__ import annotations
20
20
  from collections.abc import Iterable
21
21
  from typing import TYPE_CHECKING
22
22
 
23
+ from airflow.providers.common.compat.sdk import timezone
23
24
  from airflow.providers.standard.operators.branch import BaseBranchOperator
24
25
  from airflow.providers.standard.utils.weekday import WeekDay
25
- from airflow.utils import timezone
26
26
 
27
27
  if TYPE_CHECKING:
28
- try:
29
- from airflow.sdk.definitions.context import Context
30
- except ImportError:
31
- # TODO: Remove once provider drops support for Airflow 2
32
- from airflow.utils.context import Context
28
+ from airflow.providers.common.compat.sdk import Context
33
29
 
34
30
 
35
31
  class BranchDayOfWeekOperator(BaseBranchOperator):
@@ -24,14 +24,10 @@ from tempfile import NamedTemporaryFile, TemporaryDirectory, gettempdir
24
24
  from typing import TYPE_CHECKING
25
25
 
26
26
  from airflow.exceptions import AirflowFailException
27
- from airflow.providers.standard.version_compat import BaseSensorOperator
27
+ from airflow.providers.common.compat.sdk import BaseSensorOperator
28
28
 
29
29
  if TYPE_CHECKING:
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
35
31
 
36
32
 
37
33
  class BashSensor(BaseSensorOperator):
@@ -22,13 +22,9 @@ from collections.abc import Sequence
22
22
  from dataclasses import dataclass
23
23
  from typing import TYPE_CHECKING, Any, NoReturn
24
24
 
25
+ from airflow.providers.common.compat.sdk import BaseSensorOperator, timezone
25
26
  from airflow.providers.standard.triggers.temporal import DateTimeTrigger
26
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseSensorOperator
27
-
28
- try:
29
- from airflow.sdk import timezone
30
- except ImportError: # TODO: Remove this when min airflow version is 3.1.0 for standard provider
31
- from airflow.utils import timezone # type: ignore[attr-defined,no-redef]
27
+ from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
32
28
 
33
29
  try:
34
30
  from airflow.triggers.base import StartTriggerArgs # type: ignore[no-redef]
@@ -25,6 +25,7 @@ from typing import TYPE_CHECKING, Any, ClassVar
25
25
  from airflow.configuration import conf
26
26
  from airflow.exceptions import AirflowSkipException
27
27
  from airflow.models.dag import DagModel
28
+ from airflow.providers.common.compat.sdk import BaseOperatorLink, BaseSensorOperator
28
29
  from airflow.providers.standard.exceptions import (
29
30
  DuplicateStateError,
30
31
  ExternalDagDeletedError,
@@ -40,10 +41,8 @@ from airflow.providers.standard.triggers.external_task import WorkflowTrigger
40
41
  from airflow.providers.standard.utils.sensor_helper import _get_count, _get_external_task_group_task_ids
41
42
  from airflow.providers.standard.version_compat import (
42
43
  AIRFLOW_V_3_0_PLUS,
43
- AIRFLOW_V_3_1_PLUS,
44
+ AIRFLOW_V_3_2_PLUS,
44
45
  BaseOperator,
45
- BaseOperatorLink,
46
- BaseSensorOperator,
47
46
  )
48
47
  from airflow.utils.file import correct_maybe_zipped
49
48
  from airflow.utils.state import State, TaskInstanceState
@@ -51,7 +50,7 @@ from airflow.utils.state import State, TaskInstanceState
51
50
  if not AIRFLOW_V_3_0_PLUS:
52
51
  from airflow.utils.session import NEW_SESSION, provide_session
53
52
 
54
- if AIRFLOW_V_3_1_PLUS:
53
+ if AIRFLOW_V_3_2_PLUS:
55
54
  from airflow.dag_processing.dagbag import DagBag
56
55
  else:
57
56
  from airflow.models.dagbag import DagBag # type: ignore[attr-defined, no-redef]
@@ -60,11 +59,7 @@ if TYPE_CHECKING:
60
59
  from sqlalchemy.orm import Session
61
60
 
62
61
  from airflow.models.taskinstancekey import TaskInstanceKey
63
-
64
- if AIRFLOW_V_3_0_PLUS:
65
- from airflow.sdk.definitions.context import Context
66
- else:
67
- from airflow.utils.context import Context
62
+ from airflow.providers.common.compat.sdk import Context
68
63
 
69
64
 
70
65
  class ExternalDagLink(BaseOperatorLink):
@@ -27,9 +27,9 @@ from typing import TYPE_CHECKING, Any
27
27
 
28
28
  from airflow.configuration import conf
29
29
  from airflow.exceptions import AirflowException
30
+ from airflow.providers.common.compat.sdk import BaseSensorOperator
30
31
  from airflow.providers.standard.hooks.filesystem import FSHook
31
32
  from airflow.providers.standard.triggers.file import FileTrigger
32
- from airflow.providers.standard.version_compat import BaseSensorOperator
33
33
 
34
34
  try:
35
35
  from airflow.triggers.base import StartTriggerArgs # type: ignore[no-redef]
@@ -20,15 +20,11 @@ from __future__ import annotations
20
20
  from collections.abc import Callable, Mapping, Sequence
21
21
  from typing import TYPE_CHECKING, Any
22
22
 
23
- from airflow.providers.standard.version_compat import BaseSensorOperator, PokeReturnValue, context_merge
23
+ from airflow.providers.common.compat.sdk import BaseSensorOperator, PokeReturnValue, context_merge
24
24
  from airflow.utils.operator_helpers import determine_kwargs
25
25
 
26
26
  if TYPE_CHECKING:
27
- try:
28
- from airflow.sdk.definitions.context import Context
29
- except ImportError:
30
- # TODO: Remove once provider drops support for Airflow 2
31
- from airflow.utils.context import Context # type: ignore[no-redef, attr-defined]
27
+ from airflow.providers.common.compat.sdk import Context
32
28
 
33
29
 
34
30
  class PythonSensor(BaseSensorOperator):
@@ -24,8 +24,8 @@ from typing import TYPE_CHECKING, Any
24
24
 
25
25
  from airflow.configuration import conf
26
26
  from airflow.exceptions import AirflowProviderDeprecationWarning
27
+ from airflow.providers.common.compat.sdk import BaseSensorOperator, timezone
27
28
  from airflow.providers.standard.triggers.temporal import DateTimeTrigger
28
- from airflow.providers.standard.version_compat import BaseSensorOperator
29
29
 
30
30
  try:
31
31
  from airflow.triggers.base import StartTriggerArgs # type: ignore[no-redef]
@@ -42,11 +42,6 @@ except ImportError: # TODO: Remove this when min airflow version is 2.10.0 for
42
42
  timeout: datetime.timedelta | None = None
43
43
 
44
44
 
45
- try:
46
- from airflow.sdk import timezone
47
- except ImportError:
48
- from airflow.utils import timezone # type: ignore[attr-defined,no-redef]
49
-
50
45
  if TYPE_CHECKING:
51
46
  from airflow.sdk import Context
52
47
 
@@ -27,16 +27,12 @@ from packaging.version import Version
27
27
 
28
28
  from airflow.configuration import conf
29
29
  from airflow.exceptions import AirflowProviderDeprecationWarning, AirflowSkipException
30
+ from airflow.providers.common.compat.sdk import BaseSensorOperator, timezone
30
31
  from airflow.providers.standard.triggers.temporal import DateTimeTrigger, TimeDeltaTrigger
31
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS, BaseSensorOperator
32
- from airflow.utils import timezone
32
+ from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
33
33
 
34
34
  if TYPE_CHECKING:
35
- try:
36
- from airflow.sdk.definitions.context import Context
37
- except ImportError:
38
- # TODO: Remove once provider drops support for Airflow 2
39
- from airflow.utils.context import Context
35
+ from airflow.providers.common.compat.sdk import Context
40
36
 
41
37
 
42
38
  def _get_airflow_version():
@@ -20,16 +20,11 @@ from __future__ import annotations
20
20
  from collections.abc import Iterable
21
21
  from typing import TYPE_CHECKING
22
22
 
23
+ from airflow.providers.common.compat.sdk import BaseSensorOperator, timezone
23
24
  from airflow.providers.standard.utils.weekday import WeekDay
24
- from airflow.providers.standard.version_compat import BaseSensorOperator
25
- from airflow.utils import timezone
26
25
 
27
26
  if TYPE_CHECKING:
28
- try:
29
- from airflow.sdk.definitions.context import Context
30
- except ImportError:
31
- # TODO: Remove once provider drops support for Airflow 2
32
- from airflow.utils.context import Context
27
+ from airflow.providers.common.compat.sdk import Context
33
28
 
34
29
 
35
30
  class DayOfWeekSensor(BaseSensorOperator):
@@ -23,13 +23,9 @@ from typing import Any
23
23
 
24
24
  import pendulum
25
25
 
26
+ from airflow.providers.common.compat.sdk import timezone
26
27
  from airflow.triggers.base import BaseTrigger, TaskSuccessEvent, TriggerEvent
27
28
 
28
- try:
29
- from airflow.sdk import timezone
30
- except ImportError:
31
- from airflow.utils import timezone # type: ignore[attr-defined,no-redef]
32
-
33
29
 
34
30
  class DateTimeTrigger(BaseTrigger):
35
31
  """
@@ -22,7 +22,6 @@ from types import GeneratorType
22
22
  from typing import TYPE_CHECKING
23
23
 
24
24
  from airflow.exceptions import AirflowException
25
- from airflow.providers.standard.version_compat import AIRFLOW_V_3_0_PLUS
26
25
  from airflow.utils.log.logging_mixin import LoggingMixin
27
26
 
28
27
  if TYPE_CHECKING:
@@ -40,12 +39,7 @@ XCOM_SKIPMIXIN_FOLLOWED = "followed"
40
39
 
41
40
 
42
41
  def _ensure_tasks(nodes: Iterable[DAGNode]) -> Sequence[Operator]:
43
- if AIRFLOW_V_3_0_PLUS:
44
- from airflow.sdk import BaseOperator
45
- from airflow.sdk.definitions.mappedoperator import MappedOperator
46
- else:
47
- from airflow.models.baseoperator import BaseOperator # type: ignore[no-redef]
48
- from airflow.models.mappedoperator import MappedOperator # type: ignore[assignment,no-redef]
42
+ from airflow.providers.common.compat.sdk import BaseOperator, MappedOperator
49
43
 
50
44
  return [n for n in nodes if isinstance(n, (BaseOperator, MappedOperator))]
51
45
 
@@ -34,34 +34,18 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
34
34
 
35
35
  AIRFLOW_V_3_0_PLUS: bool = get_base_airflow_version_tuple() >= (3, 0, 0)
36
36
  AIRFLOW_V_3_1_PLUS: bool = get_base_airflow_version_tuple() >= (3, 1, 0)
37
+ AIRFLOW_V_3_2_PLUS: bool = get_base_airflow_version_tuple() >= (3, 2, 0)
37
38
 
38
- # BaseOperator is not imported from SDK from 3.0 (and only done from 3.1) due to a bug with
39
- # DecoratedOperator -- where `DecoratedOperator._handle_output` needed `xcom_push` to exist on `BaseOperator`
40
- # even though it wasn't used.
39
+ # BaseOperator: Use 3.1+ due to xcom_push method missing in SDK BaseOperator 3.0.x
40
+ # This is needed for DecoratedOperator compatibility
41
41
  if AIRFLOW_V_3_1_PLUS:
42
- from airflow.sdk import BaseHook, BaseOperator, timezone
43
- from airflow.sdk.definitions.context import context_merge
42
+ from airflow.sdk import BaseOperator
44
43
  else:
45
- from airflow.hooks.base import BaseHook # type: ignore[attr-defined,no-redef]
46
44
  from airflow.models.baseoperator import BaseOperator # type: ignore[no-redef]
47
- from airflow.utils import timezone # type: ignore[attr-defined,no-redef]
48
- from airflow.utils.context import context_merge # type: ignore[no-redef, attr-defined]
49
-
50
- if AIRFLOW_V_3_0_PLUS:
51
- from airflow.sdk import BaseOperatorLink
52
- from airflow.sdk.bases.sensor import BaseSensorOperator, PokeReturnValue
53
- else:
54
- from airflow.models.baseoperatorlink import BaseOperatorLink # type: ignore[no-redef]
55
- from airflow.sensors.base import BaseSensorOperator, PokeReturnValue # type: ignore[no-redef]
56
45
 
57
46
  __all__ = [
58
47
  "AIRFLOW_V_3_0_PLUS",
59
48
  "AIRFLOW_V_3_1_PLUS",
49
+ "AIRFLOW_V_3_2_PLUS",
60
50
  "BaseOperator",
61
- "BaseOperatorLink",
62
- "BaseHook",
63
- "BaseSensorOperator",
64
- "PokeReturnValue",
65
- "context_merge",
66
- "timezone",
67
51
  ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-standard
3
- Version: 1.9.0rc1
3
+ Version: 1.9.1rc1
4
4
  Summary: Provider package apache-airflow-providers-standard for Apache Airflow
5
5
  Keywords: airflow-provider,standard,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -21,9 +21,10 @@ Classifier: Programming Language :: Python :: 3.12
21
21
  Classifier: Programming Language :: Python :: 3.13
22
22
  Classifier: Topic :: System :: Monitoring
23
23
  Requires-Dist: apache-airflow>=2.10.0rc1
24
+ Requires-Dist: apache-airflow-providers-common-compat>=1.8.0rc1
24
25
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
25
- Project-URL: Changelog, https://airflow.staged.apache.org/docs/apache-airflow-providers-standard/1.9.0/changelog.html
26
- Project-URL: Documentation, https://airflow.staged.apache.org/docs/apache-airflow-providers-standard/1.9.0
26
+ Project-URL: Changelog, https://airflow.staged.apache.org/docs/apache-airflow-providers-standard/1.9.1/changelog.html
27
+ Project-URL: Documentation, https://airflow.staged.apache.org/docs/apache-airflow-providers-standard/1.9.1
27
28
  Project-URL: Mastodon, https://fosstodon.org/@airflow
28
29
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
29
30
  Project-URL: Source Code, https://github.com/apache/airflow
@@ -54,7 +55,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
54
55
 
55
56
  Package ``apache-airflow-providers-standard``
56
57
 
57
- Release: ``1.9.0``
58
+ Release: ``1.9.1``
58
59
 
59
60
 
60
61
  Airflow Standard Provider
@@ -67,7 +68,7 @@ This is a provider package for ``standard`` provider. All classes for this provi
67
68
  are in ``airflow.providers.standard`` python package.
68
69
 
69
70
  You can find package information and changelog for the provider
70
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-standard/1.9.0/>`_.
71
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-standard/1.9.1/>`_.
71
72
 
72
73
  Installation
73
74
  ------------
@@ -81,12 +82,32 @@ The package supports the following python versions: 3.10,3.11,3.12,3.13
81
82
  Requirements
82
83
  ------------
83
84
 
84
- ================== ==================
85
- PIP package Version required
86
- ================== ==================
87
- ``apache-airflow`` ``>=2.10.0``
88
- ================== ==================
85
+ ========================================== ==================
86
+ PIP package Version required
87
+ ========================================== ==================
88
+ ``apache-airflow`` ``>=2.10.0``
89
+ ``apache-airflow-providers-common-compat`` ``>=1.8.0``
90
+ ========================================== ==================
91
+
92
+ Cross provider package dependencies
93
+ -----------------------------------
94
+
95
+ Those are dependencies that might be needed in order to use all the features of the package.
96
+ You need to install the specified providers in order to use them.
97
+
98
+ You can install such cross-provider dependencies when installing from PyPI. For example:
99
+
100
+ .. code-block:: bash
101
+
102
+ pip install apache-airflow-providers-standard[common.compat]
103
+
104
+
105
+ ================================================================================================================== =================
106
+ Dependent package Extra
107
+ ================================================================================================================== =================
108
+ `apache-airflow-providers-common-compat <https://airflow.apache.org/docs/apache-airflow-providers-common-compat>`_ ``common.compat``
109
+ ================================================================================================================== =================
89
110
 
90
111
  The changelog for the provider package can be found in the
91
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-standard/1.9.0/changelog.html>`_.
112
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-standard/1.9.1/changelog.html>`_.
92
113
 
@@ -1,77 +1,77 @@
1
1
  airflow/providers/standard/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
- airflow/providers/standard/__init__.py,sha256=hCZHSeeS05isy47esiFDswI-Z4GhWDXOlX-NU2xPjLc,1497
2
+ airflow/providers/standard/__init__.py,sha256=U9kcSbyD5ZHnLiCe5_tLPs6cbPhaIKxFIfJ3mbvq8Vw,1497
3
3
  airflow/providers/standard/exceptions.py,sha256=m2Ryv36yrzAk8xMIA4lhR11n1gA1CKPFwRok8ksl_tk,2416
4
4
  airflow/providers/standard/get_provider_info.py,sha256=NVstkG2ZeAiTZnvmbrMpxcYgJzcdITKdQvgDOZYX1Rk,7227
5
- airflow/providers/standard/version_compat.py,sha256=pWRfOwwGUd_uIfch0eiT5vOgwaA5rvohtW5Q46orG98,2891
5
+ airflow/providers/standard/version_compat.py,sha256=-7q64t0wML0dv9SIfoRV5lGphE_8bWmBHZ07o6u6_9Y,2091
6
6
  airflow/providers/standard/decorators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
7
- airflow/providers/standard/decorators/bash.py,sha256=NuWB6q8AeTzWPeIIX-y3M-qN819BEcjNQwS32XTF6cs,4416
8
- airflow/providers/standard/decorators/branch_external_python.py,sha256=G1l3_sYM38wEWMRnzRuVGmAbd4uMN5D07zm3EM3-ZWo,2584
9
- airflow/providers/standard/decorators/branch_python.py,sha256=ZngmIIXTZDBfPgOI71ag6q_87eFdoxW5xTqtC60-_xQ,2503
10
- airflow/providers/standard/decorators/branch_virtualenv.py,sha256=9mwTQsOKFKg0xJ4KmD0qsBPXvQUX0cBJRVtqKqaNocQ,2585
11
- airflow/providers/standard/decorators/external_python.py,sha256=vjS7q331jWP1cKQ9HxsxKBkCZHD557w5IMurnrbME38,2904
12
- airflow/providers/standard/decorators/python.py,sha256=Y56NyfW5qtF-mLMv7yCNTnDRPJ7L5UE5CZTZTWGs1GU,3442
13
- airflow/providers/standard/decorators/python_virtualenv.py,sha256=_8Ir-9tt1Ru5rHfxW8nwqD7EAzw8UzQpXO7O14I2HTY,2592
14
- airflow/providers/standard/decorators/sensor.py,sha256=BEcTdFUrfiFnLLZN6Uqtiqqq6ScGRVg9JkZYZk4sc-U,3230
15
- airflow/providers/standard/decorators/short_circuit.py,sha256=zUZgcVDrZXXU_cOhvkxGJrSUsC0oD1HAGPNVDD3U2QM,2533
16
- airflow/providers/standard/decorators/stub.py,sha256=WY6-h8zdlaxVN2hjly_P5GH3bKBEdX2UJA-_U9HKogs,3315
7
+ airflow/providers/standard/decorators/bash.py,sha256=7njtxxSfAwBdcOz8ZPTH1MLsXTgyL-oxEE7kXMZvv3Q,4132
8
+ airflow/providers/standard/decorators/branch_external_python.py,sha256=sGtSrCK137HLm77fcxbYgpDeMMuYdMJp6oVbPrQHvPU,2403
9
+ airflow/providers/standard/decorators/branch_python.py,sha256=-p3Mwm0CURcPrh4nHHIUK8KCS_R2fXLaGYPWK62CTSY,2323
10
+ airflow/providers/standard/decorators/branch_virtualenv.py,sha256=D1vbkyMB6dOItIVvd3evMT4WC0XX39vp0USs-ZJ9N6A,2405
11
+ airflow/providers/standard/decorators/external_python.py,sha256=zDGHIEbC3Qxk_tPTMYE3cAZiXyTTD6cYXGZN2S2NR8E,2724
12
+ airflow/providers/standard/decorators/python.py,sha256=qY2UFd7cz2ryh8Vz-RTgPUJbuT09CvUaPrgOMSA1i_4,3243
13
+ airflow/providers/standard/decorators/python_virtualenv.py,sha256=DGrrXMOiF9W0M7ISO0MOVQn4-x5IAG3XfkzJmCkSQxU,2410
14
+ airflow/providers/standard/decorators/sensor.py,sha256=vF-AeZN0Fl4cOV1l7r-J6Nac_rMAeXdVTDjkPUmmp0Q,3028
15
+ airflow/providers/standard/decorators/short_circuit.py,sha256=lhcnnhgVMq7yOJvQrWGMYxATYJPOe9UOmdf-LLg-N8c,2352
16
+ airflow/providers/standard/decorators/stub.py,sha256=faKSBFIaLOZSbf4fD7WwLGKclW-bMAUlGf8b_HLWX0Q,3020
17
17
  airflow/providers/standard/example_dags/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
18
- airflow/providers/standard/example_dags/example_bash_decorator.py,sha256=1HYpavjRq98k-Pg11hFhD8_fMJ_kYCGxpknrd7xF7oY,3867
18
+ airflow/providers/standard/example_dags/example_bash_decorator.py,sha256=4K_LYEpqgHKQeKxHZ_oHL1x1LPbJQZonU3m6kzxK6EE,3729
19
19
  airflow/providers/standard/example_dags/example_bash_operator.py,sha256=tAS4cBsKW9B1nUukmYTpUw5Vf63476v_-tYjffyAtd4,2352
20
20
  airflow/providers/standard/example_dags/example_branch_datetime_operator.py,sha256=6sGzn1xlMaF3I-HMI7bvx78oyxZUw5WAF_Gja_ZUch0,3765
21
21
  airflow/providers/standard/example_dags/example_branch_day_of_week_operator.py,sha256=75ncMaGfkjxN0ULszqeXrSL5rHauUTNOhGiGAGPm3pw,2362
22
- airflow/providers/standard/example_dags/example_branch_operator.py,sha256=YJCQ15x4g-fz3igQvqCYEqDStqXrgTIeLB4T_OykwPM,5416
23
- airflow/providers/standard/example_dags/example_branch_operator_decorator.py,sha256=5tuPNOq_Ufj9UZsATxQMIWaQbIJlkDETR8uz4Io-otw,4948
22
+ airflow/providers/standard/example_dags/example_branch_operator.py,sha256=fm_N6TGUwui1-hn-2TMn__jG2kWmRlPgW4qDF0Rr0k4,5278
23
+ airflow/providers/standard/example_dags/example_branch_operator_decorator.py,sha256=WxdqnzI5bZJU56E_65Pp7lxRR-qR7LnE_LRMVrgXW1c,4810
24
24
  airflow/providers/standard/example_dags/example_external_task_child_deferrable.py,sha256=o-ji3leJTBjiChEWoqVu4ykz1YVYUd8-ApmZwHFcNc8,1233
25
25
  airflow/providers/standard/example_dags/example_external_task_marker_dag.py,sha256=gssBjlfrGMDLZxTYOxo8ihXLbJ-3Uu31QodINGFWYNU,3650
26
- airflow/providers/standard/example_dags/example_external_task_parent_deferrable.py,sha256=8R1EqL0x1SgxcJtOb2EO4_NXmFgxiM-a0wPilDf7fis,2172
27
- airflow/providers/standard/example_dags/example_hitl_operator.py,sha256=sAgD5nXFUt6MreNkUdmAB6N2Hl2gd0vr0cS0OAw7Pso,6021
26
+ airflow/providers/standard/example_dags/example_external_task_parent_deferrable.py,sha256=7mAZHndZyETYMIDfuh0YPJnIHWyGLSzeXGCIcWBP2Uw,2092
27
+ airflow/providers/standard/example_dags/example_hitl_operator.py,sha256=nPlDpxVFD_9JMB_A_ryXP-rNHmtXZh_paBftohBfYWg,6025
28
28
  airflow/providers/standard/example_dags/example_latest_only.py,sha256=ac9WpLMWLzyuxZks74t3HojS7vRG2gynmQfGm13gwOI,1456
29
29
  airflow/providers/standard/example_dags/example_python_decorator.py,sha256=jveqPOw1GZzD3Z37_rYc8Q8hcyx8vCNjgetpO_P6qmg,4281
30
30
  airflow/providers/standard/example_dags/example_python_operator.py,sha256=3L6CZHK2Fb7zmA9tDhZ5QaEe38WJYlS4l35Gc7xJAoE,4761
31
31
  airflow/providers/standard/example_dags/example_sensor_decorator.py,sha256=zEZUh2YD17T8-bX-HGjar5cCqgi6qHIB0fXY29lboJA,1873
32
- airflow/providers/standard/example_dags/example_sensors.py,sha256=Uwpgg5xC3j5O8L5rsEnwhHslTi6fASs2Nflvq9ATQ9o,4805
33
- airflow/providers/standard/example_dags/example_short_circuit_decorator.py,sha256=sLoVrNcJwrzGL4HnbAS2dSDWCeIGLeuQ3ivDwpdsrvM,2567
34
- airflow/providers/standard/example_dags/example_short_circuit_operator.py,sha256=70bIcTaVc8BX-iqqdkxxMbg8SigoRJGtNdHikglIYy4,2561
32
+ airflow/providers/standard/example_dags/example_sensors.py,sha256=SoaLeoKK4r41EqJbF1UmcCNqMDnqwWd_qf211_VMUeM,4667
33
+ airflow/providers/standard/example_dags/example_short_circuit_decorator.py,sha256=rtEOT4P_B8JRM0M6TAjmIstUJFHUkqJdWQhU9L3YD6I,2429
34
+ airflow/providers/standard/example_dags/example_short_circuit_operator.py,sha256=IOn2yJpcRFlpeHu_NRt-FLZW_xfnKtZsCoKa5Mf_uKQ,2423
35
35
  airflow/providers/standard/example_dags/example_trigger_controller_dag.py,sha256=lHgCZC5Zkv4E3couxAYlpb1EazSmOF_qKqunIAfjskM,1752
36
36
  airflow/providers/standard/example_dags/sql/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
37
37
  airflow/providers/standard/example_dags/sql/sample.sql,sha256=OVk1qozBY58lp_tFtnyQiLSbKRdqKn4zbxJHH_Umdek,866
38
38
  airflow/providers/standard/hooks/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
39
- airflow/providers/standard/hooks/filesystem.py,sha256=rAPX1EerCZxbCUITlF5I_oZzUw99_wVsiHr35Sf3xx8,2893
40
- airflow/providers/standard/hooks/package_index.py,sha256=tgKNV3P2TRrhnJyt-IJ43Q4Z_SxjazuNLyb-k6DUTwM,3792
41
- airflow/providers/standard/hooks/subprocess.py,sha256=Dte_ysI0kAx5wPUT96AkIFyEgSaUjg6zeUU7eGX0Zsw,4943
39
+ airflow/providers/standard/hooks/filesystem.py,sha256=-WxoAHv6hOmyZr_KjHKGOzdi5FbdiRDdGuJUjts9jTw,2887
40
+ airflow/providers/standard/hooks/package_index.py,sha256=BgPZB9z0UKV1jO-QERdxZTwY1KLMwYl9YFAU_q_ZX0w,3786
41
+ airflow/providers/standard/hooks/subprocess.py,sha256=fmo71AfSxmDJpkBO7fFtLDdJLAkhlhdIPCzHj-GDBjI,4937
42
42
  airflow/providers/standard/models/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
43
43
  airflow/providers/standard/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
44
- airflow/providers/standard/operators/bash.py,sha256=yzNbi20dp6PWJzXZqJ05gyMsdb6-UsNuNrPGp2hiu1E,11366
45
- airflow/providers/standard/operators/branch.py,sha256=hiaTvIvHuN6-6dhdxJEot1FOTUmld1fr0c9lUVoCouo,4243
46
- airflow/providers/standard/operators/datetime.py,sha256=bYDdbfAyAlEXRRHjOgB06UhgDum6SPdd5I3u-ylPSaw,5005
47
- airflow/providers/standard/operators/empty.py,sha256=BTeZ4KRykaEHLZigSBkevcStCrbPdQpWDMnO3ZdtZqw,1338
48
- airflow/providers/standard/operators/hitl.py,sha256=nUFsM7OQS2iknd0-9-oJU9I--C_8dXegnPhE_b3VXf8,18018
49
- airflow/providers/standard/operators/latest_only.py,sha256=VkU-nAI8QbIrmeiv4wYXBcZF0yKMkcFapormg0J5-As,5110
50
- airflow/providers/standard/operators/python.py,sha256=zRtonsvdBdUNIGjYQjrMkvz6eh0IZFwcQoFEekBe6Ys,53765
51
- airflow/providers/standard/operators/smooth.py,sha256=IMs5GjM42XEiroksIZ5flGQgxfRUbXZXCWxpshVinYQ,1396
52
- airflow/providers/standard/operators/trigger_dagrun.py,sha256=PngOqCvJqHGLU8nZLYXMjWHcfy7mf1h_iiTXAADUkGE,16516
53
- airflow/providers/standard/operators/weekday.py,sha256=Qg7LhXYtybVSGZn8uQqF-r7RB7zOXfe3R6vSGVa_rJk,5083
44
+ airflow/providers/standard/operators/bash.py,sha256=BJaW76cjLdio8ldTytA03lKlDw16xJYl_zF4mWF39Ts,11053
45
+ airflow/providers/standard/operators/branch.py,sha256=NtQVkB63nvZCnFoYlfhM-fG1c9zakEDIid20KfuoLW4,4247
46
+ airflow/providers/standard/operators/datetime.py,sha256=U9hSX5wP0e0NfgM2gYitqOIoqvJxrGxTU2TUV82pHPg,4879
47
+ airflow/providers/standard/operators/empty.py,sha256=flxN2BhuHegEOiiAcJR9QOuMO8PcxQu353Q9p-Yk82s,1342
48
+ airflow/providers/standard/operators/hitl.py,sha256=iV7zcSAcgyZV1HCvl6vHF9YV535sJnMc7JsKP-3uDxE,18022
49
+ airflow/providers/standard/operators/latest_only.py,sha256=FDQP8PMw-bDXJUwfpGB0ESjxitgRMd7kqPO5hAsbf6c,4961
50
+ airflow/providers/standard/operators/python.py,sha256=H3AaqcEmIM_KZKJV8RiUxksjBfELoD1l7iCEqA_Is-E,53670
51
+ airflow/providers/standard/operators/smooth.py,sha256=WamRqmeSm6BcGCCBAqBEVYIRk4ZXbeI_Q7OjPgLfnUI,1400
52
+ airflow/providers/standard/operators/trigger_dagrun.py,sha256=2cNz7QgJy0biV6PCjMrr7FInCN6z_ZWkdrXF_lq54ns,16537
53
+ airflow/providers/standard/operators/weekday.py,sha256=s8C6T-x9Hvkj4YQWCguTRyhiAqdJYCBr12rPm2qYC3M,4957
54
54
  airflow/providers/standard/sensors/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
55
- airflow/providers/standard/sensors/bash.py,sha256=jiysK84IwnVpQj1_lE65E_pSPE0FO82GGtqXf_a8STA,4984
56
- airflow/providers/standard/sensors/date_time.py,sha256=h1Y1E6AqDxvAFJZw56ni3R8TEeUgn4OBI04bd5L-vt0,6516
57
- airflow/providers/standard/sensors/external_task.py,sha256=lUG1J2Fj5Whnsqjhs29Yc-1oDpDooksV6j5bXgQBrOY,28846
58
- airflow/providers/standard/sensors/filesystem.py,sha256=Z6Fiism8rMA8LzKUBnxOWL3ErUTtkKQBPp7_ipbGPAU,5902
59
- airflow/providers/standard/sensors/python.py,sha256=gFlZf3h60UtgJCarG9FN30cnPxKyLNVn46nNxu6O9aQ,3415
60
- airflow/providers/standard/sensors/time.py,sha256=tUDXe8-oOIoq7R_FXE62GPYTGngJqRBoS1X44Y6HR4E,5123
61
- airflow/providers/standard/sensors/time_delta.py,sha256=ggDSna-m_scLFks9zx1LoC64jQBjw7ZQqH7n96UU2BQ,7579
62
- airflow/providers/standard/sensors/weekday.py,sha256=sKDQ7xC9c32DZxaGNIjqmW6HXE4hIvKC71Kt-_d9SG8,4470
55
+ airflow/providers/standard/sensors/bash.py,sha256=TNcFnE881afOhQQI_PQj6Xnd4WmPO5uKUFsFJuiKN1o,4830
56
+ airflow/providers/standard/sensors/date_time.py,sha256=_Pc4DBL807sJInvaTFxBvAirb3FtBbdpoBYGZj-u4dQ,6355
57
+ airflow/providers/standard/sensors/external_task.py,sha256=qWxjP8raAofH6rIj5CorVj1d6YTAv3q3ve2La5sK9bk,28797
58
+ airflow/providers/standard/sensors/filesystem.py,sha256=tuKzvQhv-FO9yQOZ1lhDLAOTHtKlaMXPBmq1asSzlfU,5896
59
+ airflow/providers/standard/sensors/python.py,sha256=eBfy0QRgsQHw4H4pZ4u7DNzu7ZdMH7TtPQWOdP4wWqA,3221
60
+ airflow/providers/standard/sensors/time.py,sha256=ymNNjJmtcUKumlbSfPq6krCF_4lsuFtdjqTNr-gPlOM,4986
61
+ airflow/providers/standard/sensors/time_delta.py,sha256=aEz9VMxnILWafac6sdZRXDYAvV_XukVYFRFYB2buVAY,7453
62
+ airflow/providers/standard/sensors/weekday.py,sha256=Jb_QPJNN7_Os1X0Y-MA0-J_tv-rtWjZcU0C_5edo8X0,4291
63
63
  airflow/providers/standard/triggers/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
64
64
  airflow/providers/standard/triggers/external_task.py,sha256=R2Wsd21pw9_gGTs9XuHafylt65hMVPisz2g6vnpLJ4o,11521
65
65
  airflow/providers/standard/triggers/file.py,sha256=2i8-RwSjEgdOwQNcHCqLmSdpE3Ehqg4GQJ8nE3-fHxo,4886
66
66
  airflow/providers/standard/triggers/hitl.py,sha256=MXAwMPlMcil1EBRnck9hjakicK93QfLTBEyKKmGucV0,7403
67
- airflow/providers/standard/triggers/temporal.py,sha256=rqUMRsKTO46JvUbIXgReei5p9cnEd8PV4zJkLZWWOUI,4552
67
+ airflow/providers/standard/triggers/temporal.py,sha256=-Zxu96xqt40bhsyzFSK2gv-Ddb2GNr2UogeIoyBX684,4468
68
68
  airflow/providers/standard/utils/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
69
69
  airflow/providers/standard/utils/python_virtualenv.py,sha256=logUzODR5qnUZYyew-ZEbL7rudrkTEtmnU9qTQhg0-0,8532
70
70
  airflow/providers/standard/utils/python_virtualenv_script.jinja2,sha256=3Z334hVq6hQ9EHkOoGnAHc2_XNkZQkOJGxZArDKLc-c,2770
71
71
  airflow/providers/standard/utils/sensor_helper.py,sha256=FwI36sJK-s3Wz0slypF1_tAikQpiXovtTiN__Md00Aw,5049
72
- airflow/providers/standard/utils/skipmixin.py,sha256=kHpui_Ag-bwbbwjQOfXEmE4zAWYrhO9H_qKGRkbtqdE,8349
72
+ airflow/providers/standard/utils/skipmixin.py,sha256=YDgyVUv6XBmsMJzv5AhatZvymgcThBmBD0Yr2_lh40E,8012
73
73
  airflow/providers/standard/utils/weekday.py,sha256=ySDrIkWv-lqqxURo9E98IGInDqERec2O4y9o2hQTGiQ,2685
74
- apache_airflow_providers_standard-1.9.0rc1.dist-info/entry_points.txt,sha256=mW2YRh3mVdZdaP5-iGSNgmcCh3YYdALIn28BCLBZZ40,104
75
- apache_airflow_providers_standard-1.9.0rc1.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
76
- apache_airflow_providers_standard-1.9.0rc1.dist-info/METADATA,sha256=l0zHYH5wY7xaFqRf5NTcqP3RaKSYCYt6PjzyroLL68A,3809
77
- apache_airflow_providers_standard-1.9.0rc1.dist-info/RECORD,,
74
+ apache_airflow_providers_standard-1.9.1rc1.dist-info/entry_points.txt,sha256=mW2YRh3mVdZdaP5-iGSNgmcCh3YYdALIn28BCLBZZ40,104
75
+ apache_airflow_providers_standard-1.9.1rc1.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
76
+ apache_airflow_providers_standard-1.9.1rc1.dist-info/METADATA,sha256=myRsPZSw0qhDL4Jpf0tWaeSpFe8wztNKDoYx5Vk18IU,5120
77
+ apache_airflow_providers_standard-1.9.1rc1.dist-info/RECORD,,