apache-airflow-providers-openlineage 2.1.0rc1__py3-none-any.whl → 2.1.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.

Potentially problematic release.


This version of apache-airflow-providers-openlineage might be problematic. Click here for more details.

@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "2.1.0"
32
+ __version__ = "2.1.1"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.9.0"
@@ -22,16 +22,16 @@ from abc import ABC, abstractmethod
22
22
  from typing import Generic, TypeVar, Union
23
23
 
24
24
  from attrs import Factory, define
25
-
26
25
  from openlineage.client.event_v2 import Dataset as OLDataset
27
26
 
28
27
  with warnings.catch_warnings():
29
28
  warnings.simplefilter("ignore", DeprecationWarning)
30
29
  from openlineage.client.facet import BaseFacet as BaseFacet_V1
30
+ from openlineage.client.facet_v2 import JobFacet, RunFacet
31
+
31
32
  from airflow.providers.openlineage.utils.utils import AIRFLOW_V_2_10_PLUS
32
33
  from airflow.utils.log.logging_mixin import LoggingMixin
33
34
  from airflow.utils.state import TaskInstanceState
34
- from openlineage.client.facet_v2 import JobFacet, RunFacet
35
35
 
36
36
  # this is not to break static checks compatibility with v1 OpenLineage facet classes
37
37
  DatasetSubclass = TypeVar("DatasetSubclass", bound=OLDataset)
@@ -17,10 +17,11 @@
17
17
 
18
18
  from __future__ import annotations
19
19
 
20
+ from openlineage.client.facet_v2 import source_code_job
21
+
20
22
  from airflow.providers.openlineage import conf
21
23
  from airflow.providers.openlineage.extractors.base import BaseExtractor, OperatorLineage
22
24
  from airflow.providers.openlineage.utils.utils import get_unknown_source_attribute_run_facet
23
- from openlineage.client.facet_v2 import source_code_job
24
25
 
25
26
  """
26
27
  :meta private:
@@ -34,9 +34,10 @@ from airflow.providers.openlineage.utils.utils import (
34
34
  from airflow.utils.log.logging_mixin import LoggingMixin
35
35
 
36
36
  if TYPE_CHECKING:
37
+ from openlineage.client.event_v2 import Dataset
38
+
37
39
  from airflow.models import Operator
38
40
  from airflow.providers.common.compat.lineage.entities import Table
39
- from openlineage.client.event_v2 import Dataset
40
41
 
41
42
 
42
43
  def _iter_extractor_types() -> Iterator[type[BaseExtractor]]:
@@ -290,9 +291,10 @@ class ExtractorManager(LoggingMixin):
290
291
 
291
292
  @staticmethod
292
293
  def convert_to_ol_dataset(obj) -> Dataset | None:
293
- from airflow.providers.common.compat.lineage.entities import File, Table
294
294
  from openlineage.client.event_v2 import Dataset
295
295
 
296
+ from airflow.providers.common.compat.lineage.entities import File, Table
297
+
296
298
  if isinstance(obj, Dataset):
297
299
  return obj
298
300
  elif isinstance(obj, Table):
@@ -20,10 +20,11 @@ from __future__ import annotations
20
20
  import inspect
21
21
  from typing import Callable
22
22
 
23
+ from openlineage.client.facet_v2 import source_code_job
24
+
23
25
  from airflow.providers.openlineage import conf
24
26
  from airflow.providers.openlineage.extractors.base import BaseExtractor, OperatorLineage
25
27
  from airflow.providers.openlineage.utils.utils import get_unknown_source_attribute_run_facet
26
- from openlineage.client.facet_v2 import source_code_job
27
28
 
28
29
  """
29
30
  :meta private:
@@ -27,8 +27,9 @@ def get_provider_info():
27
27
  "name": "OpenLineage Airflow",
28
28
  "description": "`OpenLineage <https://openlineage.io/>`__\n",
29
29
  "state": "ready",
30
- "source-date-epoch": 1739964022,
30
+ "source-date-epoch": 1741509355,
31
31
  "versions": [
32
+ "2.1.1",
32
33
  "2.1.0",
33
34
  "2.0.0",
34
35
  "1.14.0",
@@ -72,7 +73,7 @@ def get_provider_info():
72
73
  ],
