openlineage-airflow
OpenLineage integration with Airflow
Decision gist · record as of 2026-08-14
No. This package is explicitly unmaintained and deprecated for all current Airflow versions. For Airflow 2.7+, use apache-airflow-providers-openlineage instead. For Airflow 2.1–2.6, it remains functional but will not receive security updates or bug fixes. Only install if you are locked into an older Airflow version with no path to upgrade and accept the risk of running unsupported code.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Airflow >= 2.1, < 2.8.
- For Airflow 2.7+, must use apache-airflow-providers-openlineage instead.
- Requires Python >= 3.9.
License · maintenance · safety
Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), allowing use, modification, and distribution with minimal restrictions. No licensing barrier to adoption, though the package's unmaintained status is the primary concern.
last release 2025-12-11 (246 days) · last repo commit 2026-08-14 · 2,601 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 3,728,109 downloads/mo, #2,514 on PyPI
Alternatives
Verify before relying
pip install openlineage-airflow
import openlineage.lineage_backend
# Set AIRFLOW__LINEAGE__BACKEND=openlineage.lineage_backend.OpenLineageBackend
# Configure OPENLINEAGE_URL and optional OPENLINEAGE_API_KEY environment variables- Whether existing Airflow 2.3–2.6 deployments using this package will continue to function without maintenance or security patches.
- Compatibility of bundled extractors (PostgresOperator, BigQueryOperator, etc.) with current operator implementations across Airflow versions.
- Whether custom extractors registered via OPENLINEAGE_EXTRACTORS will continue to work as Airflow evolves.
What it is and what it does
OpenLineage Airflow is a library that hooks into Apache Airflow to automatically capture task lineage, inputs, outputs, and execution metadata, then emits that data to an OpenLineage-compatible backend (such as Marquez). It provides built-in extractors for common operators (SQL databases, cloud services, dbt, SageMaker, and others) and allows custom extractors for operators you own. The package automatically registers itself in Airflow 2.3+ and collects metadata on task start and completion, including task parameters, execution time, state, and linked code versions.
However, this package is no longer maintained. The description explicitly states it will receive no bug fixes, security updates, or new features. For Airflow 2.7 and later, the native apache-airflow-providers-openlineage package is the official replacement and is actively developed. This package is only suitable for Airflow versions prior to 2.7 and should not be used with Airflow 2.8 or later.
Use it for
- Track data lineage across Airflow DAGs running on Airflow 2.3–2.6 to understand inter-DAG dependencies and data flow.
- Automatically capture SQL task inputs and outputs from PostgreSQL, MySQL, Snowflake, BigQuery, and other SQL operators without manual configuration.
- Emit task metadata and execution events to a Marquez or OpenLineage-compatible metadata store for governance and data discovery.
- Link Airflow task runs to versioned code (e.g., GitHub) to correlate lineage with code changes.
- Extract metadata from custom Airflow operators by implementing get_openlineage_facets_on_start() or get_openlineage_facets_on_complete() methods.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
This package is explicitly unmaintained and deprecated for all current Airflow versions. For Airflow 2.7+, use apache-airflow-providers-openlineage instead. For Airflow 2.1–2.6, it remains functional but will not receive security updates or bug fixes. Only install if you are locked into an older Airflow version with no path to upgrade and accept the risk of running unsupported code.
Install
openlineage-airflow on PyPI
Before you install
Low install friction with four runtime dependencies. Package is no longer maintained and explicitly deprecated for Airflow 2.7+; the description states it will receive no bug fixes, security updates, or new features. Active repository status reflects historical maintenance only.
Requires Airflow >= 2.1, < 2.8. For Airflow 2.7+, must use apache-airflow-providers-openlineage instead. Requires Python >= 3.9.
License in practice
Licensed under Apache-2.0 (permissive), allowing use, modification, and distribution with minimal restrictions. No licensing barrier to adoption, though the package's unmaintained status is the primary concern.
Quickstart
pip install openlineage-airflow
import openlineage.lineage_backend
# Set AIRFLOW__LINEAGE__BACKEND=openlineage.lineage_backend.OpenLineageBackend
# Configure OPENLINEAGE_URL and optional OPENLINEAGE_API_KEY environment variables
Verify before relying
- Whether existing Airflow 2.3–2.6 deployments using this package will continue to function without maintenance or security patches.
- Compatibility of bundled extractors (PostgresOperator, BigQueryOperator, etc.) with current operator implementations across Airflow versions.
- Whether custom extractors registered via OPENLINEAGE_EXTRACTORS will continue to work as Airflow evolves.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagesattrsopenlineage-integration-commonopenlineage-sqlopenlineage-python |
| Maintenance | Actively maintained 246 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,728,109 / month, #2,514 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9 |
Evidence: openlineage_airflow-1.41.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “airflow dag provenance”
- openlineage-airflowIntegrates Apache Airflow DAGs with OpenLineage to automatically…
- dag-factorydag-factory builds Apache Airflow DAGs declaratively from YAML…
- apache-airflow-providers-openlineageIntegrates Apache Airflow with OpenLineage to collect and emit data…
Give your agent the search over MCP, or paste the wish link into any chat.
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework that enables you to define and call remote procedures across network boundaries using protocol buffers for serialization.
Install it if you need RPC communication in a distributed system or are integrating with existing gRPC services.
execnet lets you spawn and communicate with Python interpreters across local processes, remote hosts, and different platforms, using a simple API for task distribution and inter-process messaging.
However, the aging maintenance status (275 days since last release) means you should verify it meets your concurrency and performance needs before committing to a…
Cloudpickle extends Python's standard pickle module to serialize lambda functions, interactively-defined functions and classes, and other constructs that the default pickle cannot handle, making it suitable for cluster computing and remote code execution.
Install it if you need to serialize lambda functions, interactively-defined code, or non-standard Python constructs for cluster computing or distributed execution.
Provides a unified, open()-compatible Python API for streaming large files from remote storage (S3, GCS, Azure, HDFS, SFTP, HTTP) and local filesystems, with transparent compression support.
Install it if you work with large files on cloud storage or remote systems and want to avoid writing boilerplate around multiple SDKs.
Portalocker provides cross-platform file locking with support for exclusive and shared locks, plus Redis-based distributed locks and process-aware PID file locking.
Install it if you need file or process coordination; the optional extras (pywin32, redis) are only required for specific lock types.
Ray is a distributed computing framework that scales Python applications from a single machine to multi-node clusters, providing abstractions for parallel tasks, stateful actors, and shared objects.
See also acryl-datahub-airflow-plugin · apache-airflow-providers-openlineage · mwaa-dr · openlineage-sql · openlineage-dbt · openlineage-python · openlineage-integration-common · airflow-exporter · apache-airflow-providers-git · apache-airflow-providers-snowflake