This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a change to branch
dependabot/pip/task-sdk/v3-1-test/datamodel-code-generator-http--0.33.0
in repository https://gitbox.apache.org/repos/asf/airflow.git
discard dc3dd5138c9 Bump datamodel-code-generator[http] from 0.32.0 to 0.33.0
in /task-sdk
add 612d0e93cf8 Bump trove-classifiers from 2025.9.9.12 to 2025.9.11.17
(#55605)
add e5e510479d6 Bump trove-classifiers from 2025.9.9.12 to 2025.9.11.17 in
/airflow-core (#55606)
add 364547048fd fix(hitl): check whether task instance is deferring when
fetching pending actions (#55539)
add 03d75acd4a5 Fix alignment of arrows in RTL mode (#55619)
add 37783d9e301 CI: Bump zizmor hook (#55618)
add 9bbd1cdeb41 Fix xcom access in DAG processor callbacks for notifiers
(#55542)
add bf0a9277f9c Fix Dag/TI states names in Hebrew (#55621)
add 6c34a1a53cd Close Dutch translation gaps (2025-09-12) (#55583)
add dd2a83ac56c Allow slash in Variable keys from TaskSDK
read/write(#55324)
add 8aaa1330d5f Add missing `.level` property on our structlog shim.
(#55638)
add 107c1f70d08 Add documentation for context parameter (#55377)
add 6a51f595d94 Removed unused config: dag_stale_not_seen_duration (#55601)
add 099dda2a66c Improve contrast in Clear Task Instance dialog selectors
(#55423)
add 38ca6d3409e Upgrade important versions of dependencies (#55646)
add e20ee338072 Use FilterBar for Asset Event filters (#55522)
add f87674b12d8 Update query client strategy (#55528)
add 78b28f8c0b0 Fix gantt chart rendering issues (#55554)
add 189272713da Mark React Apps as Experimental for Airflow 3.1 (#55478)
add 1958bcc05d8 Be a little clearer when task likely OOM error (#55602)
add 792cc4fb1ec fix(ui): Connection Form Extras not inferring the correct
type (#55492)
add 7fef4a28399 fix(hitl): make the user model in HITLDetail consistent
with airflow user model (#55463)
add 835a8636b97 Bump axios (#55552)
add b6fec33bf5c Bump axios from 1.11.0 to 1.12.0 in
/airflow-core/src/airflow/ui (#55551)
add 44724c2af49 Remove config loader from react tests (#55541)
add bb09da4770d Add autorefresh to Required Actions button (#55543)
add ce5dc197fc7 Add hitl required action count (#55546)
add 4b76188ee7d feat(hitl): get rid off "Fallback to defaults" in HITL
(#55536)
add 665c69397fd Remove FAB provider from expected providers for PROD image
3.13 verification (#55523)
add 58735c44ba5 Unify datetime format in the UI (#55572)
add 73f25ace72d Prevent HITL from emitting reqeust for settled dag and
tasks (#55575)
add dd8690c4fea Fix Grid cache invalidation for multi-run task operations
(#55504)
add 6a440b56c1f refactor(hitl): rename response_at to responded_at (#55535)
add 28f931c7f59 Bump React and React-DOM (#55598)
add b6bfb313bf9 Include mypy upgrades to upgrade-important-versions prek
hook (#55597)
add caa07e2c12a Separate GoLang precommit after prek supports monorepo
setup (#54615)
add 900b079d2f9 Update 3.1.0 release notes based on latest cherry-picks
add 0970aa86202 Restrict google-ads 28.0.0.post2 (#55640) (#55656)
add 1e585ac6de2 Upgrade octopin to bleeding edge (#55653)
add 828ab159ef0 Fix selected color for gantt and grid (#55553)
add b7c582863f1 Display responder username for better audit. (#55509)
add 9c8b1b428e1 Remove SDK dependency from SerializedDAG (#55538)
add f1bf0bfe6aa Stop making pointless requests from Gantt view when there
is no Run ID (#55668)
add 70a5cf30fdf Remove duplicate entry in boostrapper package.json (#55666)
add 422413f6c49 feat: refine ui of asset events (#55652)
add 57718d5a9cf feat(airflow-config-lint): add dag_stale_not_seen_duration
to "airflow config lint" (#55684)
add 2d771c68987 Fix: Incorrect log timestamps in UI when default_timezone
is not UTC (#54431)
add e79e36e9816 Complete italian and spanish translations (#55578)
add 114dba649cf Fix handling of `priority_weight` for Dag Processor
callbacks (#55436)
add 77b9dc7eaa1 Fix docs sigkill mention (#55690)
add 08f523a4f33 Ensure that filename and lineno of logger calls are
present in the Task Logs (#55581)
add f021bba05b5 fix(docker/entrypoint_prod.sh): prevent the script from
code 2 after db migrate success (#52928)
add 868748d2fde #55020 gantt view is not getting updatedin realtime
(#55130)
add 09560358e06 Fix task log URL generation with various `base_url`
formats (#55699)
add 1175d5108c0 refactor(hitl): make hitl under task instance (#55603)
add f6377f66954 Front end for hitl endpoint update (#55674)
add 922f344af63 Update release notes for 3.1.0b2
add 5299a35486c Dev: Fix Python 3.13 compatibility in production image
tests (#55700)
add f300510e1cb Dev: Fix another Python 3.13 compat for Prod image tests
(#55701)
add 1f7d297ef1d Upgrade prek to fix `invalid option: --no-pager` on CI
failure (#55710)
add 672a39efa1f Fix error when retrieving logs of ti not run because of
upstream failures (#55517)
add d91f7575a5d Add HITLDetail.created_at (#55525)
add 4f326422b03 Add SELinux/AppArmor note for creating airflow.cfg in
Docker-compose stacks (#55662)
add 07768b174be Simplify serve_logs IPv4/v6 binding (#55716)
add 083f6e25aae Reduce default API server workers to 1 (#55707)
add 4a16537364e Remove no-longer-needed execution interface hacks (#55681)
add e5c8c2407bc Improve Airflow 3 import deprecation documentation (#55722)
add 4dd48b08145 Fix update-breeze-cmd-output static check (#55731)
add a1e9f47ba41 Add newsfragment to call out new features available now
with structlog loggers (#55725)
add dde38cf3e48 Fix dag import error modal pagination (#55719)
add 5fa40e9d9da Bugfix: Fix typo in theme.ts gray.500 color palette
(#55739)
add 1009e4f0dde Fix DB downgrade to Airflow 2 when fab tables exists
(#55738)
add e71125a63ad Fix DAG disappearing after callback execution in stale
detection (#55698)
add 213c5fe9e73 Add hover synchronization between Grid and Gantt chart
(#55611)
add 410f49fa0e5 Add filter for HITL TaskInstances page (#55620)
add aa36b13c23f Add map_index filter to TaskInstance API queries (#55614)
add 8636e33c699 Update 3.1.0 release notes based on latest cherry-picks
add 9a8586f3db2 Restrict Flask-Limiter 3.13 (#55801)
add 063a0e33cba Fix trigger job log tests (#55563) (#55800)
add c83341880da fix unintended print of dag not found in serialised_dag
table (#54972)
add 1fb521e213a Adding a backcompat warning layer for
airflow.settings.MASK_SECRETS_IN_LOGS (#55712)
add 5f3e65401af Don't import/load executor if it's not necessary (#55742)
add 6f222c1235c UI fixes for calendar (#55476)
add 91790ea1e52 Add hyperlinks to dag_id column in Dag Runs and Task
Instances pages (#55648)
add c116d44c16d Correctly enable Connection "Save" button when editing
'Extra Fields' (#55558)
add 934a3cb84f3 Fix Task header in full screen logs (#55784)
add e9d623618a3 Fix redirection to 'next' url raises an unsafe error
(#55704)
add 5d00661448c Enhance Grid view to support RWD (#55745)
add 929c1955aae refactor(hitl): remove AirflowException from
HITLTriggerEventError inheritance (#55763)
add a524ff8eeec Fix mapIndex type validation error (#55794)
add 08474428379 fix(hitl): fix HITL timeout error handling (#55760)
add 6fae267ea8c Call sys.exit instead of builtin exit in task runner parse
method in case of missing DAG or task. (#55786)
add 06ad86039da refactor: Remove inactive asset check in scheduler (#55714)
add 9767c80a133 SLA-to-Deadlines migration guide and minor
Deadlines-related docs updates (#55743)
add f612f23d857 Move rtl logic to react (#55808)
add deea370923c Fix UI stats endpoint (#55733)
add 7ce164dd38e Update 3.1.0 release notes based on latest cherry-picks
add 44fe056a6b0 (docs) Update HITL tutorial screenshots (#55798)
add d03868e105a Temporary fix to Bitnami psql chart licensing issues
(#55820)
add ea8db37fa5f fix(hitl): HITL ti state sorting (#55779)
add 6b41467ce48 feat(hitl): add map_index filter to get_hitl_details
endpoint (#55776)
add e88a9268c07 fix(hitl): fix missing responded_user rename (#55777)
add c1ea7f984af Respect old logging format if given so logs don't change
unexpectedly. (#55824)
add 6969b551972 Validate plugins in /plugins API and skip invalid ones
with warnings (#55673)
add 59676b0acc5 Bump DAG Serialization version to 3 (#55836)
add 06c13380eb6 Set default html lang and dir (#55839)
add c77584e510e Update the list of nullable properties on
LazyDeserializedDAG (#55833)
add 6aef8030135 Fix scheduler handling of orphaned tasks from airflow 2
(#55848)
add f22584854e1 Fix _get_serdag query in grid ui (#55771)
add 67468ef2c5b Optimize DAG serialization by excluding schema default
values (#55849)
add b8d8b056feb Handle trigger calls to get_connection (#55799)
add 16569d9a83d Install ``greenback`` in Task SDK (#55855)
add b80097afc0e Update 3.1.0 release notes based on latest cherry-picks
add 1e473c26aa2 fix: Set triggered_by='ui' for DAG runs triggered from UI
(#54650)
add 0b3df0d4f2b (docs) Update Overview screenshots (#55813)
add 8115e36743a Fix filter in gantt and grid view (#55845)
add b3e2ec8d572 Bump `uv` to `0.8.18` and `ruff` to `0.13.1` (#55858)
add 9dad4a9598c Add __repr__ methods to serialized classes for better
debugging (#55860)
add 63ab67eea72 refresh screenshots for updated UI (#55863)
add df5109402bb refresh screenshots for updated UI (#55864)
add 7d59ca55129 (docs) update architecture overview screenshots (#55859)
add 878cc6793d1 Bump up mypy to 1.18.2 and ruff to 0.13.1 (#55870)
add 5b63b7baa6e Update responsive options handling in PanelButtons (#55868)
add 0b5e3da9122 Fix deprecation warnings for airflow v2 imports (#55881)
add dc2cc65cde5 Fall back to stringification for XCom (#55880)
add 49ef1bdb058 Fix migrations for sqlite (#55883)
add b5a84c1f633 Fix:added none to lastupdated Date if event is not in
queue (#54652)
add 204edbf4973 Fix (internationalization): Simplified Chinese fills in
gaps and removes extra content, optimizes description (#55564)
add 60776eafcec Update 3.1.0 release notes based on latest cherry-picks
add 25cdaa1ae5a (docs) update core concepts dags screenshots (#55865)
add 58cc58e8bee Restrict click 8.3.0
add d33bf053b54 Fix DAG deserialization failure with non-default
``weight_rule`` (#55906)
add 4eecd4d03b5 Fix formatting issue in Deadline Alerts' docs (#55911)
add bee83f6a845 Change the signature of BaseDBManager downgrade method
(#55907)
add 953dd94c605 Add tests for DBManager upgrade and downgrade (#55940)
add f6692be7876 Make Airflow 3 upgrade section visible in sidebar (#55965)
add c17fba57937 Fix left navigation and public interface docs in core docs
(#55967)
add d67d47d24fc Fix async connection retrieval in triggerer context
(#55812)
add 4b7beb83a98 Updated Dag-Run Screenshots (#55921)
add dd6a05f737f Fix 'All Log Levels' option in TaskLogHeader (#55851)
add 243212e6561 Fix `breeze run` command to respect `--backend` flag
(#55977)
add 3a7ac635802 Use ``SecretCache`` for connection and variable access in
task sdk (#55972)
add 1787ba4d332 Fix pytest collection failure for classes decorated with
context managers (#55915)
add 5bab9e6ca72 Bump `uv` to `0.8.20` (#55978)
add fc32d24ec1b Fix grid scrollbar overlapping on firefox (#55960)
add a3ad5a9d532 Fix PoolBar flex values (#55957)
add f5951e2f24f Handle Serialized DAG Format from v3 to v2 when
downgrading Airflow (#55975)
add 447f2537bb8 Regenerate the rest API spec to fix CI (#55986)
add e9aa8340120 Fix reset button text in pools dialog (#55991)
add da2b21a17e8 Fix Gantt misalignment (#55995)
add 23ebc08e0a7 Fix grid small task names (#55997)
add ab3f1c23b6d fix: add timetable_summary to serialized DAG (#55998)
add 7beaa105380 fix(ui): Reset pagination on filter change (#55999)
add 71e5a4e1056 Doc : UI-Guide Remaining Screenshot Updates (#56000)
add 8d4617a48e4 Fix issue where LocalExecutor could start tasks before the
state was commited (#56010)
add 54bd5d8cd9f Update 3.1.0 release notes
add 6d2aac69c8e Temporarily mark `test_reading_from_pipes` as xfail
add 0e9bc26ac58 Relax requirement on Task SDK for meta package
add 39aaaff583c Bump ruff up to 0.13.2 (#56102)
add 1822c8b9a07 Remove self-reference in best practices documentation
(#56111)
add dabb34bd725 Bump Airflow to 3.1.1 and Task SDK to 1.1.1
add 5f83aed0071 Fix Python 3.12+ fork warning in async connection tests
(#56019)
add 0bf109000de Bump apache-airflow from 3.0.6 to 3.1.0 (#56151)
add 5355fe04261 [v3-1-test] Detect interactive terminal to set colored
logging + support override env variables (#56132) (#56157)
add 38ed3808897 Fix upgrade checks with prek in v3-1-test (#56171)
add d581408c5f5 [v3-1-test] Update changelog of dockerfile to include Fab
missing in Python 3.13 (#56176) (#56179)
add 6a3d1650db4 [v3-1-test] Add react-router-dom to external deps in
plugins (#56205) (#56213)
add 609297260f2 [v3-1-test] Fix upgrade checks with prek (#56222) (#56231)
add ac730eeea13 [v3-1-test] Bump version of providers (#56208) (#56251)
add 431baacde0f [v3-1-test] Replace defaultValue with value in
TaskTrySelect (#56141) (#56258)
add 4465006f731 [v3-1-test] Support Dynamic UI Alerts (#54677) (#56259)
add 942928bcfe5 [v3-1-test] Fix cron expression display for Day-of-Month
and Day-of-Week conflicts (#54644) (#56255)
add bf2f633a554 [v3-1-test] fix(api_fastapi): adjust model validator
signature of TriggerDAGRunPostBody (#56025) (#56026) (#56256)
add a85240c18ef [v3-1-test] UI: Add Expand/Collapse all to XComs page
(#56083) (#56285)
add 82b0f0bbdd3 [v3-1-test] Fix scheduler crash during 3.0 to 3.1
migration when retry_delay is None (#56202) (#56236)
add 3dafbf9dc49 [v3-1-test] Fix multi-line drag selection in task log view
(#56238) (#56300)
add 406868167c0 [v3-1-test] Fix FAB provider name in auth manager section
of release notes (#56301) (#56317)
add 1da7340e13a [v3-1-test] Use TI duration from db instead of UI
calculated (#56310) (#56329)
add 12a75c0c503 [v3-1-test] Fix failed image build in v3-1-test (#56352)
add bcd14991095 [v3-1-test] Cleanup disk space in image cache push jobs
(#56198) (#56203)
add 1e450303e3a [v3-1-test] Expand and collapse group component (#56293)
(#56334)
add 811ce2e655d Upgrade tools on v3-1-test (#56375)
add 0238b95c812 [v3-1-test] Restrict universal-pathlib 0.3.0 (#56370)
(#56376)
add c474be9ff06 [v3-1-test] Temporarily limit fastapi to less than 0.118.0
to fix CI (#56239) (#56386)
add 7f5e42c7c63 [v3-1-test] Make Dag Run ID visible in Dag Header Card
(#56392) (#56409)
add df1b0262af9 [v3-1-test] Use Task Display Name in Grid if existing
(#56393) (#56410)
add 6ce887f7ef8 [v3-1-test] fix: show appropriate time units in grid view
(#56403) (#56414)
add 49c0fff4a49 [v3-1-test] Fix scheduler crash with email notifications
(#56429) (#56431)
add 327d36c6e47 Limit astroid to < 4 to fix broken docs builds (#56419)
add 4cf03c0d30e [v3-1-test] Add uvicorn to spelling ignore list (#56441)
(#56442)
add 1b33eb631f7 [v3-1-test] Emit log stream stopped warning as ndjson
(#56474) (#56480)
add aa37f1ad3a6 [v3-1-test] Fix broken main after pydantic 2.12.0 (#56483)
(#56489)
add 260536c10c9 [v3-1-test] Bump uv version to 0.9.0 and ruff to 0.14.0
(#56467) (#56491)
add 8e1c5191a61 [v3-1-test] 56058: Validating latestRun before accessing
its properties (#56303) (#56488)
add c4a4b0280c3 [v3-1-test] Allow sub-pages in React UI plugins (#56413)
(#56485)
add ac135bb26ef [v3-1-test] feat: make clipboard hover (#56382) (#56484)
add a1f72f10db6 [v3-1-test] Use Task Display Name in Graph if existing
(#56455) (#56511)
add 00fd7d4951b [v3-1-test] Fix broken main after pydantic 2.12.0 - partly
cleanup (#56514) (#56569)
add 6873b86f586 Bump datamodel-code-generator[http] from 0.32.0 to 0.33.0
in /task-sdk
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (dc3dd5138c9)
\
N -- N -- N
refs/heads/dependabot/pip/task-sdk/v3-1-test/datamodel-code-generator-http--0.33.0
(6873b86f586)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.github/actions/install-prek/action.yml | 6 +-
.github/workflows/basic-tests.yml | 6 +-
.github/workflows/ci-amd.yml | 2 +-
.github/workflows/ci-image-build.yml | 3 +-
.github/workflows/prod-image-build.yml | 7 +-
.github/workflows/push-image-cache.yml | 4 +
.github/workflows/release_dockerhub_image.yml | 2 +-
.pre-commit-config.yaml | 55 +-
Dockerfile | 7 +-
Dockerfile.ci | 6 +-
README.md | 2 +-
RELEASE_NOTES.rst | 202 ++-
.../dag-serialization.rst | 2 +-
.../docs/administration-and-deployment/plugins.rst | 3 +
airflow-core/docs/best-practices.rst | 4 +-
airflow-core/docs/core-concepts/operators.rst | 20 +-
airflow-core/docs/core-concepts/overview.rst | 2 +-
airflow-core/docs/faq.rst | 1 -
airflow-core/docs/howto/custom-view-plugin.rst | 7 +
airflow-core/docs/howto/customize-ui.rst | 115 +-
airflow-core/docs/howto/deadline-alerts.rst | 11 +-
airflow-core/docs/howto/docker-compose/index.rst | 25 +-
airflow-core/docs/howto/index.rst | 1 +
airflow-core/docs/howto/sla-to-deadlines.rst | 89 ++
airflow-core/docs/img/airflow_erd.sha256 | 2 +-
airflow-core/docs/img/airflow_erd.svg | 123 +-
airflow-core/docs/img/hitl_approve_reject.png | Bin 527119 -> 0 bytes
airflow-core/docs/img/hitl_branch_selected.png | Bin 485113 -> 0 bytes
airflow-core/docs/img/hitl_branch_selection.png | Bin 451478 -> 0 bytes
airflow-core/docs/img/hitl_wait_for_input.png | Bin 493082 -> 0 bytes
.../docs/img/hitl_wait_for_multiple_options.png | Bin 524043 -> 0 bytes
airflow-core/docs/img/hitl_wait_for_option.png | Bin 493109 -> 0 bytes
airflow-core/docs/img/ui-dark/asset_view.png | Bin 229760 -> 313521
bytes
airflow-core/docs/img/ui-dark/backfill.png | Bin 125860 -> 166886
bytes
airflow-core/docs/img/ui-dark/basic_dag.png | Bin 17577 -> 240166 bytes
airflow-core/docs/img/ui-dark/branch_note.png | Bin 37976 -> 312529 bytes
.../docs/img/ui-dark/branch_with_trigger.png | Bin 35762 -> 564088 bytes
.../docs/img/ui-dark/branch_without_trigger.png | Bin 37206 -> 542352 bytes
airflow-core/docs/img/ui-dark/dag_doc.png | Bin 92727 -> 302292 bytes
.../img/ui-dark/dag_graph_external_conditions.png | Bin 164762 -> 355786
bytes
airflow-core/docs/img/ui-dark/dag_list.png | Bin 220039 -> 319051
bytes
.../docs/img/ui-dark/dag_overview_details.png | Bin 117313 -> 191871
bytes
airflow-core/docs/img/ui-dark/dag_run_details.png | Bin 244367 -> 335121
bytes
airflow-core/docs/img/ui-dark/dag_run_graph.png | Bin 323997 -> 658686
bytes
.../docs/img/ui-dark/dag_run_task_instances.png | Bin 381299 -> 441570
bytes
.../docs/img/ui-dark/dag_task_instance_details.png | Bin 121964 -> 149605
bytes
.../img/ui-dark/dag_trigger_window_single_run.png | Bin 74262 -> 63113 bytes
airflow-core/docs/img/ui-dark/dags.png | Bin 117751 -> 416371
bytes
...demo_complex_dag_overview_with_failed_tasks.png | Bin 0 -> 653998 bytes
.../demo_dag_overview_with_failed_tasks.png | Bin 285470 -> 0 bytes
.../docs/img/ui-dark/demo_graph_and_code_view.png | Bin 171844 -> 458347
bytes
.../img/ui-dark/demo_grid_view_with_task_logs.png | Bin 220959 -> 401627
bytes
.../docs/img/ui-dark/hitl_approve_reject.png | Bin 0 -> 477232 bytes
.../docs/img/ui-dark/hitl_branch_selected.png | Bin 0 -> 469903 bytes
.../docs/img/ui-dark/hitl_branch_selection.png | Bin 0 -> 456696 bytes
.../docs/img/ui-dark/hitl_wait_for_input.png | Bin 0 -> 459252 bytes
.../img/ui-dark/hitl_wait_for_multiple_options.png | Bin 0 -> 474777 bytes
.../docs/img/ui-dark/hitl_wait_for_option.png | Bin 0 -> 446596 bytes
airflow-core/docs/img/ui-dark/task_doc.png | Bin 196657 -> 526160
bytes
.../docs/img/ui-dark/task_instance_history.png | Bin 125116 -> 315475
bytes
.../docs/img/ui-dark/task_instance_history_log.png | Bin 204892 -> 345354
bytes
.../ui-dark/tutorial_pipeline_add_connection.png | Bin 109852 -> 285717
bytes
.../img/ui-dark/tutorial_pipeline_dag_list.png | Bin 70666 -> 0 bytes
.../ui-dark/tutorial_pipeline_dag_list_trigger.png | Bin 0 -> 254058 bytes
.../tutorial_pipeline_dag_overview_processed.png | Bin 107191 -> 421607
bytes
.../tutorial_pipeline_dag_task_instance_logs.png | Bin 0 -> 510999 bytes
airflow-core/docs/img/ui-dark/variable_hidden.png | Bin 76058 -> 111198 bytes
airflow-core/docs/img/ui-light/asset_view.png | Bin 236941 -> 352686
bytes
airflow-core/docs/img/ui-light/backfill.png | Bin 116042 -> 188317
bytes
airflow-core/docs/img/ui-light/basic_dag.png | Bin 17997 -> 240901 bytes
airflow-core/docs/img/ui-light/branch_note.png | Bin 38672 -> 313601 bytes
.../docs/img/ui-light/branch_with_trigger.png | Bin 35825 -> 517107 bytes
.../docs/img/ui-light/branch_without_trigger.png | Bin 37074 -> 496075 bytes
airflow-core/docs/img/ui-light/dag_doc.png | Bin 96363 -> 298120 bytes
.../img/ui-light/dag_graph_external_conditions.png | Bin 136359 -> 395154
bytes
airflow-core/docs/img/ui-light/dag_list.png | Bin 225518 -> 346447
bytes
.../docs/img/ui-light/dag_overview_details.png | Bin 117433 -> 204735
bytes
airflow-core/docs/img/ui-light/dag_run_details.png | Bin 256723 -> 372052
bytes
airflow-core/docs/img/ui-light/dag_run_graph.png | Bin 340520 -> 701016
bytes
.../docs/img/ui-light/dag_run_task_instances.png | Bin 390877 -> 471612
bytes
.../img/ui-light/dag_task_instance_details.png | Bin 121197 -> 146100
bytes
.../img/ui-light/dag_trigger_window_single_run.png | Bin 68585 -> 62480 bytes
airflow-core/docs/img/ui-light/dags.png | Bin 116182 -> 411981
bytes
...demo_complex_dag_overview_with_failed_tasks.png | Bin 0 -> 418224 bytes
.../demo_dag_overview_with_failed_tasks.png | Bin 286606 -> 0 bytes
.../docs/img/ui-light/demo_graph_and_code_view.png | Bin 165225 -> 309732
bytes
.../img/ui-light/demo_grid_view_with_task_logs.png | Bin 222704 -> 279687
bytes
.../docs/img/ui-light/hitl_approve_reject.png | Bin 0 -> 352558 bytes
.../docs/img/ui-light/hitl_branch_selected.png | Bin 0 -> 350699 bytes
.../docs/img/ui-light/hitl_branch_selection.png | Bin 0 -> 336638 bytes
.../docs/img/ui-light/hitl_wait_for_input.png | Bin 0 -> 325927 bytes
.../ui-light/hitl_wait_for_multiple_options.png | Bin 0 -> 350426 bytes
.../docs/img/ui-light/hitl_wait_for_option.png | Bin 0 -> 323444 bytes
airflow-core/docs/img/ui-light/task_doc.png | Bin 202764 -> 529064
bytes
.../docs/img/ui-light/task_instance_history.png | Bin 124879 -> 351533
bytes
.../img/ui-light/task_instance_history_log.png | Bin 205839 -> 375281
bytes
.../ui-light/tutorial_pipeline_add_connection.png | Bin 114291 -> 286104
bytes
.../img/ui-light/tutorial_pipeline_dag_list.png | Bin 70320 -> 0 bytes
.../tutorial_pipeline_dag_list_trigger.png | Bin 0 -> 249992 bytes
.../tutorial_pipeline_dag_overview_processed.png | Bin 108052 -> 420870
bytes
.../tutorial_pipeline_dag_task_instance_logs.png | Bin 0 -> 509909 bytes
airflow-core/docs/img/ui-light/variable_hidden.png | Bin 79071 -> 114589 bytes
airflow-core/docs/index.rst | 8 +-
.../docs/installation/supported-versions.rst | 2 +-
.../docs/installation/upgrading_to_airflow3.rst | 66 +-
airflow-core/docs/migrations-ref.rst | 5 +-
airflow-core/docs/public-airflow-interface.rst | 69 +-
airflow-core/docs/start.rst | 2 +-
airflow-core/docs/troubleshooting.rst | 22 +-
airflow-core/docs/tutorial/fundamentals.rst | 4 +-
airflow-core/docs/tutorial/hitl.rst | 15 +-
airflow-core/docs/tutorial/pipeline.rst | 11 +-
airflow-core/newsfragments/46929.bugfix.rst | 1 -
airflow-core/newsfragments/49779.significant.rst | 20 -
airflow-core/newsfragments/50374.feature.rst | 1 -
airflow-core/newsfragments/50693.significant.rst | 41 -
airflow-core/newsfragments/51424.significant.rst | 17 -
airflow-core/newsfragments/51639.significant.rst | 17 -
airflow-core/newsfragments/52860.significant.rst | 17 -
airflow-core/newsfragments/53631.misc.rst | 1 -
airflow-core/newsfragments/53727.feature.rst | 1 -
airflow-core/newsfragments/53796.misc.rst | 1 -
airflow-core/newsfragments/54857.significant.rst | 14 -
airflow-core/newsfragments/55508.feature.rst | 1 -
airflow-core/pyproject.toml | 24 +-
airflow-core/src/airflow/__init__.py | 2 +-
airflow-core/src/airflow/api/common/mark_tasks.py | 14 +-
.../auth/managers/simple/ui/package-lock.json | 8 +-
.../auth/managers/simple/ui/package.json | 2 +-
.../auth/managers/simple/ui/pnpm-lock.yaml | 110 +-
.../auth/managers/simple/ui/src/theme.ts | 2 +-
.../src/airflow/api_fastapi/common/parameters.py | 68 +-
.../api_fastapi/core_api/datamodels/dag_run.py | 6 +-
.../api_fastapi/core_api/datamodels/dags.py | 7 +-
.../api_fastapi/core_api/datamodels/hitl.py | 20 +-
.../api_fastapi/core_api/datamodels/xcom.py | 20 +
.../api_fastapi/core_api/openapi/_private_ui.yaml | 45 +-
.../core_api/openapi/v2-rest-api-generated.yaml | 196 ++-
.../api_fastapi/core_api/routes/public/__init__.py | 4 +-
.../api_fastapi/core_api/routes/public/dag_run.py | 11 +-
.../core_api/routes/public/extra_links.py | 9 +-
.../api_fastapi/core_api/routes/public/hitl.py | 75 +-
.../core_api/routes/public/import_error.py | 4 +
.../api_fastapi/core_api/routes/public/plugins.py | 28 +-
.../core_api/routes/public/task_instances.py | 5 +
.../api_fastapi/core_api/routes/ui/assets.py | 12 +-
.../api_fastapi/core_api/routes/ui/config.py | 4 +-
.../airflow/api_fastapi/core_api/routes/ui/dags.py | 6 +-
.../api_fastapi/core_api/routes/ui/dashboard.py | 32 +-
.../airflow/api_fastapi/core_api/routes/ui/grid.py | 10 +-
.../src/airflow/api_fastapi/core_api/security.py | 4 +-
.../api_fastapi/core_api/services/ui/task_group.py | 17 +-
.../api_fastapi/execution_api/datamodels/hitl.py | 28 +-
.../api_fastapi/execution_api/routes/hitl.py | 9 +-
.../execution_api/routes/task_instances.py | 9 +-
.../api_fastapi/execution_api/routes/variables.py | 15 +-
.../src/airflow/callbacks/callback_requests.py | 9 +-
.../airflow/callbacks/database_callback_sink.py | 2 +-
.../src/airflow/cli/commands/config_command.py | 3 +
.../src/airflow/cli/commands/scheduler_command.py | 6 +-
.../src/airflow/cli/commands/task_command.py | 43 +-
.../config_templates/airflow_local_settings.py | 13 +-
.../src/airflow/config_templates/config.yml | 50 +-
airflow-core/src/airflow/configuration.py | 2 +-
airflow-core/src/airflow/dag_processing/manager.py | 37 +-
.../src/airflow/dag_processing/processor.py | 62 +-
.../src/airflow/executors/local_executor.py | 12 +-
.../src/airflow/jobs/scheduler_job_runner.py | 43 +-
.../src/airflow/jobs/triggerer_job_runner.py | 5 +
airflow-core/src/airflow/logging_config.py | 25 +-
.../versions/0041_3_0_0_rename_dataset_as_asset.py | 12 +-
.../0076_3_1_0_add_human_in_the_loop_response.py | 9 +-
...4_3_1_0_add_last_parse_duration_to_dag_model.py | 15 +-
...3_1_0_downgrade_serialized_dag_version_to_v2.py | 199 +++
airflow-core/src/airflow/models/dagrun.py | 14 +-
airflow-core/src/airflow/models/hitl.py | 104 +-
airflow-core/src/airflow/models/mappedoperator.py | 7 +
airflow-core/src/airflow/models/taskinstance.py | 52 +-
airflow-core/src/airflow/models/xcom_arg.py | 5 +-
.../airflow/serialization/definitions/taskgroup.py | 9 +-
airflow-core/src/airflow/serialization/schema.json | 20 +-
.../airflow/serialization/serialized_objects.py | 290 +++-
airflow-core/src/airflow/settings.py | 15 +
airflow-core/src/airflow/ti_deps/dep_context.py | 8 +-
airflow-core/src/airflow/timetables/_cron.py | 47 +-
airflow-core/src/airflow/ui/dev/index.html | 2 +-
airflow-core/src/airflow/ui/index.html | 2 +-
.../src/airflow/ui/openapi-gen/queries/common.ts | 80 +-
.../ui/openapi-gen/queries/ensureQueryData.ts | 138 +-
.../src/airflow/ui/openapi-gen/queries/prefetch.ts | 138 +-
.../src/airflow/ui/openapi-gen/queries/queries.ts | 192 +--
.../src/airflow/ui/openapi-gen/queries/suspense.ts | 138 +-
.../airflow/ui/openapi-gen/requests/schemas.gen.ts | 78 +-
.../ui/openapi-gen/requests/services.gen.ts | 259 ++--
.../airflow/ui/openapi-gen/requests/types.gen.ts | 298 ++--
airflow-core/src/airflow/ui/package.json | 10 +-
airflow-core/src/airflow/ui/pnpm-lock.yaml | 468 +++---
.../airflow/ui/public/i18n/locales/ar/common.json | 1 -
.../airflow/ui/public/i18n/locales/ca/common.json | 1 -
.../airflow/ui/public/i18n/locales/de/common.json | 1 -
.../airflow/ui/public/i18n/locales/en/common.json | 1 -
.../airflow/ui/public/i18n/locales/es/common.json | 2 +-
.../src/airflow/ui/public/i18n/locales/es/dag.json | 1 +
.../airflow/ui/public/i18n/locales/es/tasks.json | 10 +
.../airflow/ui/public/i18n/locales/fr/common.json | 1 -
.../airflow/ui/public/i18n/locales/he/common.json | 27 +-
.../ui/public/i18n/locales/he/dashboard.json | 6 +-
.../airflow/ui/public/i18n/locales/hi/common.json | 1 -
.../airflow/ui/public/i18n/locales/hu/common.json | 1 -
.../airflow/ui/public/i18n/locales/it/admin.json | 8 +-
.../airflow/ui/public/i18n/locales/it/assets.json | 40 +-
.../airflow/ui/public/i18n/locales/it/browse.json | 2 +-
.../airflow/ui/public/i18n/locales/it/common.json | 43 +-
.../ui/public/i18n/locales/it/components.json | 26 +-
.../src/airflow/ui/public/i18n/locales/it/dag.json | 12 +-
.../airflow/ui/public/i18n/locales/it/dags.json | 22 +-
.../ui/public/i18n/locales/it/dashboard.json | 28 +-
.../airflow/ui/public/i18n/locales/it/tasks.json | 2 +-
.../airflow/ui/public/i18n/locales/ko/common.json | 1 -
.../airflow/ui/public/i18n/locales/nl/admin.json | 2 +-
.../airflow/ui/public/i18n/locales/nl/common.json | 2 +-
.../src/airflow/ui/public/i18n/locales/nl/dag.json | 3 +-
.../airflow/ui/public/i18n/locales/pl/common.json | 1 -
.../airflow/ui/public/i18n/locales/pt/common.json | 1 -
.../airflow/ui/public/i18n/locales/tr/common.json | 1 -
.../ui/public/i18n/locales/zh-CN/admin.json | 10 +-
.../ui/public/i18n/locales/zh-CN/common.json | 20 +-
.../airflow/ui/public/i18n/locales/zh-CN/dag.json | 3 +
.../airflow/ui/public/i18n/locales/zh-CN/dags.json | 2 +-
.../ui/public/i18n/locales/zh-CN/dashboard.json | 4 +-
.../airflow/ui/public/i18n/locales/zh-CN/hitl.json | 9 +-
.../ui/public/i18n/locales/zh-TW/common.json | 1 -
.../ui/src/components/Assets/AssetEvents.tsx | 2 +-
.../ui/src/components/Assets/AssetEventsFilter.tsx | 107 +-
.../airflow/ui/src/components/DateTimeInput.tsx | 3 +-
.../airflow/ui/src/components/DurationChart.tsx | 3 +-
.../ui/src/components/ExpandCollapseButtons.tsx | 60 +
.../ui/src/components/FilterBar/FilterBar.tsx | 3 +
.../ui/src/components/FilterBar/FilterPill.tsx | 4 +-
.../ui/src/components/FilterBar/defaultIcons.tsx | 3 +-
.../components/FilterBar/filters/SelectFilter.tsx | 108 ++
.../airflow/ui/src/components/FilterBar/types.ts | 3 +-
.../src/components/FlexibleForm/FieldSelector.tsx | 14 +-
.../src/airflow/ui/src/components/HeaderCard.tsx | 2 +-
.../src/airflow/ui/src/components/HoverTooltip.tsx | 63 +
.../ui/src/components/NeedsReviewButton.tsx | 30 +-
.../src/airflow/ui/src/components/PoolBar.tsx | 1 -
.../src/airflow/ui/src/components/StatsCard.tsx | 6 +-
.../ui/src/components/TaskInstanceTooltip.tsx | 4 +-
.../airflow/ui/src/components/TaskTrySelect.tsx | 2 +-
.../src/airflow/ui/src/components/Time.test.tsx | 9 +-
.../src/airflow/ui/src/components/Time.tsx | 9 +-
.../src/components/TriggerDag/TriggerDAGForm.tsx | 3 +-
.../ui/src/components/renderStructuredLog.tsx | 26 +-
.../ui/src/components/ui/SegmentedControl.tsx | 2 +
.../ui/src/components/ui/Select/Trigger.tsx | 7 +-
.../src/airflow/ui/src/constants/filterConfigs.tsx | 30 +-
.../ui/src/context/colorMode/ColorModeProvider.tsx | 3 +-
.../ui/src/context/{timezone => hover}/Context.ts | 8 +-
.../hover/HoverProvider.tsx} | 24 +-
.../DataTable => context/hover}/index.ts | 5 +-
.../{timezone/useTimezone.ts => hover/useHover.ts} | 8 +-
.../airflow/ui/src/hooks/useRequiredActionTabs.ts | 127 ++
.../src/airflow/ui/src/hooks/useSelectedVersion.ts | 6 +-
.../src/airflow/ui/src/layouts/BaseLayout.tsx | 19 +-
.../ui/src/layouts/Details/DagBreadcrumb.tsx | 8 +-
.../ui/src/layouts/Details/DetailsLayout.tsx | 309 ++--
.../airflow/ui/src/layouts/Details/Gantt/Gantt.tsx | 90 +-
.../airflow/ui/src/layouts/Details/Gantt/utils.ts | 252 ++--
.../ui/src/layouts/Details/Grid/DurationTick.tsx | 17 +-
.../airflow/ui/src/layouts/Details/Grid/Grid.tsx | 2 +-
.../airflow/ui/src/layouts/Details/Grid/GridTI.tsx | 44 +-
.../ui/src/layouts/Details/Grid/TaskNames.tsx | 27 +-
.../ui/src/layouts/Details/PanelButtons.tsx | 58 +-
.../ui/src/layouts/Details/ToggleGroups.tsx | 33 +-
.../ui/src/layouts/Nav/TimezoneSelector.tsx | 3 +-
.../ui/src/layouts/Nav/UserSettingsButton.tsx | 16 +-
airflow-core/src/airflow/ui/src/main.tsx | 13 +-
.../src/airflow/ui/src/mocks/handlers/log.ts | 188 ++-
.../ui/src/pages/Connections/ConnectionForm.tsx | 17 +-
.../airflow/ui/src/pages/Dag/Calendar/Calendar.tsx | 10 +-
.../ui/src/pages/Dag/Calendar/CalendarCell.tsx | 60 +-
.../ui/src/pages/Dag/Calendar/CalendarLegend.tsx | 2 +-
.../ui/src/pages/Dag/Calendar/CalendarTooltip.tsx | 132 +-
.../pages/Dag/Calendar/CalendarTooltipContent.tsx | 68 -
.../src/pages/Dag/Calendar/DailyCalendarView.tsx | 25 +-
.../src/pages/Dag/Calendar/HourlyCalendarView.tsx | 26 +-
.../ui/src/pages/Dag/Calendar/calendarUtils.ts | 22 +-
.../ui/src/pages/Dag/Calendar/richTooltipUtils.ts | 50 -
.../ui/src/pages/Dag/Calendar/useDelayedTooltip.ts | 60 -
airflow-core/src/airflow/ui/src/pages/Dag/Dag.tsx | 49 +-
.../airflow/ui/src/pages/Dag/Overview/Overview.tsx | 8 +-
airflow-core/src/airflow/ui/src/pages/DagRuns.tsx | 7 +
.../airflow/ui/src/pages/DagsList/RecentRuns.tsx | 15 +-
.../src/pages/Dashboard/Stats/DAGImportErrors.tsx | 8 +-
.../pages/Dashboard/Stats/DAGImportErrorsModal.tsx | 36 +-
.../airflow/ui/src/pages/Dashboard/Stats/Stats.tsx | 8 +-
.../src/airflow/ui/src/pages/Events/Events.tsx | 28 +-
.../HITLFilters.tsx} | 37 +-
.../pages/HITLTaskInstances/HITLResponseForm.tsx | 6 +-
.../pages/HITLTaskInstances/HITLTaskInstances.tsx | 101 +-
.../src/airflow/ui/src/pages/Pools/PoolForm.tsx | 4 +-
.../src/airflow/ui/src/pages/Run/Header.tsx | 2 +-
airflow-core/src/airflow/ui/src/pages/Run/Run.tsx | 26 +-
.../ui/src/pages/Task/Overview/Overview.tsx | 7 +-
.../src/airflow/ui/src/pages/Task/Task.tsx | 21 +-
.../ui/src/pages/TaskInstance/AssetEvents.tsx | 20 +-
.../airflow/ui/src/pages/TaskInstance/Details.tsx | 27 +-
.../ui/src/pages/TaskInstance/HITLResponse.tsx | 17 +-
.../airflow/ui/src/pages/TaskInstance/Header.tsx | 5 +-
.../ui/src/pages/TaskInstance/Logs/Logs.test.tsx | 62 +-
.../ui/src/pages/TaskInstance/Logs/Logs.tsx | 21 +-
.../src/pages/TaskInstance/Logs/TaskLogContent.tsx | 3 +-
.../src/pages/TaskInstance/Logs/TaskLogHeader.tsx | 4 +-
.../src/pages/TaskInstance/RenderedTemplates.tsx | 45 +-
.../ui/src/pages/TaskInstance/TaskInstance.tsx | 55 +-
.../ui/src/pages/TaskInstances/TaskInstances.tsx | 13 +-
.../src/airflow/ui/src/pages/XCom/XCom.tsx | 20 +-
.../src/airflow/ui/src/pages/XCom/XComEntry.tsx | 9 +-
.../ui/src/queries/useClearTaskInstances.ts | 9 +-
.../src/airflow/ui/src/queries/useDeleteDagRun.ts | 4 +-
.../ui/src/queries/useDeleteTaskInstance.ts | 4 +-
.../airflow/ui/src/queries/useGridTISummaries.ts | 4 +-
.../airflow/ui/src/queries/usePatchTaskInstance.ts | 19 +-
.../airflow/ui/src/queries/useUpdateHITLDetail.ts | 14 +-
airflow-core/src/airflow/ui/src/queryClient.ts | 6 +-
airflow-core/src/airflow/ui/src/router.tsx | 2 +-
airflow-core/src/airflow/ui/src/theme.ts | 2 +-
.../src/airflow/ui/src/utils/AppWrapper.tsx | 8 +-
.../src/airflow/ui/src/utils/datetimeUtils.test.ts | 10 +-
.../src/airflow/ui/src/utils/datetimeUtils.ts | 18 +-
.../src/airflow/ui/src/utils/useFiltersHandler.ts | 37 +-
airflow-core/src/airflow/utils/cli.py | 4 +-
airflow-core/src/airflow/utils/dag_edges.py | 4 +-
airflow-core/src/airflow/utils/db.py | 10 +-
airflow-core/src/airflow/utils/db_manager.py | 2 +-
.../src/airflow/utils/deprecation_tools.py | 13 +-
airflow-core/src/airflow/utils/dot_renderer.py | 4 +-
.../src/airflow/utils/log/file_task_handler.py | 5 +-
airflow-core/src/airflow/utils/log/log_reader.py | 3 +-
airflow-core/src/airflow/utils/serve_logs/core.py | 10 +-
.../core_api/routes/public/test_hitl.py | 217 +--
.../core_api/routes/public/test_plugins.py | 29 +
.../core_api/routes/public/test_task_instances.py | 19 +
.../api_fastapi/core_api/routes/ui/test_assets.py | 83 ++
.../api_fastapi/core_api/routes/ui/test_dags.py | 9 +-
.../core_api/routes/ui/test_dashboard.py | 30 +-
.../api_fastapi/core_api/routes/ui/test_grid.py | 20 +-
.../unit/api_fastapi/core_api/test_security.py | 23 +
.../execution_api/versions/head/test_hitl.py | 25 +-
.../versions/head/test_task_instances.py | 34 -
.../execution_api/versions/head/test_variables.py | 75 +-
.../tests/unit/callbacks/test_callback_requests.py | 22 +-
.../tests/unit/cli/commands/test_db_command.py | 276 ++++
.../unit/cli/commands/test_db_manager_command.py | 191 ++-
.../unit/cli/commands/test_scheduler_command.py | 3 +-
airflow-core/tests/unit/core/test_configuration.py | 8 +-
.../tests/unit/dag_processing/test_manager.py | 9 +-
.../tests/unit/dag_processing/test_processor.py | 195 ++-
.../tests/unit/executors/test_local_executor.py | 10 +-
airflow-core/tests/unit/jobs/test_scheduler_job.py | 88 ++
airflow-core/tests/unit/jobs/test_triggerer_job.py | 26 +-
airflow-core/tests/unit/models/test_cleartasks.py | 4 +-
airflow-core/tests/unit/models/test_dag.py | 11 +-
airflow-core/tests/unit/models/test_dagrun.py | 15 +-
.../tests/unit/models/test_taskinstance.py | 44 +-
airflow-core/tests/unit/plugins/test_plugin.py | 15 +
.../tests/unit/plugins/test_plugins_manager.py | 2 +-
.../unit/serialization/test_dag_serialization.py | 469 +++++-
.../test_cron_mixin.py} | 32 +-
.../tests/unit/utils/log/test_colored_log.py | 46 -
.../tests/unit/utils/log/test_log_reader.py | 2 +-
airflow-core/tests/unit/utils/test_db_manager.py | 30 +
.../tests/unit/utils/test_deprecation_tools.py | 20 +-
airflow-core/tests/unit/utils/test_log_handlers.py | 25 +-
airflow-ctl/pyproject.toml | 4 +-
.../airflowctl/api/datamodels/auth_generated.py | 2 +-
.../src/airflowctl/api/datamodels/generated.py | 32 +-
chart/values.yaml | 6 +-
contributing-docs/08_static_code_checks.rst | 4 +-
{.github => dev}/.pre-commit-config.yaml | 0
dev/breeze/README.md | 2 +-
dev/breeze/doc/ci/02_images.md | 4 +-
dev/breeze/pyproject.toml | 6 +-
.../airflow_breeze/commands/developer_commands.py | 2 +
.../commands/release_management_commands.py | 8 +-
dev/breeze/src/airflow_breeze/global_constants.py | 2 +-
.../airflow_breeze/utils/docker_command_utils.py | 16 +-
dev/breeze/uv.lock | 1542 ++++++++++----------
.../react_plugin_template/package.json | 9 +-
.../src/context/colorMode/ColorModeProvider.tsx | 3 +-
.../react_plugin_template/src/pages/HomePage.tsx | 2 +-
.../react_plugin_template/vite.config.ts | 3 +-
devel-common/pyproject.toml | 7 +-
docker-stack-docs/README.md | 10 +-
docker-stack-docs/changelog.rst | 7 +
.../extending/add-airflow-configuration/Dockerfile | 2 +-
.../extending/add-apt-packages/Dockerfile | 2 +-
.../add-build-essential-extend/Dockerfile | 2 +-
.../extending/add-providers/Dockerfile | 2 +-
.../add-pypi-packages-constraints/Dockerfile | 2 +-
.../extending/add-pypi-packages-uv/Dockerfile | 2 +-
.../extending/add-pypi-packages/Dockerfile | 2 +-
.../extending/add-requirement-packages/Dockerfile | 2 +-
.../extending/custom-providers/Dockerfile | 2 +-
.../extending/embedding-dags/Dockerfile | 2 +-
.../extending/writable-directory/Dockerfile | 2 +-
docker-stack-docs/entrypoint.rst | 23 +-
docker-tests/tests/docker_tests/test_prod_image.py | 28 +-
docs/spelling_wordlist.txt | 3 +
go-sdk/.pre-commit-config.yaml | 73 +
performance/requirements.txt | 2 +-
.../apache/kafka/operators/test_consume.py | 41 +-
.../apache/kafka/operators/test_produce.py | 33 +-
.../tests/unit/celery/cli/test_celery_command.py | 14 +-
providers/common/compat/provider.yaml | 1 +
providers/common/compat/pyproject.toml | 6 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
providers/common/io/provider.yaml | 1 +
providers/common/io/pyproject.toml | 6 +-
.../io/src/airflow/providers/common/io/__init__.py | 2 +-
providers/common/sql/provider.yaml | 1 +
providers/common/sql/pyproject.toml | 6 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
.../providers/edge3/openapi/v2-edge-generated.yaml | 20 +-
.../providers/edge3/plugins/www/dist/main.umd.cjs | 36 +-
.../www/openapi-gen/requests/services.gen.ts | 10 +-
.../plugins/www/openapi-gen/requests/types.gen.ts | 20 +-
providers/edge3/www-hash.txt | 2 +-
.../fab/auth_manager/security_manager/override.py | 5 +-
providers/google/pyproject.toml | 2 +-
.../openlineage/utils/selective_enable.py | 6 +-
.../airflow/providers/openlineage/utils/utils.py | 31 +-
providers/smtp/provider.yaml | 1 +
providers/smtp/pyproject.toml | 6 +-
.../smtp/src/airflow/providers/smtp/__init__.py | 2 +-
providers/standard/provider.yaml | 1 +
providers/standard/pyproject.toml | 6 +-
.../src/airflow/providers/standard/__init__.py | 2 +-
.../standard/example_dags/example_hitl_operator.py | 1 +
.../src/airflow/providers/standard/exceptions.py | 2 +-
.../airflow/providers/standard/operators/hitl.py | 11 +-
.../airflow/providers/standard/triggers/hitl.py | 42 +-
.../tests/unit/standard/operators/test_datetime.py | 10 +-
.../tests/unit/standard/operators/test_hitl.py | 107 +-
.../standard/sensors/test_external_task_sensor.py | 3 +-
.../tests/unit/standard/triggers/test_hitl.py | 40 +-
pyproject.toml | 10 +-
reproducible_build.yaml | 4 +-
scripts/ci/install_breeze.sh | 2 +-
.../prek/check_contextmanager_class_decorators.py | 133 ++
scripts/ci/prek/check_imports_in_providers.py | 2 +-
scripts/ci/prek/ruff_format.py | 2 +-
scripts/ci/prek/supported_versions.py | 2 +-
scripts/ci/prek/upgrade_important_versions.py | 269 ++--
scripts/docker/entrypoint_prod.sh | 6 +
scripts/in_container/run_generate_constraints.py | 9 +-
scripts/in_container/run_schema_defaults_check.py | 128 +-
scripts/tools/setup_breeze | 2 +-
.../logging/src/airflow_shared/logging/__init__.py | 2 +
.../logging/src/airflow_shared/logging/_config.py | 45 +
.../airflow_shared/logging/percent_formatter.py | 68 +-
.../src/airflow_shared/logging/structlog.py | 100 +-
shared/logging/tests/logging/test_structlog.py | 109 +-
task-sdk/pyproject.toml | 6 +-
task-sdk/src/airflow/sdk/__init__.py | 4 +-
task-sdk/src/airflow/sdk/api/client.py | 5 +-
.../src/airflow/sdk/api/datamodels/_generated.py | 56 +-
task-sdk/src/airflow/sdk/bases/operator.py | 6 +-
task-sdk/src/airflow/sdk/definitions/connection.py | 105 +-
task-sdk/src/airflow/sdk/definitions/dag.py | 34 +-
task-sdk/src/airflow/sdk/execution_time/context.py | 105 +-
task-sdk/src/airflow/sdk/execution_time/hitl.py | 16 +-
.../src/airflow/sdk/execution_time/supervisor.py | 29 +-
.../src/airflow/sdk/execution_time/task_runner.py | 23 +-
task-sdk/src/airflow/sdk/log.py | 22 +-
task-sdk/src/airflow/sdk/types.py | 2 +
task-sdk/tests/conftest.py | 42 +
task-sdk/tests/task_sdk/api/test_client.py | 23 +-
task-sdk/tests/task_sdk/bases/test_hook.py | 2 +-
task-sdk/tests/task_sdk/bases/test_operator.py | 1 +
.../{test_connections.py => test_connection.py} | 124 ++
.../tests/task_sdk/execution_time/test_context.py | 37 +-
.../task_sdk/execution_time/test_context_cache.py | 332 +++++
.../tests/task_sdk/execution_time/test_hitl.py | 27 +-
.../task_sdk/execution_time/test_supervisor.py | 55 +-
.../task_sdk/execution_time/test_task_runner.py | 27 +-
487 files changed, 9701 insertions(+), 4843 deletions(-)
create mode 100644 airflow-core/docs/howto/sla-to-deadlines.rst
delete mode 100644 airflow-core/docs/img/hitl_approve_reject.png
delete mode 100644 airflow-core/docs/img/hitl_branch_selected.png
delete mode 100644 airflow-core/docs/img/hitl_branch_selection.png
delete mode 100644 airflow-core/docs/img/hitl_wait_for_input.png
delete mode 100644 airflow-core/docs/img/hitl_wait_for_multiple_options.png
delete mode 100644 airflow-core/docs/img/hitl_wait_for_option.png
create mode 100644
airflow-core/docs/img/ui-dark/demo_complex_dag_overview_with_failed_tasks.png
delete mode 100644
airflow-core/docs/img/ui-dark/demo_dag_overview_with_failed_tasks.png
create mode 100644 airflow-core/docs/img/ui-dark/hitl_approve_reject.png
create mode 100644 airflow-core/docs/img/ui-dark/hitl_branch_selected.png
create mode 100644 airflow-core/docs/img/ui-dark/hitl_branch_selection.png
create mode 100644 airflow-core/docs/img/ui-dark/hitl_wait_for_input.png
create mode 100644
airflow-core/docs/img/ui-dark/hitl_wait_for_multiple_options.png
create mode 100644 airflow-core/docs/img/ui-dark/hitl_wait_for_option.png
delete mode 100644 airflow-core/docs/img/ui-dark/tutorial_pipeline_dag_list.png
create mode 100644
airflow-core/docs/img/ui-dark/tutorial_pipeline_dag_list_trigger.png
create mode 100644
airflow-core/docs/img/ui-dark/tutorial_pipeline_dag_task_instance_logs.png
create mode 100644
airflow-core/docs/img/ui-light/demo_complex_dag_overview_with_failed_tasks.png
delete mode 100644
airflow-core/docs/img/ui-light/demo_dag_overview_with_failed_tasks.png
create mode 100644 airflow-core/docs/img/ui-light/hitl_approve_reject.png
create mode 100644 airflow-core/docs/img/ui-light/hitl_branch_selected.png
create mode 100644 airflow-core/docs/img/ui-light/hitl_branch_selection.png
create mode 100644 airflow-core/docs/img/ui-light/hitl_wait_for_input.png
create mode 100644
airflow-core/docs/img/ui-light/hitl_wait_for_multiple_options.png
create mode 100644 airflow-core/docs/img/ui-light/hitl_wait_for_option.png
delete mode 100644
airflow-core/docs/img/ui-light/tutorial_pipeline_dag_list.png
create mode 100644
airflow-core/docs/img/ui-light/tutorial_pipeline_dag_list_trigger.png
create mode 100644
airflow-core/docs/img/ui-light/tutorial_pipeline_dag_task_instance_logs.png
delete mode 100644 airflow-core/newsfragments/46929.bugfix.rst
delete mode 100644 airflow-core/newsfragments/49779.significant.rst
delete mode 100644 airflow-core/newsfragments/50374.feature.rst
delete mode 100644 airflow-core/newsfragments/50693.significant.rst
delete mode 100644 airflow-core/newsfragments/51424.significant.rst
delete mode 100644 airflow-core/newsfragments/51639.significant.rst
delete mode 100644 airflow-core/newsfragments/52860.significant.rst
delete mode 100644 airflow-core/newsfragments/53631.misc.rst
delete mode 100644 airflow-core/newsfragments/53727.feature.rst
delete mode 100644 airflow-core/newsfragments/53796.misc.rst
delete mode 100644 airflow-core/newsfragments/54857.significant.rst
delete mode 100644 airflow-core/newsfragments/55508.feature.rst
create mode 100644
airflow-core/src/airflow/migrations/versions/0085_3_1_0_downgrade_serialized_dag_version_to_v2.py
create mode 100644
airflow-core/src/airflow/ui/public/i18n/locales/es/tasks.json
create mode 100644
airflow-core/src/airflow/ui/src/components/ExpandCollapseButtons.tsx
create mode 100644
airflow-core/src/airflow/ui/src/components/FilterBar/filters/SelectFilter.tsx
create mode 100644 airflow-core/src/airflow/ui/src/components/HoverTooltip.tsx
copy airflow-core/src/airflow/ui/src/context/{timezone => hover}/Context.ts
(80%)
copy
airflow-core/src/airflow/ui/src/{components/AssetExpression/OrGateNode.tsx =>
context/hover/HoverProvider.tsx} (66%)
copy airflow-core/src/airflow/ui/src/{components/DataTable =>
context/hover}/index.ts (85%)
copy airflow-core/src/airflow/ui/src/context/{timezone/useTimezone.ts =>
hover/useHover.ts} (78%)
create mode 100644
airflow-core/src/airflow/ui/src/hooks/useRequiredActionTabs.ts
delete mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Calendar/CalendarTooltipContent.tsx
delete mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Calendar/richTooltipUtils.ts
delete mode 100644
airflow-core/src/airflow/ui/src/pages/Dag/Calendar/useDelayedTooltip.ts
copy airflow-core/src/airflow/ui/src/pages/{XCom/XComFilters.tsx =>
HITLTaskInstances/HITLFilters.tsx} (73%)
copy airflow-core/tests/unit/{listeners/lifecycle_listener.py =>
timetables/test_cron_mixin.py} (57%)
delete mode 100644 airflow-core/tests/unit/utils/log/test_colored_log.py
rename {.github => dev}/.pre-commit-config.yaml (100%)
create mode 100644 go-sdk/.pre-commit-config.yaml
create mode 100644 scripts/ci/prek/check_contextmanager_class_decorators.py
create mode 100644 shared/logging/src/airflow_shared/logging/_config.py
rename task-sdk/tests/task_sdk/definitions/{test_connections.py =>
test_connection.py} (66%)
create mode 100644 task-sdk/tests/task_sdk/execution_time/test_context_cache.py