73
74
  "config": {
74
75
  "openlineage": {
75
- "description": "This section applies settings for OpenLineage integration.\nMore about configuration and it's precedence can be found at\nhttps://airflow.apache.org/docs/apache-airflow-providers-openlineage/stable/guides/user.html#transport-setup\n",
76
+ "description": "This section applies settings for OpenLineage integration.\nMore about configuration and it's precedence can be found in the `user's guide\n<https://airflow.apache.org/docs/apache-airflow-providers-openlineage/stable/guides/user.html#transport-setup>`_.\n",
76
77
  "options": {
77
78
  "disabled": {
78
79
  "description": "Disable sending events without uninstalling the OpenLineage Provider by setting this to true.\n",
@@ -124,7 +125,7 @@ def get_provider_info():
124
125
  "default": "",
125
126
  },
126
127
  "transport": {
127
- "description": "Pass OpenLineage Client transport configuration as JSON string. It should contain type of the\ntransport and additional options (different for each transport type). For more details see:\nhttps://openlineage.io/docs/client/python/#built-in-transport-types\n\nCurrently supported types are:\n\n * HTTP\n * Kafka\n * Console\n * File\n",
128
+ "description": "Pass OpenLineage Client transport configuration as a JSON string, including the transport type\nand any additional options specific to that type, as described in `OpenLineage docs\n<https://openlineage.io/docs/client/python/#built-in-transport-types>`_.\n\nCurrently supported types are:\n\n * HTTP\n * Kafka\n * Console\n * File\n * Composite\n * Custom\n",
128
129
  "type": "string",
129
130
  "example": '{"type": "http", "url": "http://localhost:5000", "endpoint": "api/v1/lineage"}',
130
131
  "default": "",
@@ -145,7 +146,7 @@ def get_provider_info():
145
146
  "version_added": "1.8.0",
146
147
  },
147
148
  "execution_timeout": {
148
- "description": "Maximum amount of time (in seconds) that OpenLineage can spend executing metadata extraction.\n",
149
+ "description": "Maximum amount of time (in seconds) that OpenLineage can spend executing metadata extraction.\nNote that other configurations, sometimes with higher priority, such as\n`[core] task_success_overtime\n<https://airflow.apache.org/docs/apache-airflow/stable/configurations-ref.html#task-success-overtime>`_,\nmay also affect how much time OpenLineage has for execution.\n",
149
150
  "default": "10",
150
151
  "example": None,
151
152
  "type": "integer",
@@ -189,6 +190,6 @@ def get_provider_info():
189
190
  "attrs>=22.2",
190
191
  "openlineage-integration-common>=1.24.2",
191
192
  "openlineage-python>=1.24.2",
192
- "uuid6>=2024.7.10",
193
193
  ],
194
+ "devel-dependencies": ["uuid6>=2024.7.10"],
194
195
  }
@@ -21,16 +21,6 @@ from contextlib import ExitStack
21
21
  from typing import TYPE_CHECKING
22
22
 
23
23
  import yaml
24
-
25
- from airflow.providers.openlineage import __version__ as OPENLINEAGE_PROVIDER_VERSION, conf
26
- from airflow.providers.openlineage.utils.utils import (
27
- OpenLineageRedactor,
28
- get_airflow_debug_facet,
29
- get_airflow_state_run_facet,
30
- get_processing_engine_facet,
31
- )
32
- from airflow.stats import Stats
33
- from airflow.utils.log.logging_mixin import LoggingMixin
34
24
  from openlineage.client import OpenLineageClient, set_producer
35
25
  from openlineage.client.event_v2 import Job, Run, RunEvent, RunState
36
26
  from openlineage.client.facet_v2 import (
@@ -46,6 +36,16 @@ from openlineage.client.facet_v2 import (
46
36
  )
47
37
  from openlineage.client.uuid import generate_static_uuid
48
38
 
39
+ from airflow.providers.openlineage import __version__ as OPENLINEAGE_PROVIDER_VERSION, conf
40
+ from airflow.providers.openlineage.utils.utils import (
41
+ OpenLineageRedactor,
42
+ get_airflow_debug_facet,
43
+ get_airflow_state_run_facet,
44
+ get_processing_engine_facet,
45
+ )
46
+ from airflow.stats import Stats
47
+ from airflow.utils.log.logging_mixin import LoggingMixin
48
+
49
49
  if TYPE_CHECKING:
50
50
  from datetime import datetime
51
51
 
@@ -17,7 +17,6 @@
17
17
  from __future__ import annotations
18
18
 
19
19
  from attrs import define
20
-
21
20
  from openlineage.client.facet_v2 import JobFacet, RunFacet
22
21
  from openlineage.client.utils import RedactMixin
23
22
 
@@ -23,6 +23,7 @@ from datetime import datetime
23
23
  from typing import TYPE_CHECKING
24
24
 
25
25
  import psutil
26
+ from openlineage.client.serde import Serde
26
27
  from setproctitle import getproctitle, setproctitle
27
28
 
28
29
  from airflow import settings
@@ -50,7 +51,6 @@ from airflow.stats import Stats
50
51
  from airflow.utils import timezone
51
52
  from airflow.utils.state import TaskInstanceState
52
53
  from airflow.utils.timeout import timeout
53
- from openlineage.client.serde import Serde
54
54
 
55
55
  if TYPE_CHECKING:
56
56
  from airflow.models import TaskInstance
@@ -104,7 +104,7 @@ class OpenLineageListener:
104
104
  assert task
105
105
  dagrun = context["dag_run"]
106
106
  dag = context["dag"]
107
- start_date = context["start_date"]
107
+ start_date = task_instance.start_date
108
108
  self._on_task_instance_running(task_instance, dag, dagrun, task, start_date)
109
109
  else:
110
110
 
@@ -21,6 +21,9 @@ from typing import TYPE_CHECKING, Callable, TypedDict
21
21
 
22
22
  import sqlparse
23
23
  from attrs import define
24
+ from openlineage.client.event_v2 import Dataset
25
+ from openlineage.client.facet_v2 import column_lineage_dataset, extraction_error_run, sql_job
26
+ from openlineage.common.sql import DbTableMeta, SqlMeta, parse
24
27
 
25
28
  from airflow.providers.openlineage.extractors.base import OperatorLineage
26
29
  from airflow.providers.openlineage.utils.sql import (
@@ -30,16 +33,13 @@ from airflow.providers.openlineage.utils.sql import (
30
33
  )
31
34
  from airflow.providers.openlineage.utils.utils import should_use_external_connection
32
35
  from airflow.utils.log.logging_mixin import LoggingMixin
33
- from openlineage.client.event_v2 import Dataset
34
- from openlineage.client.facet_v2 import column_lineage_dataset, extraction_error_run, sql_job
35
- from openlineage.common.sql import DbTableMeta, SqlMeta, parse
36
36
 
37
37
  if TYPE_CHECKING:
38
+ from openlineage.client.facet_v2 import JobFacet, RunFacet
38
39
  from sqlalchemy.engine import Engine
39
40
 
40
41
  from airflow.hooks.base import BaseHook
41
42
  from airflow.providers.common.sql.hooks.sql import DbApiHook
42
- from openlineage.client.facet_v2 import JobFacet, RunFacet
43
43
 
44
44
  log = logging.getLogger(__name__)
45
45
 
@@ -23,10 +23,9 @@ from enum import IntEnum
23
23
  from typing import TYPE_CHECKING, Optional
24
24
 
25
25
  from attrs import define
26
- from sqlalchemy import Column, MetaData, Table, and_, or_, union_all
27
-
28
26
  from openlineage.client.event_v2 import Dataset
29
27
  from openlineage.client.facet_v2 import schema_dataset
28
+ from sqlalchemy import Column, MetaData, Table, and_, or_, union_all
30
29
 
31
30
  if TYPE_CHECKING:
32
31
  from sqlalchemy.engine import Engine
@@ -26,6 +26,7 @@ from importlib import metadata
26
26
  from typing import TYPE_CHECKING, Any, Callable
27
27
 
28
28
  import attrs
29
+ from openlineage.client.utils import RedactMixin
29
30
 
30
31
  from airflow import __version__ as AIRFLOW_VERSION
31
32
 
@@ -54,7 +55,6 @@ from airflow.sensors.base import BaseSensorOperator
54
55
  from airflow.serialization.serialized_objects import SerializedBaseOperator
55
56
  from airflow.utils.module_loading import import_string
56
57
  from airflow.utils.session import NEW_SESSION, provide_session
57
- from openlineage.client.utils import RedactMixin
58
58
 
59
59
  try:
60
60
  from airflow.sdk import BaseOperator as SdkBaseOperator
@@ -62,6 +62,9 @@ except ImportError:
62
62
  SdkBaseOperator = BaseOperator # type: ignore[misc]
63
63
 
64
64
  if TYPE_CHECKING:
65
+ from openlineage.client.event_v2 import Dataset as OpenLineageDataset
66
+ from openlineage.client.facet_v2 import RunFacet, processing_engine_run
67
+
65
68
  from airflow.models import TaskInstance
66
69
  from airflow.providers.common.compat.assets import Asset
67
70
  from airflow.sdk import DAG, MappedOperator
@@ -72,8 +75,6 @@ if TYPE_CHECKING:
72
75
  should_hide_value_for_key,
73
76
  )
74
77
  from airflow.utils.state import DagRunState, TaskInstanceState
75
- from openlineage.client.event_v2 import Dataset as OpenLineageDataset
76
- from openlineage.client.facet_v2 import RunFacet, processing_engine_run
77
78
  else:
78
79
  try:
79
80
  from airflow.sdk import DAG, MappedOperator
@@ -325,25 +326,35 @@ class DagInfo(InfoJsonEncodable):
325
326
 
326
327
  @classmethod
327
328
  def serialize_timetable(cls, dag: DAG) -> dict[str, Any]:
328
- serialized = dag.timetable.serialize()
329
- if serialized != {} and serialized is not None:
330
- return serialized
331
- if (
332
- hasattr(dag, "dataset_triggers")
333
- and isinstance(dag.dataset_triggers, list)
334
- and len(dag.dataset_triggers)
335
- ):
336
- triggers = dag.dataset_triggers
337
- return {
338
- "dataset_condition": {
329
+ # This is enough for Airflow 2.10+ and has all the information needed
330
+ serialized = dag.timetable.serialize() or {}
331
+
332
+ # In Airflow 2.9 when using Dataset scheduling we do not receive datasets in serialized timetable
333
+ # Also for DatasetOrTimeSchedule, we only receive timetable without dataset_condition
334
+ if hasattr(dag, "dataset_triggers") and "dataset_condition" not in serialized:
335
+ try:
336
+ # Make sure we are in Airflow version where these are importable
337
+ from airflow.datasets import BaseDatasetEventInput, DatasetAll, DatasetAny
338
+ except ImportError:
339
+ log.warning("OpenLineage could not serialize full dag's timetable for dag `%s`.", dag.dag_id)
340
+ return serialized
341
+
342
+ def _serialize_ds(ds: BaseDatasetEventInput) -> dict[str, Any]:
343
+ if isinstance(ds, (DatasetAny, DatasetAll)):
344
+ return {
345
+ "__type": "dataset_all" if isinstance(ds, DatasetAll) else "dataset_any",
346
+ "objects": [_serialize_ds(child) for child in ds.objects],
347
+ }
348
+ return {"__type": "dataset", "uri": ds.uri, "extra": ds.extra}
349
+
350
+ if isinstance(dag.dataset_triggers, BaseDatasetEventInput):
351
+ serialized["dataset_condition"] = _serialize_ds(dag.dataset_triggers)
352
+ elif isinstance(dag.dataset_triggers, list) and len(dag.dataset_triggers):
353
+ serialized["dataset_condition"] = {
339
354
  "__type": "dataset_all",
340
- "objects": [
341
- {"__type": "dataset", "uri": trigger.uri, "extra": trigger.extra}
342
- for trigger in triggers
343
- ],
355
+ "objects": [_serialize_ds(trigger) for trigger in dag.dataset_triggers],
344
356
  }
345
- }
346
- return {}
357
+ return serialized
347
358
 
348
359
 
349
360
  class DagRunInfo(InfoJsonEncodable):
@@ -354,7 +365,7 @@ class DagRunInfo(InfoJsonEncodable):
354
365
  "dag_id",
355
366
  "data_interval_start",
356
367
  "data_interval_end",
357
- "external_trigger",
368
+ "external_trigger", # Removed in Airflow 3, use run_type instead
358
369
  "run_id",
359
370
  "run_type",
360
371
  "start_date",
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-openlineage
3
- Version: 2.1.0rc1
3
+ Version: 2.1.1rc1
4
4
  Summary: Provider package apache-airflow-providers-openlineage for Apache Airflow
5
5
  Keywords: airflow-provider,openlineage,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -26,42 +26,40 @@ Requires-Dist: apache-airflow-providers-common-compat>=1.4.0rc0
26
26
  Requires-Dist: attrs>=22.2
27
27
  Requires-Dist: openlineage-integration-common>=1.24.2
28
28
  Requires-Dist: openlineage-python>=1.24.2
29
- Requires-Dist: uuid6>=2024.7.10
30
29
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
31
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.0/changelog.html
32
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.0
30
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.1/changelog.html
31
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.1
33
32
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
34
33
  Project-URL: Source Code, https://github.com/apache/airflow
35
34
  Project-URL: Twitter, https://x.com/ApacheAirflow
36
35
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
37
36
 
38
37
 
39
- .. Licensed to the Apache Software Foundation (ASF) under one
40
- or more contributor license agreements. See the NOTICE file
41
- distributed with this work for additional information
42
- regarding copyright ownership. The ASF licenses this file
43
- to you under the Apache License, Version 2.0 (the
44
- "License"); you may not use this file except in compliance
45
- with the License. You may obtain a copy of the License at
38
+ .. Licensed to the Apache Software Foundation (ASF) under one
39
+ or more contributor license agreements. See the NOTICE file
40
+ distributed with this work for additional information
41
+ regarding copyright ownership. The ASF licenses this file
42
+ to you under the Apache License, Version 2.0 (the
43
+ "License"); you may not use this file except in compliance
44
+ with the License. You may obtain a copy of the License at
46
45
 
47
- .. http://www.apache.org/licenses/LICENSE-2.0
46
+ .. http://www.apache.org/licenses/LICENSE-2.0
48
47
 
49
- .. Unless required by applicable law or agreed to in writing,
50
- software distributed under the License is distributed on an
51
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
52
- KIND, either express or implied. See the License for the
53
- specific language governing permissions and limitations
54
- under the License.
48
+ .. Unless required by applicable law or agreed to in writing,
49
+ software distributed under the License is distributed on an
50
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
51
+ KIND, either express or implied. See the License for the
52
+ specific language governing permissions and limitations
53
+ under the License.
55
54
 
56
- .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
57
-
58
- .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
59
- `PROVIDER_README_TEMPLATE.rst.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
55
+ .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
60
56
 
57
+ .. IF YOU WANT TO MODIFY TEMPLATE FOR THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
58
+ ``PROVIDER_README_TEMPLATE.rst.jinja2`` IN the ``dev/breeze/src/airflow_breeze/templates`` DIRECTORY
61
59
 
62
60
  Package ``apache-airflow-providers-openlineage``
63
61
 
64
- Release: ``2.1.0``
62
+ Release: ``2.1.1``
65
63
 
66
64
 
67
65
  `OpenLineage <https://openlineage.io/>`__
@@ -74,7 +72,7 @@ This is a provider package for ``openlineage`` provider. All classes for this pr
74
72
  are in ``airflow.providers.openlineage`` python package.
75
73
 
76
74
  You can find package information and changelog for the provider
77
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.0/>`_.
75
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.1/>`_.
78
76
 
79
77
  Installation
80
78
  ------------
@@ -97,7 +95,6 @@ PIP package Version required
97
95
  ``attrs`` ``>=22.2``
98
96
  ``openlineage-integration-common`` ``>=1.24.2``
99
97
  ``openlineage-python`` ``>=1.24.2``
100
- ``uuid6`` ``>=2024.7.10``
101
98
  ========================================== ==================
102
99
 
103
100
  Cross provider package dependencies
@@ -121,5 +118,5 @@ Dependent package
121
118
  ================================================================================================================== =================
122
119
 
123
120
  The changelog for the provider package can be found in the
124
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.0/changelog.html>`_.
121
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-openlineage/2.1.1/changelog.html>`_.
125
122
 
@@ -1,14 +1,14 @@
1
1
  airflow/providers/openlineage/LICENSE,sha256=gXPVwptPlW1TJ4HSuG5OMPg-a3h43OGMkZRR1rpwfJA,10850
2
- airflow/providers/openlineage/__init__.py,sha256=G6A7J4TdV67VWbO5i6nVUMQzuBsvCeRIj9paG5Sxn-k,1498
2
+ airflow/providers/openlineage/__init__.py,sha256=zu1NWsVHz4OqcAQkqGuElQg03_iztd-3dAVvZcQ3maI,1498
3
3
  airflow/providers/openlineage/conf.py,sha256=aYdLU7iHBdGIU8ZAC5iUiIDgXP9gvP9r_z5hTAbXPOU,5535
4
- airflow/providers/openlineage/get_provider_info.py,sha256=TV9L58PKSQasYrvTsonyu7Eplbl4gnujkHzXSpqEX6s,9938
5
- airflow/providers/openlineage/sqlparser.py,sha256=U6JBr-CtFCWbpH6Oc4MZFHNW4eF6q12s1AqW30yO1ng,20340
4
+ airflow/providers/openlineage/get_provider_info.py,sha256=dPjREg_wct28793JoYZjiSGMrLFkhTulTA2Nl9CeRzg,10299
5
+ airflow/providers/openlineage/sqlparser.py,sha256=N38XhkU-lxwxnYevQpq63JOBi4rzp0q56JjxO3H24W8,20340
6
6
  airflow/providers/openlineage/version_compat.py,sha256=aHg90_DtgoSnQvILFICexMyNlHlALBdaeWqkX3dFDug,1605
7
7
  airflow/providers/openlineage/extractors/__init__.py,sha256=I0X4f6zUniclyD9zT0DFHRImpCpJVP4MkPJT3cd7X5I,1081
8
- airflow/providers/openlineage/extractors/base.py,sha256=nDBqqDDXAp7kDtlxVO_wb5M4Q3q1zUh_ZDzNXz_NH0Q,6623
9
- airflow/providers/openlineage/extractors/bash.py,sha256=kF0poDlW-HoAOFINSAd0k3FMU085xzQDtfoSCaE0VxM,2582
10
- airflow/providers/openlineage/extractors/manager.py,sha256=ZxhmC7k_qDCDHZXqDZUTFIVYD5GM1eyLtFdoju0D6W4,12429
11
- airflow/providers/openlineage/extractors/python.py,sha256=0IL_9VnCn4Dp3hbVCjWVEUlA9F5PH1c2PqN91ZdyzZs,3170
8
+ airflow/providers/openlineage/extractors/base.py,sha256=vaIg8HBj0crvzqoxiD252rG4IHMKJ81pGYmcDOlqJXk,6623
9
+ airflow/providers/openlineage/extractors/bash.py,sha256=3aR0PXs8fzRLibRxXN1R8wMZnGzyCur7mjpy8e5GC4A,2583
10
+ airflow/providers/openlineage/extractors/manager.py,sha256=0OLxgjNgCNdg6zcWGU387bqthQGwvtZRkN1q9RU7wlY,12431
11
+ airflow/providers/openlineage/extractors/python.py,sha256=hVWOplMlBimrpPKPeW6vm75a8OmAYMU1oJzqMz8Jh90,3171
12
12
  airflow/providers/openlineage/facets/AirflowDagRunFacet.json,sha256=ie6c-J3-wGgk80WDTGWePz18o6DbW--TNM7BMF4WfcU,2251
13
13
  airflow/providers/openlineage/facets/AirflowDebugRunFacet.json,sha256=_zA5gFqGje5MOH1SmdMeA5ViOHvW_pV4oijEAvkuBbY,768
14
14
  airflow/providers/openlineage/facets/AirflowJobFacet.json,sha256=rS9PuPWOi1Jc5B4a5qLxS_Az7Q9Eb3jVYQnN41iXDC0,1187
@@ -16,17 +16,17 @@ airflow/providers/openlineage/facets/AirflowRunFacet.json,sha256=70mEaZShgSJp-2x
16
16
  airflow/providers/openlineage/facets/AirflowStateRunFacet.json,sha256=xhHQEKD9Jopw-oqbkCCrrwFjfXnxvuJAritsmegKjuQ,937
17
17
  airflow/providers/openlineage/facets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
18
18
  airflow/providers/openlineage/plugins/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
19
- airflow/providers/openlineage/plugins/adapter.py,sha256=7LSrXWrDKb8Henv1E6QiS1FcRoYaPhU2MmTC9EPS1-k,20304
20
- airflow/providers/openlineage/plugins/facets.py,sha256=f0uY9k4bRAN1_n04O8l3PyS9Nys5rPH-eHURGMDZ5Jw,4162
21
- airflow/providers/openlineage/plugins/listener.py,sha256=z6k1O3OITYO0A6DC0CaA8NwJj_7rjW3I6idKd8NAC50,25450
19
+ airflow/providers/openlineage/plugins/adapter.py,sha256=QmacPqI2t37JwZT0HE7J84BeK-sKMmIF8IVrtYfTTS0,20304
20
+ airflow/providers/openlineage/plugins/facets.py,sha256=VvyMYR6ONkC95q5FdNmohv0scbA1Ej_B5cQ97as5GvA,4161
21
+ airflow/providers/openlineage/plugins/listener.py,sha256=ETQEx2RvcEa0Q2tEWmuhIwcyPOcebTdKKDzfnX6toGE,25453
22
22
  airflow/providers/openlineage/plugins/macros.py,sha256=YuS0SlpZ3j2yaMepjNzQ6HCpnM2xTEuixA-0wra-EKU,3260
23
23
  airflow/providers/openlineage/plugins/openlineage.py,sha256=HD3mYNPfXd-buZydEpuAY-naVBXhausU2LYUNhL48QA,1906
24
24
  airflow/providers/openlineage/utils/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
25
25
  airflow/providers/openlineage/utils/selective_enable.py,sha256=ZJUH_iS0thup2qYAVcjOgNIru6E8bKc56_pNQHuc8Fg,3451
26
26
  airflow/providers/openlineage/utils/spark.py,sha256=3JS3Din4pAFyTmetWgCrLS-kYQEEYarIUW-vZnTaGwo,5826
27
- airflow/providers/openlineage/utils/sql.py,sha256=M8TG5LGlKlfTsuuyrIf2Wx5FI0NJwoCvaECPiZC55jA,9572
28
- airflow/providers/openlineage/utils/utils.py,sha256=wKK_zojGjbpBZsdB5CPnw6mXvEdaxcljIMpuIzhAb5Y,27443
29
- apache_airflow_providers_openlineage-2.1.0rc1.dist-info/entry_points.txt,sha256=GAx0_i2OeZzqaiiiYuA-xchICDXiCT5kVqpKSxsOjt4,214
30
- apache_airflow_providers_openlineage-2.1.0rc1.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
31
- apache_airflow_providers_openlineage-2.1.0rc1.dist-info/METADATA,sha256=3QzgEPtZiwzHWKBYvANpUShhidTRpaOVgPIGdZNBikk,5807
32
- apache_airflow_providers_openlineage-2.1.0rc1.dist-info/RECORD,,
27
+ airflow/providers/openlineage/utils/sql.py,sha256=vkKrrdENEMVG8gtzV6yuTXMa2Z9fBAEXmxDVIDaVncI,9571
28
+ airflow/providers/openlineage/utils/utils.py,sha256=UOdFuUo0xAfUPmtM8TQH173zP2ZSVmIhpJ0wvu2zQ0w,28511
29
+ apache_airflow_providers_openlineage-2.1.1rc1.dist-info/entry_points.txt,sha256=GAx0_i2OeZzqaiiiYuA-xchICDXiCT5kVqpKSxsOjt4,214
30
+ apache_airflow_providers_openlineage-2.1.1rc1.dist-info/WHEEL,sha256=_2ozNFCLWc93bK4WKHCO-eDUENDlo-dgc9cU3qokYO4,82
31
+ apache_airflow_providers_openlineage-2.1.1rc1.dist-info/METADATA,sha256=BcLvCZju_8rIJGwWroKFo7b8RucaQ1rQp3KBsik020k,5701
32
+ apache_airflow_providers_openlineage-2.1.1rc1.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: flit 3.10.1
2
+ Generator: flit 3.11.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any