This is an automated email from the ASF dual-hosted git repository.
weilee pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new a3294cc6272 Remove old lineage stuff (#45260)
a3294cc6272 is described below
commit a3294cc6272b132b9ecc2873a570fe5d1d480e03
Author: LIU ZHE YOU <[email protected]>
AuthorDate: Sat Jan 25 11:42:47 2025 +0800
Remove old lineage stuff (#45260)
* Move airflow.lineage.entities to compact provider
* Fix providers and corresponding test import path
* Fix core test import path
* Fix import path in related docs
---
docs/apache-airflow-providers-openlineage/guides/developer.rst | 2 +-
docs/apache-airflow/administration-and-deployment/lineage.rst | 2 +-
generated/provider_dependencies.json | 4 +++-
.../src/airflow/providers/common/compat}/lineage/entities.py | 0
providers/src/airflow/providers/openlineage/extractors/manager.py | 4 ++--
providers/src/airflow/providers/papermill/operators/papermill.py | 2 +-
providers/tests/openlineage/extractors/test_manager.py | 2 +-
tests/lineage/test_lineage.py | 2 +-
tests/models/test_baseoperator.py | 2 +-
tests/www/views/test_views_grid.py | 2 +-
10 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/docs/apache-airflow-providers-openlineage/guides/developer.rst
b/docs/apache-airflow-providers-openlineage/guides/developer.rst
index 4eca316217e..69dd8bfdf2c 100644
--- a/docs/apache-airflow-providers-openlineage/guides/developer.rst
+++ b/docs/apache-airflow-providers-openlineage/guides/developer.rst
@@ -387,8 +387,8 @@ An Operator inside the Airflow DAG can be annotated with
inlets and outlets like
import pendulum
from airflow import DAG
+ from airflow.providers.common.compat.lineage.entities import Table, File,
Column, User
from airflow.providers.standard.operators.bash import BashOperator
- from airflow.lineage.entities import Table, File, Column, User
t1 = Table(
diff --git a/docs/apache-airflow/administration-and-deployment/lineage.rst
b/docs/apache-airflow/administration-and-deployment/lineage.rst
index 3740e8b56f9..836b11fe720 100644
--- a/docs/apache-airflow/administration-and-deployment/lineage.rst
+++ b/docs/apache-airflow/administration-and-deployment/lineage.rst
@@ -34,8 +34,8 @@ works.
import pendulum
from airflow.lineage import AUTO
- from airflow.lineage.entities import File
from airflow.models import DAG
+ from airflow.providers.common.compat.lineage.entities import File
from airflow.providers.standard.operators.bash import BashOperator
from airflow.operators.empty import EmptyOperator
diff --git a/generated/provider_dependencies.json
b/generated/provider_dependencies.json
index 5060869ea3c..7ae6ab718ab 100644
--- a/generated/provider_dependencies.json
+++ b/generated/provider_dependencies.json
@@ -1047,7 +1047,9 @@
],
"devel-deps": [],
"plugins": [],
- "cross-providers-deps": [],
+ "cross-providers-deps": [
+ "common.compat"
+ ],
"excluded-python-versions": [],
"state": "ready"
},
diff --git a/airflow/lineage/entities.py
b/providers/src/airflow/providers/common/compat/lineage/entities.py
similarity index 100%
rename from airflow/lineage/entities.py
rename to providers/src/airflow/providers/common/compat/lineage/entities.py
diff --git a/providers/src/airflow/providers/openlineage/extractors/manager.py
b/providers/src/airflow/providers/openlineage/extractors/manager.py
index 12d64050208..f07014885ea 100644
--- a/providers/src/airflow/providers/openlineage/extractors/manager.py
+++ b/providers/src/airflow/providers/openlineage/extractors/manager.py
@@ -36,8 +36,8 @@ from airflow.utils.log.logging_mixin import LoggingMixin
if TYPE_CHECKING:
from openlineage.client.event_v2 import Dataset
- from airflow.lineage.entities import Table
from airflow.models import Operator
+ from airflow.providers.common.compat.lineage.entities import Table
def _iter_extractor_types() -> Iterator[type[BaseExtractor]]:
@@ -293,7 +293,7 @@ class ExtractorManager(LoggingMixin):
def convert_to_ol_dataset(obj) -> Dataset | None:
from openlineage.client.event_v2 import Dataset
- from airflow.lineage.entities import File, Table
+ from airflow.providers.common.compat.lineage.entities import File,
Table
if isinstance(obj, Dataset):
return obj
diff --git a/providers/src/airflow/providers/papermill/operators/papermill.py
b/providers/src/airflow/providers/papermill/operators/papermill.py
index b07c83d048f..7384e204ea1 100644
--- a/providers/src/airflow/providers/papermill/operators/papermill.py
+++ b/providers/src/airflow/providers/papermill/operators/papermill.py
@@ -24,8 +24,8 @@ from typing import TYPE_CHECKING, ClassVar
import attr
import papermill as pm
-from airflow.lineage.entities import File
from airflow.models import BaseOperator
+from airflow.providers.common.compat.lineage.entities import File
from airflow.providers.papermill.hooks.kernel import REMOTE_KERNEL_ENGINE,
KernelHook
if TYPE_CHECKING:
diff --git a/providers/tests/openlineage/extractors/test_manager.py
b/providers/tests/openlineage/extractors/test_manager.py
index df64b7d1e75..b9595f80b91 100644
--- a/providers/tests/openlineage/extractors/test_manager.py
+++ b/providers/tests/openlineage/extractors/test_manager.py
@@ -30,9 +30,9 @@ from openlineage.client.facet_v2 import (
)
from airflow.io.path import ObjectStoragePath
-from airflow.lineage.entities import Column, File, Table, User
from airflow.models.baseoperator import BaseOperator
from airflow.models.taskinstance import TaskInstance
+from airflow.providers.common.compat.lineage.entities import Column, File,
Table, User
from airflow.providers.openlineage.extractors import OperatorLineage
from airflow.providers.openlineage.extractors.manager import ExtractorManager
from airflow.providers.openlineage.utils.utils import Asset
diff --git a/tests/lineage/test_lineage.py b/tests/lineage/test_lineage.py
index d805d3f5ec4..069d74f540a 100644
--- a/tests/lineage/test_lineage.py
+++ b/tests/lineage/test_lineage.py
@@ -24,9 +24,9 @@ import pytest
from airflow.lineage import AUTO, apply_lineage, get_backend, prepare_lineage
from airflow.lineage.backend import LineageBackend
-from airflow.lineage.entities import File
from airflow.models import TaskInstance as TI
from airflow.operators.empty import EmptyOperator
+from airflow.providers.common.compat.lineage.entities import File
from airflow.sdk.definitions.context import Context
from airflow.utils import timezone
from airflow.utils.types import DagRunType
diff --git a/tests/models/test_baseoperator.py
b/tests/models/test_baseoperator.py
index 13dad2bc8a4..ee45fb02933 100644
--- a/tests/models/test_baseoperator.py
+++ b/tests/models/test_baseoperator.py
@@ -26,7 +26,6 @@ import pytest
from airflow.decorators import task as task_decorator
from airflow.exceptions import AirflowException, TaskDeferralTimeout
-from airflow.lineage.entities import File
from airflow.models.baseoperator import (
BaseOperator,
chain,
@@ -37,6 +36,7 @@ from airflow.models.dag import DAG
from airflow.models.dagrun import DagRun
from airflow.models.taskinstance import TaskInstance
from airflow.models.trigger import TriggerFailureReason
+from airflow.providers.common.compat.lineage.entities import File
from airflow.providers.common.sql.operators import sql
from airflow.utils.edgemodifier import Label
from airflow.utils.task_group import TaskGroup
diff --git a/tests/www/views/test_views_grid.py
b/tests/www/views/test_views_grid.py
index e2181aa702d..475c9ee63ff 100644
--- a/tests/www/views/test_views_grid.py
+++ b/tests/www/views/test_views_grid.py
@@ -25,10 +25,10 @@ import pytest
from dateutil.tz import UTC
from airflow.decorators import task_group
-from airflow.lineage.entities import File
from airflow.models import DagBag
from airflow.models.asset import AssetDagRunQueue, AssetEvent, AssetModel
from airflow.operators.empty import EmptyOperator
+from airflow.providers.common.compat.lineage.entities import File
from airflow.sdk.definitions.asset import Asset
from airflow.utils import timezone
from airflow.utils.state import DagRunState, TaskInstanceState