-
Notifications
You must be signed in to change notification settings - Fork 16.4k
Implement filters for Dag run #55735
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
Conversation
|
|
jason810496
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Thanks for the PR!
LGTM on the API side and it would be nice to add the test in airflow-core/tests/unit/api_fastapi/core_api/routes/public/test_dag_run.py to verify the new filters, thanks!
|
If we're going to refactor the Filter UX then let's move all the filters in. We can follow the example from #55620 for select inputs. |
|
@bbovenzi Oh I didn't notice the select filters are done. I'm on it. |
|
Let's also hold off on Dag Id until we have the pattern search instead: #55691 |
|
I'm also not sure about the best design for the |
|
Let's not do producing asset for now. We don't even have that on the DagRunResponse |
5b64afc to
e94de02
Compare
feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation
test: modify duration test
fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup
|
Fixed the |
jason810496
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed the DagRun.duration hybrid property to support the SQLite dialect, which was causing the test failures. It now uses julianday() for calculations. CI should pass now!
Nice catch! Thanks for the fix.
LGTM on API side.
pierrejeambrun
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM thanks
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys
* feat(ui): implement filterbar for Dag run feat: add filter for dag Version feat(api): Add duration filter for Dag runs feat(ui): implement duration filter for Dag runs feat(ui,api): implement conf_contains filter refactor(ui): move trigering user filter into filterbar refactor: Simplify JSON type detection for filtering fix(i18n): modify triggering user translation * fix: resolve conflicts & move all filters into filterBar * test: Add test for duration and conf_contains filters test: modify duration test * fix(ui): Add icons and styled options to Dag runs select type filters fix(tests): Correct assignment in fixture fix: Correct tests for duration and conf_contains filters fix(test): using from_datetime_to_zulu_without_ms for end date fix(tests): Correct tuple assignment for in test setup * fix(tests): Correct datetime formatting and test expectations in dag_run API tests * fix(tests): Simplify conf_contains filter test patterns * test: using int for testing duration * fix(models): Make DagRun.duration property SQLite-compatible * fix(i18n): add duration translation keys

Related issues
closes: #53043
To-Do:
Test coverage:
test_dag_run.pyto verify newconf_contains&durationfiltersFilters:
range selectioncomponent would be a separate PR)triggeringUserNameFiltertranslation keysfilterBarProducing AssetScreenshots
conf.mp4
Follow up PR
number range,date range,tag^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in airflow-core/newsfragments.