Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AIP-66: Add support for parsing DAG bundles #45371

Merged
merged 16 commits into from
Jan 9, 2025

Conversation

jedcunningham
Copy link
Member

@jedcunningham jedcunningham commented Jan 3, 2025

Let's start parsing DAG bundles! This moves us away from parsing a
single local directory to being able to parse many different bundles,
including optional support for versioning.

This is just the basics - it keeps the parsing loop largely untouched.
We still have a single list of "dag files" to parse, and queue of them.
However, instead of just a path, this list and queue now contain
DagFilePaths, which hold both a local path and the bundle its from.

There are a number of things that are not fully functional at this
stage, like versioned callbacks. These will be refactored later. There
is enough churn with the basics (particularly with the number of test
changes).

@boring-cyborg boring-cyborg bot added area:API Airflow's REST/HTTP API area:CLI area:Scheduler including HA (high availability) scheduler labels Jan 3, 2025
airflow/models/dag.py Outdated Show resolved Hide resolved
Copy link
Contributor

@dstandish dstandish left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some suggestions

@jedcunningham jedcunningham force-pushed the bundle-parsing branch 3 times, most recently from dcf0549 to 677db81 Compare January 7, 2025 21:10
Let's start parsing DAG bundles! This moves us away from parsing a
single local directory to being able to parse many different bundles,
including optional support for versioning.

This is just the basics - it keeps the parsing loop largely untouched.
We still have a single list of "dag files" to parse, and queue of them.
However, instead of just a path, this list and queue now contain
`DagFilePath`s, which hold both a local path and the bundle its from.

There are a number of things that are not fully functional at this
stage, like versioned callbacks. These will be refactored later. There
is enough churn with the basics (particularly with the number of test
changes).
@jedcunningham jedcunningham marked this pull request as ready for review January 8, 2025 18:49
@jedcunningham jedcunningham added the full tests needed We need to run full set of tests for this PR to merge label Jan 8, 2025
@jedcunningham jedcunningham reopened this Jan 8, 2025
Copy link
Contributor

@dstandish dstandish left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

go for it

@jedcunningham jedcunningham merged commit 72ab1d5 into apache:main Jan 9, 2025
91 checks passed
@jedcunningham jedcunningham deleted the bundle-parsing branch January 9, 2025 16:55
jedcunningham added a commit to astronomer/airflow that referenced this pull request Jan 9, 2025
jedcunningham added a commit that referenced this pull request Jan 9, 2025
* Revert "Move `list_py_file_paths` test to the right file (#45521)"

This reverts commit c29b6e8.

* Revert "AIP-66: Add support for parsing DAG bundles (#45371)"

This reverts commit 72ab1d5.
agupta01 pushed a commit to agupta01/airflow that referenced this pull request Jan 13, 2025
Let's start parsing DAG bundles! This moves us away from parsing a
single local directory to being able to parse many different bundles,
including optional support for versioning.

This is just the basics - it keeps the parsing loop largely untouched.
We still have a single list of "dag files" to parse, and queue of them.
However, instead of just a path, this list and queue now contain
`DagFilePath`s, which hold both a local path and the bundle its from.

There are a number of things that are not fully functional at this
stage, like versioned callbacks. These will be refactored later. There
is enough churn with the basics (particularly with the number of test
changes).

Co-authored-by: Daniel Standish <[email protected]>
agupta01 pushed a commit to agupta01/airflow that referenced this pull request Jan 13, 2025
* Revert "Move `list_py_file_paths` test to the right file (apache#45521)"

This reverts commit c29b6e8.

* Revert "AIP-66: Add support for parsing DAG bundles (apache#45371)"

This reverts commit 72ab1d5.
karenbraganz pushed a commit to karenbraganz/airflow that referenced this pull request Jan 13, 2025
Let's start parsing DAG bundles! This moves us away from parsing a
single local directory to being able to parse many different bundles,
including optional support for versioning.

This is just the basics - it keeps the parsing loop largely untouched.
We still have a single list of "dag files" to parse, and queue of them.
However, instead of just a path, this list and queue now contain
`DagFilePath`s, which hold both a local path and the bundle its from.

There are a number of things that are not fully functional at this
stage, like versioned callbacks. These will be refactored later. There
is enough churn with the basics (particularly with the number of test
changes).

Co-authored-by: Daniel Standish <[email protected]>
karenbraganz pushed a commit to karenbraganz/airflow that referenced this pull request Jan 13, 2025
* Revert "Move `list_py_file_paths` test to the right file (apache#45521)"

This reverts commit c29b6e8.

* Revert "AIP-66: Add support for parsing DAG bundles (apache#45371)"

This reverts commit 72ab1d5.
HariGS-DB pushed a commit to HariGS-DB/airflow that referenced this pull request Jan 16, 2025
Let's start parsing DAG bundles! This moves us away from parsing a
single local directory to being able to parse many different bundles,
including optional support for versioning.

This is just the basics - it keeps the parsing loop largely untouched.
We still have a single list of "dag files" to parse, and queue of them.
However, instead of just a path, this list and queue now contain
`DagFilePath`s, which hold both a local path and the bundle its from.

There are a number of things that are not fully functional at this
stage, like versioned callbacks. These will be refactored later. There
is enough churn with the basics (particularly with the number of test
changes).

Co-authored-by: Daniel Standish <[email protected]>
HariGS-DB pushed a commit to HariGS-DB/airflow that referenced this pull request Jan 16, 2025
* Revert "Move `list_py_file_paths` test to the right file (apache#45521)"

This reverts commit c29b6e8.

* Revert "AIP-66: Add support for parsing DAG bundles (apache#45371)"

This reverts commit 72ab1d5.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:API Airflow's REST/HTTP API area:CLI area:Scheduler including HA (high availability) scheduler full tests needed We need to run full set of tests for this PR to merge
Projects
Development

Successfully merging this pull request may close these issues.

4 participants