You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ep...@apache.org on 2023/08/18 12:59:13 UTC

[airflow-site] branch 2.7.0-docs created (now 7a699ac836)

This is an automated email from the ASF dual-hosted git repository.

ephraimanierobi pushed a change to branch 2.7.0-docs
in repository https://gitbox.apache.org/repos/asf/airflow-site.git


      at 7a699ac836 Add documentation for Apache Airflow 2.7.0

This branch includes the following new commits:

     new 7a699ac836 Add documentation for Apache Airflow 2.7.0

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[airflow-site] 01/01: Add documentation for Apache Airflow 2.7.0

Posted by ep...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ephraimanierobi pushed a commit to branch 2.7.0-docs
in repository https://gitbox.apache.org/repos/asf/airflow-site.git

commit 7a699ac836156bfa36e4d6cf073a1c3e0ee4f432
Author: Ephraim Anierobi <sp...@gmail.com>
AuthorDate: Fri Aug 18 13:57:59 2023 +0100

    Add documentation for Apache Airflow 2.7.0
---
 .../1.10.1/security/security-model.html            |     1 +
 .../1.10.10/security/security-model.html           |     1 +
 .../1.10.11/security/security-model.html           |     1 +
 .../1.10.12/security/security-model.html           |     1 +
 .../1.10.13/security/security-model.html           |     1 +
 .../1.10.14/security/security-model.html           |     1 +
 .../1.10.15/security/security-model.html           |     1 +
 .../1.10.2/security/security-model.html            |     1 +
 .../1.10.3/security/security-model.html            |     1 +
 .../1.10.4/security/security-model.html            |     1 +
 .../1.10.5/security/security-model.html            |     1 +
 .../1.10.6/security/security-model.html            |     1 +
 .../1.10.7/security/security-model.html            |     1 +
 .../1.10.8/security/security-model.html            |     1 +
 .../1.10.9/security/security-model.html            |     1 +
 .../2.0.0/security/security-model.html             |     1 +
 .../2.0.1/security/security-model.html             |     1 +
 .../2.0.2/security/security-model.html             |     1 +
 .../2.1.0/security/security-model.html             |     1 +
 .../2.1.1/security/security-model.html             |     1 +
 .../2.1.2/security/security-model.html             |     1 +
 .../2.1.3/security/security-model.html             |     1 +
 .../2.1.4/security/security-model.html             |     1 +
 .../2.2.0/security/security-model.html             |     1 +
 .../2.2.1/security/security-model.html             |     1 +
 .../2.2.2/security/security-model.html             |     1 +
 .../2.2.3/security/security-model.html             |     1 +
 .../2.2.4/security/security-model.html             |     1 +
 .../2.2.5/security/security-model.html             |     1 +
 .../2.3.0/security/security-model.html             |     1 +
 .../2.3.1/security/security-model.html             |     1 +
 .../2.3.2/security/security-model.html             |     1 +
 .../2.3.3/security/security-model.html             |     1 +
 .../2.3.4/security/security-model.html             |     1 +
 .../2.4.0/security/security-model.html             |     1 +
 .../2.4.1/security/security-model.html             |     1 +
 .../2.4.2/security/security-model.html             |     1 +
 .../2.4.3/security/security-model.html             |     1 +
 .../2.5.0/security/security-model.html             |     1 +
 .../2.5.1/security/security-model.html             |     1 +
 .../2.5.2/security/security-model.html             |     1 +
 .../2.5.3/security/security-model.html             |     1 +
 .../2.6.0/security/security-model.html             |     1 +
 .../2.6.1/security/security-model.html             |     1 +
 .../2.6.2/security/security-model.html             |     1 +
 .../2.6.3/security/security-model.html             |     1 +
 docs-archive/apache-airflow/2.7.0/.buildinfo       |     4 +
 .../2.7.0/_api/airflow/decorators/base/index.html} |   940 +-
 .../airflow/decorators/branch_python/index.html}   |   606 +-
 .../airflow/decorators/external_python}/index.html |   375 +-
 .../2.7.0/_api/airflow/decorators/index.html}      |   761 +-
 .../_api/airflow/decorators/python/index.html}     |   603 +-
 .../decorators/python_virtualenv}/index.html       |   375 +-
 .../_api/airflow/decorators/sensor/index.html}     |   673 +-
 .../airflow/decorators/setup_teardown/index.html}  |   679 +-
 .../airflow/decorators/short_circuit}/index.html   |   375 +-
 .../_api/airflow/decorators/task_group/index.html} |   653 +-
 .../example_dags/example_bash_operator/index.html} |   662 +-
 .../example_branch_datetime_operator/index.html}   |   743 +-
 .../index.html}                                    |   654 +-
 .../example_dags/example_branch_labels/index.html} |   654 +-
 .../example_branch_operator/index.html}            |   654 +-
 .../example_branch_operator_decorator/index.html}  |   654 +-
 .../index.html}                                    |   687 +-
 .../example_dags/example_complex/index.html}       |   654 +-
 .../example_dags/example_datasets/index.html}      |   674 +-
 .../example_dynamic_task_mapping/index.html}       |   661 +-
 .../index.html}                                    |   739 +-
 .../example_external_task_marker_dag/index.html}   |   683 +-
 .../example_kubernetes_executor/index.html}        |   670 +-
 .../example_dags/example_latest_only/index.html}   |   654 +-
 .../example_latest_only_with_trigger/index.html}   |   654 +-
 .../example_local_kubernetes_executor/index.html}  |   686 +-
 .../example_nested_branch_dag/index.html}          |   663 +-
 .../example_params_trigger_ui/index.html}          |   662 +-
 .../example_params_ui_tutorial/index.html}         |   663 +-
 .../index.html}                                    |   699 +-
 .../example_python_operator/index.html}            |   717 +-
 .../example_sensor_decorator/index.html}           |   684 +-
 .../example_dags/example_sensors/index.html}       |   692 +-
 .../example_setup_teardown/index.html}             |   654 +-
 .../example_setup_teardown_taskflow/index.html}    |   661 +-
 .../example_short_circuit_decorator/index.html}    |   684 +-
 .../example_short_circuit_operator/index.html}     |   654 +-
 .../example_dags/example_skip_dag/index.html}      |   713 +-
 .../example_subdag_operator/index.html}            |   662 +-
 .../example_dags/example_task_group/index.html}    |   654 +-
 .../example_task_group_decorator/index.html}       |   821 +-
 .../example_time_delta_sensor_async/index.html}    |   655 +-
 .../example_trigger_controller_dag/index.html}     |   656 +-
 .../example_trigger_target_dag/index.html}         |   686 +-
 .../airflow/example_dags/example_xcom/index.html}  |   804 +-
 .../example_dags/example_xcomargs/index.html}      |   706 +-
 .../2.7.0/_api/airflow/example_dags/index.html}    |   681 +-
 .../airflow/example_dags/libs/helper/index.html}   |   600 +-
 .../_api/airflow/example_dags/libs}/index.html     |   372 +-
 .../plugins/event_listener/index.html}             |   670 +-
 .../_api/airflow/example_dags/plugins}/index.html  |   378 +-
 .../plugins/listener_plugin/index.html}            |   628 +-
 .../example_dags/plugins/workday/index.html}       |   719 +-
 .../_api/airflow/example_dags/subdags}/index.html  |   372 +-
 .../example_dags/subdags/subdag/index.html}        |   605 +-
 .../_api/airflow/example_dags/tutorial/index.html} |   656 +-
 .../airflow/example_dags/tutorial_dag/index.html}  |   662 +-
 .../example_dags/tutorial_taskflow_api/index.html} |   666 +-
 .../tutorial_taskflow_api_virtualenv/index.html}   |   686 +-
 .../2.7.0/_api/airflow/exceptions/index.html       |  1781 +++
 .../2.7.0/_api/airflow/hooks/base/index.html}      |   795 +-
 .../2.7.0/_api/airflow/hooks/dbapi}/index.html     |   356 +-
 .../_api/airflow/hooks/filesystem/index.html}      |   612 +-
 .../2.7.0/_api/airflow/hooks}/index.html           |   356 +-
 .../_api/airflow/hooks/subprocess/index.html}      |   641 +-
 .../_api/airflow/models/baseoperator/index.html    |  2250 +++
 .../_api/airflow/models/connection/index.html}     |   901 +-
 .../2.7.0/_api/airflow/models/dag/index.html       |  3254 ++++
 .../2.7.0/_api/airflow/models/dagbag/index.html}   |   752 +-
 .../2.7.0/_api/airflow/models/param/index.html}    |   984 +-
 .../_api/airflow/models/taskinstance/index.html    |  2441 +++
 .../airflow/models/taskinstancekey/index.html}     |   643 +-
 .../2.7.0/_api/airflow/models/variable/index.html} |   782 +-
 .../2.7.0/_api/airflow/models/xcom/index.html}     |   806 +-
 .../2.7.0/_api/airflow/operators/bash/index.html}  |   755 +-
 .../_api/airflow/operators/branch/index.html}      |   637 +-
 .../_api/airflow/operators/datetime/index.html}    |   655 +-
 .../2.7.0/_api/airflow/operators/email/index.html} |   660 +-
 .../2.7.0/_api/airflow/operators/empty/index.html} |   635 +-
 .../airflow/operators/generic_transfer/index.html} |   660 +-
 .../2.7.0/_api/airflow/operators/index.html}       |   582 +-
 .../_api/airflow/operators/latest_only/index.html} |   632 +-
 .../2.7.0/_api/airflow/operators/python/index.html |  1554 ++
 .../_api/airflow/operators/smooth/index.html}      |   633 +-
 .../_api/airflow/operators/subdag/index.html}      |   704 +-
 .../airflow/operators/trigger_dagrun/index.html}   |   752 +-
 .../_api/airflow/operators/weekday/index.html}     |   665 +-
 .../_api/airflow/secrets/base_secrets/index.html}  |   707 +-
 .../2.7.0/_api/airflow/secrets/cache/index.html}   |   668 +-
 .../secrets/environment_variables/index.html}      |   669 +-
 .../2.7.0/_api/airflow/secrets/index.html}         |   619 +-
 .../airflow/secrets/local_filesystem/index.html}   |   738 +-
 .../_api/airflow/secrets/metastore/index.html}     |   632 +-
 .../2.7.0/_api/airflow/sensors/base/index.html}    |   765 +-
 .../2.7.0/_api/airflow/sensors/bash/index.html}    |   636 +-
 .../_api/airflow/sensors/date_time/index.html}     |   674 +-
 .../_api/airflow/sensors/external_task/index.html} |   866 +-
 .../_api/airflow/sensors/filesystem/index.html}    |   638 +-
 .../2.7.0/_api/airflow/sensors/index.html}         |   573 +-
 .../2.7.0/_api/airflow/sensors/python/index.html}  |   635 +-
 .../_api/airflow/sensors/time_delta/index.html}    |   659 +-
 .../_api/airflow/sensors/time_sensor/index.html}   |   659 +-
 .../2.7.0/_api/airflow/sensors/weekday/index.html} |   653 +-
 .../_api/airflow/timetables/_cron/index.html}      |   305 +-
 .../2.7.0/_api/airflow/timetables/base/index.html} |   901 +-
 .../_api/airflow/timetables/events/index.html}     |   670 +-
 .../2.7.0/_api/airflow/timetables}/index.html      |   352 +-
 .../_api/airflow/timetables/interval/index.html}   |   745 +-
 .../_api/airflow/timetables/simple/index.html}     |   762 +-
 .../_api/airflow/timetables/trigger/index.html}    |   647 +-
 .../2.7.0/_api/airflow/triggers/base/index.html}   |   684 +-
 .../airflow/triggers/external_task/index.html}     |   687 +-
 .../2.7.0/_api/airflow/triggers/file/index.html}   |   604 +-
 .../2.7.0/_api/airflow/triggers}/index.html        |   352 +-
 .../_api/airflow/triggers/temporal/index.html}     |   624 +-
 .../_api/airflow/triggers/testing/index.html}      |   659 +-
 docs-archive/apache-airflow/2.7.0/_api/index.html  |     1 +
 .../apache-airflow/2.7.0/_images/add-dag-tags.png  |   Bin 0 -> 68537 bytes
 .../apache-airflow/2.7.0/_images/add-role.png      |   Bin 0 -> 30509 bytes
 .../apache-airflow/2.7.0/_images/airflow_erd.svg   |  1628 ++
 .../apache-airflow/2.7.0/_images/apache.jpg        |   Bin 0 -> 43364 bytes
 .../2.7.0/_images/arch-diag-basic.png              |   Bin 0 -> 16357 bytes
 .../2.7.0/_images/arch-diag-kubernetes.png         |   Bin 0 -> 21804 bytes
 .../2.7.0/_images/arch-diag-kubernetes2.png        |   Bin 0 -> 86384 bytes
 .../2.7.0/_images/arch-diag-logging.png            |   Bin 0 -> 25843 bytes
 .../apache-airflow/2.7.0/_images/basic-dag.png     |   Bin 0 -> 5393 bytes
 .../apache-airflow/2.7.0/_images/branch_note.png   |   Bin 0 -> 31771 bytes
 .../2.7.0/_images/branch_with_trigger.png          |   Bin 0 -> 34081 bytes
 .../2.7.0/_images/branch_without_trigger.png       |   Bin 0 -> 39815 bytes
 .../apache-airflow/2.7.0/_images/calendar.png      |   Bin 0 -> 58726 bytes
 .../2.7.0/_images/cli_completion.gif               |   Bin 0 -> 775263 bytes
 docs-archive/apache-airflow/2.7.0/_images/code.png |   Bin 0 -> 506092 bytes
 .../2.7.0/_images/connection_create.png            |   Bin 0 -> 52889 bytes
 .../2.7.0/_images/connection_edit.png              |   Bin 0 -> 31186 bytes
 .../apache-airflow/2.7.0/_images/dag_doc.png       |   Bin 0 -> 40094 bytes
 .../2.7.0/_images/dag_file_processing_diagram.png  |   Bin 0 -> 263825 bytes
 .../2.7.0/_images/dag_serialization.png            |   Bin 0 -> 99917 bytes
 .../apache-airflow/2.7.0/_images/dags-page-new.png |   Bin 0 -> 483599 bytes
 .../apache-airflow/2.7.0/_images/dags-page-old.png |   Bin 0 -> 493009 bytes
 docs-archive/apache-airflow/2.7.0/_images/dags.png |   Bin 0 -> 211122 bytes
 .../2.7.0/_images/dataset-scheduled-dags.png       |   Bin 0 -> 77225 bytes
 .../apache-airflow/2.7.0/_images/datasets.png      |   Bin 0 -> 341201 bytes
 .../default_instance_name_configuration.png        |   Bin 0 -> 154888 bytes
 .../2.7.0/_images/demo_graph_view.png              |   Bin 0 -> 38016 bytes
 .../2.7.0/_images/demo_grid_view.png               |   Bin 0 -> 65574 bytes
 .../apache-airflow/2.7.0/_images/duration.png      |   Bin 0 -> 150876 bytes
 .../2.7.0/_images/edge_label_example.png           |   Bin 0 -> 24592 bytes
 .../2.7.0/_images/email_connection.png             |   Bin 0 -> 59515 bytes
 .../example_instance_name_configuration.png        |   Bin 0 -> 154915 bytes
 .../2.7.0/_images/example_passing_conf.png         |   Bin 0 -> 41080 bytes
 .../apache-airflow/2.7.0/_images/gantt.png         |   Bin 0 -> 352148 bytes
 .../2.7.0/_images/graph-view-new.png               |   Bin 0 -> 56973 bytes
 .../2.7.0/_images/graph-view-old.png               |   Bin 0 -> 54884 bytes
 .../apache-airflow/2.7.0/_images/graph.png         |   Bin 0 -> 429818 bytes
 ...iz-5817c4b4cb6cd3ea7d604aa85ab3420b64a24446.svg |   200 +
 ...iz-66e404e292d46e7c601f518726fab5fd4133292f.svg |   142 +
 docs-archive/apache-airflow/2.7.0/_images/grid.png |   Bin 0 -> 249561 bytes
 .../2.7.0/_images/grid_instance_details.png        |   Bin 0 -> 178129 bytes
 .../2.7.0/_images/grid_mapped_task.png             |   Bin 0 -> 135753 bytes
 .../2.7.0/_images/grid_run_details.png             |   Bin 0 -> 202106 bytes
 .../2.7.0/_images/grid_task_group.png              |   Bin 0 -> 56287 bytes
 .../2.7.0/_images/howto-owner-links.gif            |   Bin 0 -> 829619 bytes
 .../2.7.0/_images/k8s-failed-pod.png               |   Bin 0 -> 18937 bytes
 .../2.7.0/_images/k8s-happy-path.png               |   Bin 0 -> 17257 bytes
 .../apache-airflow/2.7.0/_images/landing_times.png |   Bin 0 -> 84125 bytes
 .../2.7.0/_images/latest_only_with_trigger.png     |   Bin 0 -> 42887 bytes
 .../2.7.0/_images/mapping-simple-graph.png         |   Bin 0 -> 40118 bytes
 .../2.7.0/_images/mapping-simple-grid.png          |   Bin 0 -> 179670 bytes
 .../apache-airflow/2.7.0/_images/new-role.png      |   Bin 0 -> 14115 bytes
 .../2.7.0/_images/operator_extra_link.png          |   Bin 0 -> 90359 bytes
 .../2.7.0/_images/run_task_on_celery_executor.png  |   Bin 0 -> 55939 bytes
 .../2.7.0/_images/setup-teardown-complex.png       |   Bin 0 -> 114476 bytes
 .../2.7.0/_images/setup-teardown-group.png         |   Bin 0 -> 48789 bytes
 .../2.7.0/_images/setup-teardown-nesting.png       |   Bin 0 -> 83934 bytes
 .../2.7.0/_images/setup-teardown-parallel.png      |   Bin 0 -> 43571 bytes
 .../2.7.0/_images/setup-teardown-scope.png         |   Bin 0 -> 62951 bytes
 .../2.7.0/_images/setup-teardown-setup-group.png   |   Bin 0 -> 76759 bytes
 .../2.7.0/_images/setup-teardown-simple.png        |   Bin 0 -> 29606 bytes
 .../apache-airflow/2.7.0/_images/subdag_after.png  |   Bin 0 -> 30245 bytes
 .../apache-airflow/2.7.0/_images/subdag_before.png |   Bin 0 -> 70382 bytes
 .../apache-airflow/2.7.0/_images/subdag_zoom.png   |   Bin 0 -> 145017 bytes
 .../apache-airflow/2.7.0/_images/task_doc.png      |   Bin 0 -> 245714 bytes
 .../apache-airflow/2.7.0/_images/task_group.gif    |   Bin 0 -> 137189 bytes
 .../2.7.0/_images/task_lifecycle_diagram.png       |   Bin 0 -> 58659 bytes
 .../2.7.0/_images/task_manual_vs_scheduled.png     |   Bin 0 -> 5686 bytes
 .../2.7.0/_images/template_field_renderer_path.png |   Bin 0 -> 64442 bytes
 .../apache-airflow/2.7.0/_images/tree-view-new.png |   Bin 0 -> 36934 bytes
 .../apache-airflow/2.7.0/_images/tree-view-old.png |   Bin 0 -> 21601 bytes
 .../2.7.0/_images/trigger-dag-tutorial-form.png    |   Bin 0 -> 219254 bytes
 .../2.7.0/_images/tutorial-pipeline-1.png          |   Bin 0 -> 566225 bytes
 .../2.7.0/_images/tutorial-pipeline-2.png          |   Bin 0 -> 345529 bytes
 .../2.7.0/_images/ui-alert-message.png             |   Bin 0 -> 7909 bytes
 .../2.7.0/_images/ui-timezone-chooser.png          |   Bin 0 -> 16644 bytes
 .../2.7.0/_images/usage_cli_export.png             |   Bin 0 -> 397830 bytes
 .../2.7.0/_images/usage_cli_imgcat.png             |   Bin 0 -> 475224 bytes
 .../2.7.0/_images/variable_hidden.png              |   Bin 0 -> 55331 bytes
 .../apache-airflow/2.7.0/_images/watcher.png       |   Bin 0 -> 41592 bytes
 .../2.7.0/_modules/airflow/decorators.html}        |   335 +-
 .../2.7.0/_modules/airflow/decorators/base.html    |  1496 ++
 .../airflow/decorators/branch_python.html}         |   315 +-
 .../2.7.0/_modules/airflow/decorators/python.html} |   338 +-
 .../2.7.0/_modules/airflow/decorators/sensor.html} |   335 +-
 .../airflow/decorators/setup_teardown.html}        |   343 +-
 .../_modules/airflow/decorators/task_group.html}   |   471 +-
 .../example_dags/example_bash_operator.html}       |   336 +-
 .../example_branch_datetime_operator.html}         |   364 +-
 .../example_branch_day_of_week_operator.html}      |   320 +-
 .../example_dags/example_branch_labels.html}       |   305 +-
 .../example_dags/example_branch_operator.html}     |   325 +-
 .../example_branch_operator_decorator.html}        |   318 +-
 .../example_branch_python_dop_operator_3.html}     |   320 +-
 .../airflow/example_dags/example_complex.html}     |   472 +-
 .../airflow/example_dags/example_datasets.html}    |   389 +-
 .../example_dynamic_task_mapping.html}             |   298 +-
 ...c_task_mapping_with_no_taskflow_operators.html} |   322 +-
 .../example_external_task_marker_dag.html}         |   357 +-
 .../example_dags/example_kubernetes_executor.html} |   498 +-
 .../airflow/example_dags/example_latest_only.html} |   297 +-
 .../example_latest_only_with_trigger.html}         |   308 +-
 .../example_local_kubernetes_executor.html}        |   331 +-
 .../example_dags/example_nested_branch_dag.html}   |   316 +-
 .../example_dags/example_params_trigger_ui.html}   |   364 +-
 .../example_dags/example_params_ui_tutorial.html}  |   760 +-
 .../example_passing_params_via_test_command.html}  |   346 +-
 .../example_dags/example_python_operator.html}     |   686 +-
 .../example_dags/example_sensor_decorator.html}    |   327 +-
 .../airflow/example_dags/example_sensors.html}     |   379 +-
 .../example_dags/example_setup_teardown.html}      |   308 +-
 .../example_setup_teardown_taskflow.html}          |   365 +-
 .../example_short_circuit_decorator.html}          |   320 +-
 .../example_short_circuit_operator.html}           |   321 +-
 .../airflow/example_dags/example_skip_dag.html}    |   326 +-
 .../example_dags/example_subdag_operator.html}     |   322 +-
 .../airflow/example_dags/example_task_group.html}  |   324 +-
 .../example_task_group_decorator.html}             |   339 +-
 .../example_time_delta_sensor_async.html}          |   301 +-
 .../example_trigger_controller_dag.html}           |   301 +-
 .../example_dags/example_trigger_target_dag.html}  |   315 +-
 .../airflow/example_dags/example_xcom.html}        |   353 +-
 .../airflow/example_dags/example_xcomargs.html}    |   325 +-
 .../airflow/example_dags/libs/helper.html}         |   282 +-
 .../example_dags/plugins/event_listener.html}      |   408 +-
 .../example_dags/plugins/listener_plugin.html}     |   286 +-
 .../airflow/example_dags/plugins/workday.html}     |   419 +-
 .../airflow/example_dags/subdags/subdag.html}      |   315 +-
 .../_modules/airflow/example_dags/tutorial.html}   |   385 +-
 .../airflow/example_dags/tutorial_dag.html}        |   395 +-
 .../example_dags/tutorial_taskflow_api.html}       |   366 +-
 .../tutorial_taskflow_api_virtualenv.html}         |   347 +-
 .../2.7.0/_modules/airflow/exceptions.html}        |   876 +-
 .../2.7.0/_modules/airflow/hooks/base.html}        |   430 +-
 .../2.7.0/_modules/airflow/hooks/filesystem.html}  |   311 +-
 .../2.7.0/_modules/airflow/hooks/subprocess.html}  |   366 +-
 .../2.7.0/_modules/airflow/macros.html}            |   349 +-
 .../_modules/airflow/models/baseoperator.html      |  2762 ++++
 .../2.7.0/_modules/airflow/models/connection.html  |  1345 ++
 .../2.7.0/_modules/airflow/models/dag.html         |  4780 ++++++
 .../2.7.0/_modules/airflow/models/dagbag.html      |  1547 ++
 .../2.7.0/_modules/airflow/models/param.html}      |   799 +-
 .../_modules/airflow/models/taskinstance.html      |  3925 +++++
 .../_modules/airflow/models/taskinstancekey.html}  |   314 +-
 .../2.7.0/_modules/airflow/models/variable.html}   |   906 +-
 .../2.7.0/_modules/airflow/models/xcom.html        |  1726 ++
 .../2.7.0/_modules/airflow/operators/bash.html}    |   805 +-
 .../2.7.0/_modules/airflow/operators/branch.html}  |   316 +-
 .../_modules/airflow/operators/datetime.html}      |   376 +-
 .../2.7.0/_modules/airflow/operators/email.html}   |   404 +-
 .../2.7.0/_modules/airflow/operators/empty.html}   |   295 +-
 .../airflow/operators/generic_transfer.html}       |   366 +-
 .../_modules/airflow/operators/latest_only.html}   |   336 +-
 .../2.7.0/_modules/airflow/operators/python.html   |  1679 ++
 .../2.7.0/_modules/airflow/operators/smooth.html}  |   294 +-
 .../2.7.0/_modules/airflow/operators/subdag.html}  |   684 +-
 .../airflow/operators/trigger_dagrun.html}         |   872 +-
 .../2.7.0/_modules/airflow/operators/weekday.html} |   384 +-
 .../2.7.0/_modules/airflow/policies.html}          |   465 +-
 .../2.7.0/_modules/airflow/secrets.html}           |   296 +-
 .../_modules/airflow/secrets/base_secrets.html}    |   415 +-
 .../2.7.0/_modules/airflow/secrets/cache.html}     |   387 +-
 .../airflow/secrets/environment_variables.html}    |   322 +-
 .../airflow/secrets/local_filesystem.html}         |   595 +-
 .../2.7.0/_modules/airflow/secrets/metastore.html} |   335 +-
 .../2.7.0/_modules/airflow/sensors/base.html}      |   983 +-
 .../2.7.0/_modules/airflow/sensors/bash.html}      |   371 +-
 .../2.7.0/_modules/airflow/sensors/date_time.html} |   356 +-
 .../_modules/airflow/sensors/external_task.html    |  1396 ++
 .../_modules/airflow/sensors/filesystem.html}      |   335 +-
 .../2.7.0/_modules/airflow/sensors/python.html}    |   337 +-
 .../_modules/airflow/sensors/time_delta.html}      |   323 +-
 .../_modules/airflow/sensors/time_sensor.html}     |   332 +-
 .../2.7.0/_modules/airflow/sensors/weekday.html}   |   376 +-
 .../2.7.0/_modules/airflow/timetables/_cron.html}  |   398 +-
 .../2.7.0/_modules/airflow/timetables/base.html}   |   491 +-
 .../2.7.0/_modules/airflow/timetables/events.html} |   377 +-
 .../_modules/airflow/timetables/interval.html}     |   689 +-
 .../2.7.0/_modules/airflow/timetables/simple.html} |   450 +-
 .../_modules/airflow/timetables/trigger.html}      |   360 +-
 .../2.7.0/_modules/airflow/triggers/base.html}     |   374 +-
 .../_modules/airflow/triggers/external_task.html}  |   466 +-
 .../2.7.0/_modules/airflow/triggers/file.html}     |   333 +-
 .../2.7.0/_modules/airflow/triggers/temporal.html} |   348 +-
 .../2.7.0/_modules/airflow/triggers/testing.html}  |   313 +-
 .../2.7.0/_modules/index.html}                     |   364 +-
 .../_api/airflow/decorators/base/index.rst.txt     |   222 +
 .../airflow/decorators/branch_python/index.rst.txt |    34 +
 .../decorators/external_python/index.rst.txt       |     6 +
 .../_sources/_api/airflow/decorators/index.rst.txt |   125 +
 .../_api/airflow/decorators/python/index.rst.txt   |    30 +
 .../decorators/python_virtualenv/index.rst.txt     |     6 +
 .../_api/airflow/decorators/sensor/index.rst.txt   |    75 +
 .../decorators/setup_teardown/index.rst.txt        |    60 +
 .../airflow/decorators/short_circuit/index.rst.txt |     6 +
 .../airflow/decorators/task_group/index.rst.txt    |    63 +
 .../example_bash_operator/index.rst.txt            |    22 +
 .../example_branch_datetime_operator/index.rst.txt |    63 +
 .../index.rst.txt                                  |    18 +
 .../example_branch_labels/index.rst.txt            |    18 +
 .../example_branch_operator/index.rst.txt          |    18 +
 .../index.rst.txt                                  |    18 +
 .../index.rst.txt                                  |    45 +
 .../example_dags/example_complex/index.rst.txt     |    18 +
 .../example_dags/example_datasets/index.rst.txt    |    41 +
 .../example_dynamic_task_mapping/index.rst.txt     |    27 +
 .../index.rst.txt                                  |    76 +
 .../example_external_task_marker_dag/index.rst.txt |    44 +
 .../example_kubernetes_executor/index.rst.txt      |    26 +
 .../example_dags/example_latest_only/index.rst.txt |    18 +
 .../example_latest_only_with_trigger/index.rst.txt |    18 +
 .../index.rst.txt                                  |    34 +
 .../example_nested_branch_dag/index.rst.txt        |    29 +
 .../example_params_trigger_ui/index.rst.txt        |    29 +
 .../example_params_ui_tutorial/index.rst.txt       |    30 +
 .../index.rst.txt                                  |    51 +
 .../example_python_operator/index.rst.txt          |    56 +
 .../example_sensor_decorator/index.rst.txt         |    39 +
 .../example_dags/example_sensors/index.rst.txt     |    38 +
 .../example_setup_teardown/index.rst.txt           |    18 +
 .../example_setup_teardown_taskflow/index.rst.txt  |    27 +
 .../example_short_circuit_decorator/index.rst.txt  |    39 +
 .../example_short_circuit_operator/index.rst.txt   |    18 +
 .../example_dags/example_skip_dag/index.rst.txt    |    63 +
 .../example_subdag_operator/index.rst.txt          |    23 +
 .../example_dags/example_task_group/index.rst.txt  |    18 +
 .../example_task_group_decorator/index.rst.txt     |    71 +
 .../example_time_delta_sensor_async/index.rst.txt  |    19 +
 .../example_trigger_controller_dag/index.rst.txt   |    20 +
 .../example_trigger_target_dag/index.rst.txt       |    45 +
 .../example_dags/example_xcom/index.rst.txt        |    68 +
 .../example_dags/example_xcomargs/index.rst.txt    |    52 +
 .../_api/airflow/example_dags/index.rst.txt        |    65 +
 .../airflow/example_dags/libs/helper/index.rst.txt |    22 +
 .../_api/airflow/example_dags/libs/index.rst.txt   |    15 +
 .../plugins/event_listener/index.rst.txt           |    63 +
 .../airflow/example_dags/plugins/index.rst.txt     |    17 +
 .../plugins/listener_plugin/index.rst.txt          |    36 +
 .../example_dags/plugins/workday/index.rst.txt     |    96 +
 .../airflow/example_dags/subdags/index.rst.txt     |    15 +
 .../example_dags/subdags/subdag/index.rst.txt      |    34 +
 .../airflow/example_dags/tutorial/index.rst.txt    |    20 +
 .../example_dags/tutorial_dag/index.rst.txt        |    28 +
 .../tutorial_taskflow_api/index.rst.txt            |    29 +
 .../tutorial_taskflow_api_virtualenv/index.rst.txt |    38 +
 .../_sources/_api/airflow/exceptions/index.rst.txt |   536 +
 .../_sources/_api/airflow/hooks/base/index.rst.txt |   188 +
 .../_api/airflow/hooks/dbapi/index.rst.txt         |    11 +
 .../_api/airflow/hooks/filesystem/index.rst.txt    |    47 +
 .../_sources/_api/airflow/hooks/index.rst.txt      |    23 +
 .../_api/airflow/hooks/subprocess/index.rst.txt    |    64 +
 .../_api/airflow/models/baseoperator/index.rst.txt |   915 ++
 .../_api/airflow/models/connection/index.rst.txt   |   216 +
 .../_sources/_api/airflow/models/dag/index.rst.txt |  1248 ++
 .../_api/airflow/models/dagbag/index.rst.txt       |   142 +
 .../_api/airflow/models/param/index.rst.txt        |   249 +
 .../_api/airflow/models/taskinstance/index.rst.txt |   831 +
 .../airflow/models/taskinstancekey/index.rst.txt   |    78 +
 .../_api/airflow/models/variable/index.rst.txt     |   166 +
 .../_api/airflow/models/xcom/index.rst.txt         |   169 +
 .../_api/airflow/operators/bash/index.rst.txt      |   167 +
 .../_api/airflow/operators/branch/index.rst.txt    |    61 +
 .../_api/airflow/operators/datetime/index.rst.txt  |    66 +
 .../_api/airflow/operators/email/index.rst.txt     |    69 +
 .../_api/airflow/operators/empty/index.rst.txt     |    49 +
 .../operators/generic_transfer/index.rst.txt       |    71 +
 .../_sources/_api/airflow/operators/index.rst.txt  |    31 +
 .../airflow/operators/latest_only/index.rst.txt    |    54 +
 .../_api/airflow/operators/python/index.rst.txt    |   400 +
 .../_api/airflow/operators/smooth/index.rst.txt    |    47 +
 .../_api/airflow/operators/subdag/index.rst.txt    |    98 +
 .../airflow/operators/trigger_dagrun/index.rst.txt |   124 +
 .../_api/airflow/operators/weekday/index.rst.txt   |    96 +
 .../airflow/secrets/base_secrets/index.rst.txt     |   103 +
 .../_api/airflow/secrets/cache/index.rst.txt       |    73 +
 .../secrets/environment_variables/index.rst.txt    |    78 +
 .../_sources/_api/airflow/secrets/index.rst.txt    |    57 +
 .../airflow/secrets/local_filesystem/index.rst.txt |   117 +
 .../_api/airflow/secrets/metastore/index.rst.txt   |    56 +
 .../_api/airflow/sensors/base/index.rst.txt        |   146 +
 .../_api/airflow/sensors/bash/index.rst.txt        |    59 +
 .../_api/airflow/sensors/date_time/index.rst.txt   |    90 +
 .../airflow/sensors/external_task/index.rst.txt    |   217 +
 .../_api/airflow/sensors/filesystem/index.rst.txt  |    59 +
 .../_sources/_api/airflow/sensors/index.rst.txt    |    28 +
 .../_api/airflow/sensors/python/index.rst.txt      |    57 +
 .../_api/airflow/sensors/time_delta/index.rst.txt  |    72 +
 .../_api/airflow/sensors/time_sensor/index.rst.txt |    70 +
 .../_api/airflow/sensors/weekday/index.rst.txt     |    84 +
 .../_api/airflow/timetables/_cron/index.rst.txt    |    41 +
 .../_api/airflow/timetables/base/index.rst.txt     |   255 +
 .../_api/airflow/timetables/events/index.rst.txt   |    99 +
 .../_sources/_api/airflow/timetables/index.rst.txt |    19 +
 .../_api/airflow/timetables/interval/index.rst.txt |   146 +
 .../_api/airflow/timetables/simple/index.rst.txt   |   160 +
 .../_api/airflow/timetables/trigger/index.rst.txt  |    82 +
 .../_api/airflow/triggers/base/index.rst.txt       |   105 +
 .../airflow/triggers/external_task/index.rst.txt   |    96 +
 .../_api/airflow/triggers/file/index.rst.txt       |    43 +
 .../_sources/_api/airflow/triggers/index.rst.txt   |    19 +
 .../_api/airflow/triggers/temporal/index.rst.txt   |    65 +
 .../_api/airflow/triggers/testing/index.rst.txt    |    90 +
 .../cluster-policies.rst.txt                       |   179 +
 .../dag-serialization.rst.txt                      |   118 +
 .../administration-and-deployment/index.rst.txt    |    36 +
 .../kubernetes.rst.txt                             |    62 +
 .../administration-and-deployment/lineage.rst.txt  |   113 +
 .../listeners.rst.txt                              |    60 +
 .../advanced-logging-configuration.rst.txt         |    91 +
 .../logging-monitoring/callbacks.rst.txt           |    98 +
 .../logging-monitoring/check-health.rst.txt        |   158 +
 .../logging-monitoring/errors.rst.txt              |   105 +
 .../logging-monitoring/index.rst.txt               |    40 +
 .../logging-architecture.rst.txt                   |    47 +
 .../logging-monitoring/logging-tasks.rst.txt       |   164 +
 .../logging-monitoring/metrics.rst.txt             |   243 +
 .../tracking-user-activity.rst.txt                 |    39 +
 .../modules_management.rst.txt                     |   419 +
 .../administration-and-deployment/pools.rst.txt    |    90 +
 .../priority-weight.rst.txt                        |    61 +
 .../production-deployment.rst.txt                  |   230 +
 .../scheduler.rst.txt                              |   396 +
 .../authoring-and-scheduling/connections.rst.txt   |    51 +
 .../dagfile-processing.rst.txt                     |    47 +
 .../authoring-and-scheduling/datasets.rst.txt      |   199 +
 .../authoring-and-scheduling/deferring.rst.txt     |   232 +
 .../dynamic-task-mapping.rst.txt                   |   538 +
 .../authoring-and-scheduling/index.rst.txt         |    44 +
 .../authoring-and-scheduling/plugins.rst.txt       |   340 +
 .../authoring-and-scheduling/serializers.rst.txt   |   128 +
 .../authoring-and-scheduling/timetable.rst.txt     |   299 +
 .../authoring-and-scheduling/timezone.rst.txt      |   189 +
 .../2.7.0/_sources/best-practices.rst.txt          |   991 ++
 .../_sources/cli-and-env-variables-ref.rst.txt     |   111 +
 .../2.7.0/_sources/configurations-ref.rst.txt      |    48 +
 .../2.7.0/_sources/core-concepts/dag-run.rst.txt   |   297 +
 .../2.7.0/_sources/core-concepts/dags.rst.txt      |   897 ++
 .../_sources/core-concepts/executor/celery.rst.txt |   229 +
 .../executor/celery_kubernetes.rst.txt             |    56 +
 .../_sources/core-concepts/executor/dask.rst.txt   |    56 +
 .../_sources/core-concepts/executor/debug.rst.txt  |   104 +
 .../_sources/core-concepts/executor/index.rst.txt  |    80 +
 .../core-concepts/executor/kubernetes.rst.txt      |   290 +
 .../_sources/core-concepts/executor/local.rst.txt  |    57 +
 .../executor/local_kubernetes.rst.txt              |    37 +
 .../core-concepts/executor/sequential.rst.txt      |    26 +
 .../2.7.0/_sources/core-concepts/index.rst.txt     |    51 +
 .../2.7.0/_sources/core-concepts/operators.rst.txt |   235 +
 .../2.7.0/_sources/core-concepts/overview.rst.txt  |    98 +
 .../2.7.0/_sources/core-concepts/params.rst.txt    |   226 +
 .../2.7.0/_sources/core-concepts/sensors.rst.txt   |    32 +
 .../2.7.0/_sources/core-concepts/taskflow.rst.txt  |   201 +
 .../2.7.0/_sources/core-concepts/tasks.rst.txt     |   266 +
 .../2.7.0/_sources/core-concepts/variables.rst.txt |    48 +
 .../2.7.0/_sources/core-concepts/xcoms.rst.txt     |    88 +
 .../2.7.0/_sources/database-erd-ref.rst.txt        |    38 +
 .../2.7.0/_sources/deprecated-rest-api-ref.rst.txt |   127 +
 .../2.7.0/_sources/extra-packages-ref.rst.txt      |   404 +
 .../apache-airflow/2.7.0/_sources/faq.rst.txt      |   513 +
 .../2.7.0/_sources/howto/add-dag-tags.rst.txt      |    44 +
 .../2.7.0/_sources/howto/add-owner-links.rst.txt   |    50 +
 .../2.7.0/_sources/howto/connection.rst.txt        |   460 +
 .../_sources/howto/create-custom-decorator.rst.txt |   124 +
 .../2.7.0/_sources/howto/custom-operator.rst.txt   |   353 +
 .../_sources/howto/custom-view-plugin.rst.txt      |    76 +
 .../2.7.0/_sources/howto/customize-ui.rst.txt      |   174 +
 .../2.7.0/_sources/howto/define-extra-link.rst.txt |   167 +
 .../_sources/howto/docker-compose/index.rst.txt    |   406 +
 .../_sources/howto/dynamic-dag-generation.rst.txt  |   220 +
 .../2.7.0/_sources/howto/email-config.rst.txt      |   194 +
 .../_sources/howto/export-more-env-vars.rst.txt    |    52 +
 .../2.7.0/_sources/howto/index.rst.txt             |    55 +
 .../2.7.0/_sources/howto/listener-plugin.rst.txt   |    95 +
 .../2.7.0/_sources/howto/notifications.rst.txt     |    80 +
 .../2.7.0/_sources/howto/operator/bash.rst.txt     |   160 +
 .../2.7.0/_sources/howto/operator/datetime.rst.txt |    74 +
 .../howto/operator/external_task_sensor.rst.txt    |    88 +
 .../2.7.0/_sources/howto/operator/file.rst.txt     |    33 +
 .../2.7.0/_sources/howto/operator/index.rst.txt    |    38 +
 .../2.7.0/_sources/howto/operator/python.rst.txt   |   241 +
 .../2.7.0/_sources/howto/operator/time.rst.txt     |    78 +
 .../2.7.0/_sources/howto/operator/weekday.rst.txt  |    44 +
 .../2.7.0/_sources/howto/run-behind-proxy.rst.txt  |    92 +
 .../2.7.0/_sources/howto/run-with-systemd.rst.txt  |    40 +
 .../2.7.0/_sources/howto/set-config.rst.txt        |   192 +
 .../2.7.0/_sources/howto/set-up-database.rst.txt   |   387 +
 .../_sources/howto/setup-and-teardown.rst.txt      |   225 +
 .../2.7.0/_sources/howto/timetable.rst.txt         |   355 +
 .../howto/upgrading-from-1-10/index.rst.txt        |  1232 ++
 .../upgrading-from-1-10/upgrade-check.rst.txt      |   221 +
 .../2.7.0/_sources/howto/usage-cli.rst.txt         |   407 +
 .../2.7.0/_sources/howto/variable.rst.txt          |    76 +
 .../apache-airflow/2.7.0/_sources/index.rst.txt    |   178 +
 .../_sources/installation/dependencies.rst.txt     |    92 +
 .../2.7.0/_sources/installation/index.rst.txt      |   388 +
 .../installation/installing-from-pypi.rst.txt      |   373 +
 .../installation/installing-from-sources.rst.txt   |   155 +
 .../_sources/installation/prerequisites.rst.txt    |    65 +
 .../installation/setting-up-the-database.rst.txt   |    39 +
 .../installation/supported-versions.rst.txt        |    69 +
 .../2.7.0/_sources/installation/upgrading.rst.txt  |   279 +
 .../2.7.0/_sources/integration.rst.txt             |    38 +
 .../apache-airflow/2.7.0/_sources/license.rst.txt  |   201 +
 .../2.7.0/_sources/migrations-ref.rst.txt          |   328 +
 .../2.7.0/_sources/operators-and-hooks-ref.rst.txt |   128 +
 .../2.7.0/_sources/privacy_notice.rst.txt          |    68 +
 .../apache-airflow/2.7.0/_sources/project.rst.txt  |   114 +
 .../_sources/public-airflow-interface.rst.txt      |   434 +
 .../2.7.0/_sources/release-process.rst.txt         |    97 +
 .../2.7.0/_sources/release_notes.rst.txt           |    23 +
 .../2.7.0/_sources/security/access-control.rst.txt |   231 +
 .../2.7.0/_sources/security/api.rst.txt            |   167 +
 .../2.7.0/_sources/security/audit_logs.rst.txt     |    64 +
 .../2.7.0/_sources/security/flower.rst.txt         |    62 +
 .../2.7.0/_sources/security/index.rst.txt          |    36 +
 .../2.7.0/_sources/security/kerberos.rst.txt       |   165 +
 .../security/releasing_security_patches.rst.txt    |    49 +
 .../2.7.0/_sources/security/secrets/fernet.rst.txt |    63 +
 .../2.7.0/_sources/security/secrets/index.rst.txt  |    37 +
 .../security/secrets/mask-sensitive-values.rst.txt |    79 +
 .../security/secrets/secrets-backend/index.rst.txt |   121 +
 .../local-filesystem-secrets-backend.rst.txt       |   145 +
 .../2.7.0/_sources/security/security_model.rst.txt |   127 +
 .../2.7.0/_sources/security/webserver.rst.txt      |   313 +
 .../2.7.0/_sources/security/workload.rst.txt       |    52 +
 .../2.7.0/_sources/stable-rest-api-ref.rst.txt     |    23 +
 .../apache-airflow/2.7.0/_sources/start.rst.txt    |   137 +
 .../2.7.0/_sources/templates-ref.rst.txt           |   181 +
 .../2.7.0/_sources/tutorial/fundamentals.rst.txt   |   403 +
 .../2.7.0/_sources/tutorial/index.rst.txt          |    28 +
 .../2.7.0/_sources/tutorial/pipeline.rst.txt       |   332 +
 .../2.7.0/_sources/tutorial/taskflow.rst.txt       |   631 +
 .../apache-airflow/2.7.0/_sources/ui.rst.txt       |   187 +
 docs-archive/apache-airflow/2.7.0/_specs/v1.yaml   |  5282 +++++++
 .../2.7.0/_static/_gen/css/main-custom.min.css     |     1 +
 .../2.7.0/_static/_gen/css/main.min.css            |     7 +
 .../apache-airflow/2.7.0/_static/_gen/js/docs.js   |     1 +
 .../_sphinx_javascript_frameworks_compat.js        |   134 +
 .../apache-airflow/2.7.0/_static/basic.css         |   899 ++
 .../apache-airflow/2.7.0/_static/check-solid.svg   |     4 +
 .../apache-airflow/2.7.0/_static/clipboard.min.js  |     7 +
 .../apache-airflow/2.7.0/_static/copy-button.svg   |     5 +
 .../apache-airflow/2.7.0/_static/copybutton.css    |    94 +
 .../apache-airflow/2.7.0/_static/copybutton.js     |   248 +
 .../2.7.0/_static/copybutton_funcs.js              |    73 +
 .../apache-airflow/2.7.0/_static/doctools.js       |   156 +
 .../2.7.0/_static/documentation_options.js         |    14 +
 .../2.7.0/_static/exampleinclude.css               |    86 +
 docs-archive/apache-airflow/2.7.0/_static/file.png |   Bin 0 -> 286 bytes
 .../apache-airflow/2.7.0/_static/gh-jira-links.js  |    34 +
 .../apache-airflow/2.7.0/_static/graphviz.css      |    19 +
 .../apache-airflow/2.7.0/_static/jquery-3.6.0.js   | 10881 +++++++++++++
 .../apache-airflow/2.7.0/_static/jquery.js         |     2 +
 .../apache-airflow/2.7.0/_static/js/globaltoc.js   |    24 +
 .../apache-airflow/2.7.0/_static/language_data.js  |   199 +
 .../apache-airflow/2.7.0/_static/minus.png         |   Bin 0 -> 90 bytes
 .../apache-airflow/2.7.0/_static/pin_32.png        |   Bin 0 -> 1201 bytes
 docs-archive/apache-airflow/2.7.0/_static/plus.png |   Bin 0 -> 90 bytes
 .../2.7.0}/_static/pygments.css                    |     1 +
 docs-archive/apache-airflow/2.7.0/_static/redoc.js |   103 +
 .../apache-airflow/2.7.0/_static/searchtools.js    |   566 +
 .../2.7.0/_static/sphinx_highlight.js              |   144 +
 .../2.7.0/_static/underscore-1.13.1.js             |  2042 +++
 .../apache-airflow/2.7.0/_static/underscore.js     |     6 +
 .../cluster-policies.html}                         |   857 +-
 .../dag-serialization.html}                        |   396 +-
 .../administration-and-deployment}/index.html      |   385 +-
 .../administration-and-deployment/kubernetes.html} |   360 +-
 .../administration-and-deployment/lineage.html}    |   593 +-
 .../administration-and-deployment/listeners.html}  |   347 +-
 .../advanced-logging-configuration.html}           |   402 +-
 .../logging-monitoring/callbacks.html}             |   611 +-
 .../logging-monitoring/check-health.html}          |   642 +-
 .../logging-monitoring/errors.html}                |   665 +-
 .../logging-monitoring}/index.html                 |   353 +-
 .../logging-monitoring/logging-architecture.html}  |   361 +-
 .../logging-monitoring/logging-tasks.html}         |   654 +-
 .../logging-monitoring/metrics.html}               |   934 +-
 .../tracking-user-activity.html}                   |   359 +-
 .../modules_management.html}                       |   907 +-
 .../administration-and-deployment/pools.html}      |   376 +-
 .../priority-weight.html}                          |   353 +-
 .../production-deployment.html}                    |   700 +-
 .../administration-and-deployment/scheduler.html}  |   947 +-
 .../security/access-control.html                   |     1 +
 .../security/access-control/index.html             |     1 +
 .../security/api.html                              |     1 +
 .../security/audit_logs.html                       |     1 +
 .../security/flower.html                           |     1 +
 .../security/index.html                            |     1 +
 .../security/kerberos.html                         |     1 +
 .../security/secrets/fernet.html                   |     1 +
 .../security/secrets/index.html                    |     1 +
 .../security/secrets/mask-sensitive-values.html    |     1 +
 .../security/secrets/secrets-backends/index.html   |     1 +
 .../local-filesystem-secrets-backend.html          |     1 +
 .../security/webserver.html                        |     1 +
 .../security/workload.html                         |     1 +
 docs-archive/apache-airflow/2.7.0/airflow.sh       |    39 +
 .../authoring-and-scheduling/connections.html}     |   341 +-
 .../dagfile-processing.html}                       |   340 +-
 .../2.7.0/authoring-and-scheduling/datasets.html}  |   661 +-
 .../2.7.0/authoring-and-scheduling/deferring.html} |   695 +-
 .../dynamic-task-mapping.html                      |  1544 ++
 .../2.7.0/authoring-and-scheduling}/index.html     |   371 +-
 .../2.7.0/authoring-and-scheduling/plugins.html}   |   725 +-
 .../authoring-and-scheduling/serializers.html}     |   620 +-
 .../2.7.0/authoring-and-scheduling/timetable.html} |   869 +-
 .../2.7.0/authoring-and-scheduling/timezone.html}  |   677 +-
 .../apache-airflow/2.7.0/best-practices.html       |  1830 +++
 .../2.7.0/build.rst}                               |    20 +-
 docs-archive/apache-airflow/2.7.0/changelog.html   |     1 +
 .../2.7.0/cli-and-env-variables-ref.html           |  5945 +++++++
 docs-archive/apache-airflow/2.7.0/cli-ref.html     |     1 +
 docs-archive/apache-airflow/2.7.0/concepts.html    |     1 +
 .../2.7.0/concepts/cluster-policies.html           |     1 +
 .../apache-airflow/2.7.0/concepts/connections.html |     1 +
 .../2.7.0/concepts/dagfile-processing.html         |     1 +
 .../apache-airflow/2.7.0/concepts/dags.html        |     1 +
 .../apache-airflow/2.7.0/concepts/datasets.html    |     1 +
 .../apache-airflow/2.7.0/concepts/deferring.html   |     1 +
 .../2.7.0/concepts/dynamic-task-mapping.html       |     1 +
 .../apache-airflow/2.7.0/concepts/index.html       |     1 +
 .../apache-airflow/2.7.0/concepts/operators.html   |     1 +
 .../apache-airflow/2.7.0/concepts/overview.html    |     1 +
 .../apache-airflow/2.7.0/concepts/params.html      |     1 +
 .../apache-airflow/2.7.0/concepts/pools.html       |     1 +
 .../2.7.0/concepts/priority-weight.html            |     1 +
 .../apache-airflow/2.7.0/concepts/scheduler.html   |     1 +
 .../apache-airflow/2.7.0/concepts/sensors.html     |     1 +
 .../apache-airflow/2.7.0/concepts/taskflow.html    |     1 +
 .../apache-airflow/2.7.0/concepts/tasks.html       |     1 +
 .../apache-airflow/2.7.0/concepts/timetable.html   |     1 +
 .../apache-airflow/2.7.0/concepts/variables.html   |     1 +
 .../apache-airflow/2.7.0/concepts/xcoms.html       |     1 +
 .../apache-airflow/2.7.0/configurations-ref.html   |  8370 ++++++++++
 .../2.7.0/core-concepts/dag-run.html}              |   863 +-
 .../apache-airflow/2.7.0/core-concepts/dags.html   |  1895 +++
 .../2.7.0/core-concepts/executor/celery.html}      |   704 +-
 .../core-concepts/executor/celery_kubernetes.html} |   380 +-
 .../2.7.0/core-concepts/executor/dask.html}        |   372 +-
 .../2.7.0/core-concepts/executor/debug.html}       |   615 +-
 .../2.7.0/core-concepts/executor}/index.html       |   380 +-
 .../2.7.0/core-concepts/executor/kubernetes.html}  |  1071 +-
 .../2.7.0/core-concepts/executor/local.html}       |   378 +-
 .../core-concepts/executor/local_kubernetes.html}  |   364 +-
 .../2.7.0/core-concepts/executor/sequential.html}  |   356 +-
 .../2.7.0/core-concepts}/index.html                |   393 +-
 .../2.7.0/core-concepts/operators.html}            |   697 +-
 .../2.7.0/core-concepts/overview.html}             |   364 +-
 .../2.7.0/core-concepts/params.html}               |   691 +-
 .../2.7.0/core-concepts/sensors.html}              |   297 +-
 .../2.7.0/core-concepts/taskflow.html}             |   696 +-
 .../2.7.0/core-concepts/tasks.html}                |   755 +-
 .../2.7.0/core-concepts/variables.html}            |   342 +-
 .../2.7.0/core-concepts/xcoms.html}                |   366 +-
 docs-archive/apache-airflow/2.7.0/dag-run.html     |     1 +
 .../apache-airflow/2.7.0/dag-serialization.html    |     1 +
 .../2.7.0/database-erd-ref.html}                   |   225 +-
 .../2.7.0/deprecated-rest-api-ref.html}            |   361 +-
 .../apache-airflow/2.7.0/docker-compose.yaml       |   300 +
 docs-archive/apache-airflow/2.7.0/errors.html      |     1 +
 .../apache-airflow/2.7.0/executor/celery.html      |     1 +
 .../2.7.0/executor/celery_kubernetes.html          |     1 +
 .../apache-airflow/2.7.0/executor/dask.html        |     1 +
 .../apache-airflow/2.7.0/executor/debug.html       |     1 +
 .../apache-airflow/2.7.0/executor/index.html       |     1 +
 .../apache-airflow/2.7.0/executor/kubernetes.html  |     1 +
 .../apache-airflow/2.7.0/executor/local.html       |     1 +
 .../2.7.0/executor/local_kubernetes.html           |     1 +
 .../apache-airflow/2.7.0/executor/sequential.html  |     1 +
 .../2.7.0/extra-packages-ref.html}                 |  1139 +-
 .../2.7.0/faq.html}                                |   989 +-
 docs-archive/apache-airflow/2.7.0/genindex.html    |  4612 ++++++
 .../2.7.0/howto/add-dag-tags.html}                 |   362 +-
 .../apache-airflow/2.7.0/howto/add-new-role.html   |     1 +
 .../2.7.0/howto/add-owner-links.html}              |   366 +-
 .../apache-airflow/2.7.0/howto/check-health.html   |     1 +
 .../2.7.0/howto/connection.html}                   |   993 +-
 .../2.7.0/howto/connection/index.html              |     1 +
 .../2.7.0/howto/create-custom-decorator.html}      |   651 +-
 .../2.7.0/howto/custom-operator.html}              |   878 +-
 .../2.7.0/howto/custom-view-plugin.html}           |   650 +-
 .../howto/customize-dag-ui-page-instance-name.html |     1 +
 .../2.7.0/howto/customize-state-colors-ui.html     |     1 +
 .../2.7.0/howto/customize-ui.html}                 |   716 +-
 ...stomizing-dag-ui-header-and-airflow-page-titles |     1 +
 .../customize-ui.html#customizing-state-colours    |     1 +
 .../2.7.0/howto/define-extra-link.html}            |   740 +-
 .../2.7.0/howto/define_extra_link.html             |     1 +
 .../2.7.0/howto/docker-compose/index.html}         |   960 +-
 .../2.7.0/howto/dynamic-dag-generation.html}       |   721 +-
 .../2.7.0/howto/email-config.html}                 |   694 +-
 .../2.7.0/howto/export-more-env-vars.html}         |   371 +-
 .../2.7.0/howto/index.html}                        |   639 +-
 .../2.7.0/howto/initialize-database.html           |     1 +
 .../2.7.0/howto/listener-plugin.html}              |   642 +-
 .../2.7.0/howto/notifications.html}                |   602 +-
 .../2.7.0/howto/operator/bash.html}                |   718 +-
 .../2.7.0/howto/operator/datetime.html}            |   667 +-
 .../2.7.0/howto/operator/external.html             |     1 +
 .../howto/operator/external_task_sensor.html}      |   670 +-
 .../2.7.0/howto/operator/file.html}                |   394 +-
 .../2.7.0/howto/operator/index.html}               |   602 +-
 .../2.7.0/howto/operator/python.html}              |   923 +-
 .../2.7.0/howto/operator/time.html}                |   625 +-
 .../2.7.0/howto/operator/weekday.html}             |   693 +-
 .../2.7.0/howto/run-behind-proxy.html}             |   407 +-
 .../2.7.0/howto/run-with-systemd.html}             |   365 +-
 .../2.7.0/howto/secure-connections.html            |     1 +
 .../2.7.0/howto/set-config.html}                   |   668 +-
 .../2.7.0/howto/set-up-database.html}              |   877 +-
 .../2.7.0/howto/setup-and-teardown.html}           |   615 +-
 .../2.7.0/howto/timetable.html}                    |   980 +-
 .../2.7.0/howto/tracking-user-activity.html        |     1 +
 .../2.7.0/howto/upgrading-from-1-10/index.html     |  2336 +++
 .../howto/upgrading-from-1-10/upgrade-check.html}  |   637 +-
 .../2.7.0/howto/usage-cli.html}                    |   935 +-
 .../howto/use-alternative-secrets-backend.html     |     1 +
 .../2.7.0/howto/use-test-config.html               |     1 +
 .../2.7.0/howto/variable.html}                     |   393 +-
 .../apache-airflow/2.7.0/howto/write-logs.html     |     1 +
 .../2.7.0/http-routingtable.html}                  |   298 +-
 .../2.7.0}/index.html                              |   330 +-
 .../apache-airflow/2.7.0/installation.html         |     1 +
 .../2.7.0/installation/dependencies.html}          |   392 +-
 .../2.7.0/installation/index.html}                 |   790 +-
 .../2.7.0/installation/installing-from-pypi.html}  |   881 +-
 .../installation/installing-from-sources.html}     |   614 +-
 .../2.7.0/installation/prerequisites.html}         |   358 +-
 .../installation/setting-up-the-database.html}     |   340 +-
 .../2.7.0/installation/supported-versions.html}    |   420 +-
 .../2.7.0/installation/upgrade-check.html          |     1 +
 .../2.7.0/installation/upgrading.html}             |   791 +-
 .../2.7.0/integration.html}                        |   233 +-
 docs-archive/apache-airflow/2.7.0/kubernetes.html  |     1 +
 .../2.7.0/license.html}                            |   424 +-
 docs-archive/apache-airflow/2.7.0/lineage.html     |     1 +
 docs-archive/apache-airflow/2.7.0/listeners.html   |     1 +
 .../2.7.0/logging-monitoring/callbacks.html        |     1 +
 .../2.7.0/logging-monitoring/check-health.html     |     1 +
 .../2.7.0/logging-monitoring/errors.html           |     1 +
 .../2.7.0/logging-monitoring/index.html            |     1 +
 .../logging-monitoring/logging-architecture.html   |     1 +
 .../2.7.0/logging-monitoring/logging-tasks.html    |     1 +
 .../2.7.0/logging-monitoring/metrics.html          |     1 +
 .../logging-monitoring/tracking-user-activity.html |     1 +
 docs-archive/apache-airflow/2.7.0/macros-ref.html  |     1 +
 docs-archive/apache-airflow/2.7.0/metrics.html     |     1 +
 .../2.7.0/migrations-ref.html}                     |  1183 +-
 .../apache-airflow/2.7.0/modules_management.html   |     1 +
 docs-archive/apache-airflow/2.7.0/objects.inv      |   Bin 0 -> 24606 bytes
 .../2.7.0/operators-and-hooks-ref.html}            |   378 +-
 .../_static/redoc.js                               |     8 +
 docs-archive/apache-airflow/2.7.0/plugins.html     |     1 +
 .../2.7.0/privacy_notice.html}                     |   277 +-
 .../2.7.0/production-deployment.html               |     1 +
 .../2.7.0/project.html}                            |   333 +-
 .../2.7.0/public-airflow-interface.html}           |   975 +-
 .../2.7.0/py-modindex.html}                        |  1012 +-
 .../apache-airflow/2.7.0/python-api-ref.html       |     1 +
 .../2.7.0/release-process.html}                    |   302 +-
 .../apache-airflow/2.7.0/release_notes.html        | 15759 +++++++++++++++++++
 .../apache-airflow/2.7.0/rest-api-ref.html         |     1 +
 docs-archive/apache-airflow/2.7.0/scheduler.html   |     1 +
 .../2.7.0/search.html}                             |   238 +-
 docs-archive/apache-airflow/2.7.0/searchindex.js   |     1 +
 docs-archive/apache-airflow/2.7.0/security.html    |     1 +
 .../2.7.0/security/access-control.html}            |  1159 +-
 .../2.7.0/security/api.html}                       |   640 +-
 .../2.7.0/security/audit_logs.html}                |   352 +-
 .../2.7.0/security/flower.html}                    |   346 +-
 .../2.7.0/security/index.html}                     |   301 +-
 .../2.7.0/security/kerberos.html}                  |   638 +-
 .../security/releasing_security_patches.html}      |   348 +-
 .../2.7.0/security/secrets/fernet.html}            |   370 +-
 .../2.7.0/security/secrets/index.html}             |   308 +-
 .../security/secrets/mask-sensitive-values.html}   |   374 +-
 .../security/secrets/secrets-backend/index.html}   |   613 +-
 .../local-filesystem-secrets-backend.html}         |   651 +-
 .../security/secrets/secrets-backends/index.html   |     1 +
 .../local-filesystem-secrets-backend.html          |     1 +
 .../2.7.0/security/security-model.html             |     1 +
 .../2.7.0/security/security_model.html}            |   416 +-
 .../2.7.0/security/webserver.html}                 |   694 +-
 .../2.7.0/security/workload.html}                  |   347 +-
 .../apache-airflow/2.7.0/stable-rest-api-ref.html  |    34 +
 .../index.html => apache-airflow/2.7.0/start.html} |   337 +-
 .../apache-airflow/2.7.0/start/docker.html         |     1 +
 docs-archive/apache-airflow/2.7.0/start/index.html |     1 +
 docs-archive/apache-airflow/2.7.0/start/local.html |     1 +
 .../2.7.0/templates-ref.html}                      |   786 +-
 docs-archive/apache-airflow/2.7.0/timezone.html    |     1 +
 docs-archive/apache-airflow/2.7.0/tutorial.html    |     1 +
 .../2.7.0/tutorial/fundamentals.html}              |  1173 +-
 .../2.7.0/tutorial/index.html}                     |   275 +-
 .../2.7.0/tutorial/pipeline.html}                  |   701 +-
 .../apache-airflow/2.7.0/tutorial/taskflow.html    |  1826 +++
 .../2.7.0/tutorial_taskflow_api.html               |     1 +
 .../index.html => apache-airflow/2.7.0/ui.html}    |   376 +-
 .../apache-airflow/2.7.0/upgrade-check.html        |     1 +
 .../2.7.0/upgrading-from-1-10/index.html           |     1 +
 .../2.7.0/upgrading-from-1-10/upgrade-check.html   |     1 +
 .../apache-airflow/2.7.0/upgrading-to-2.html       |     1 +
 docs-archive/apache-airflow/2.7.0/usage-cli.html   |     1 +
 docs-archive/apache-airflow/stable.txt             |     2 +-
 .../docker-stack/_sources/build-arg-ref.rst.txt    |     6 +-
 docs-archive/docker-stack/_sources/build.rst.txt   |    18 +-
 .../docker-stack/_sources/changelog.rst.txt        |     8 +
 .../docker-stack/_sources/entrypoint.rst.txt       |    28 +-
 docs-archive/docker-stack/_sources/index.rst.txt   |    10 +-
 docs-archive/docker-stack/_static/pygments.css     |     1 +
 docs-archive/docker-stack/build-arg-ref.html       |    10 +-
 docs-archive/docker-stack/build.html               |    78 +-
 docs-archive/docker-stack/changelog.html           |    14 +
 docs-archive/docker-stack/entrypoint.html          |    28 +-
 docs-archive/docker-stack/genindex.html            |     4 +-
 docs-archive/docker-stack/index.html               |    16 +-
 docs-archive/docker-stack/recipes.html             |     6 +-
 docs-archive/docker-stack/searchindex.js           |     2 +-
 884 files changed, 232294 insertions(+), 86254 deletions(-)

diff --git a/docs-archive/apache-airflow/1.10.1/security/security-model.html b/docs-archive/apache-airflow/1.10.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.10/security/security-model.html b/docs-archive/apache-airflow/1.10.10/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.10/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.11/security/security-model.html b/docs-archive/apache-airflow/1.10.11/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.11/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.12/security/security-model.html b/docs-archive/apache-airflow/1.10.12/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.12/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.13/security/security-model.html b/docs-archive/apache-airflow/1.10.13/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.13/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.14/security/security-model.html b/docs-archive/apache-airflow/1.10.14/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.14/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.15/security/security-model.html b/docs-archive/apache-airflow/1.10.15/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.15/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.2/security/security-model.html b/docs-archive/apache-airflow/1.10.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.3/security/security-model.html b/docs-archive/apache-airflow/1.10.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.4/security/security-model.html b/docs-archive/apache-airflow/1.10.4/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.4/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.5/security/security-model.html b/docs-archive/apache-airflow/1.10.5/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.5/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.6/security/security-model.html b/docs-archive/apache-airflow/1.10.6/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.6/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.7/security/security-model.html b/docs-archive/apache-airflow/1.10.7/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.7/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.8/security/security-model.html b/docs-archive/apache-airflow/1.10.8/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.8/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/1.10.9/security/security-model.html b/docs-archive/apache-airflow/1.10.9/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/1.10.9/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.0.0/security/security-model.html b/docs-archive/apache-airflow/2.0.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.0.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.0.1/security/security-model.html b/docs-archive/apache-airflow/2.0.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.0.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.0.2/security/security-model.html b/docs-archive/apache-airflow/2.0.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.0.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.1.0/security/security-model.html b/docs-archive/apache-airflow/2.1.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.1.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.1.1/security/security-model.html b/docs-archive/apache-airflow/2.1.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.1.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.1.2/security/security-model.html b/docs-archive/apache-airflow/2.1.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.1.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.1.3/security/security-model.html b/docs-archive/apache-airflow/2.1.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.1.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.1.4/security/security-model.html b/docs-archive/apache-airflow/2.1.4/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.1.4/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.0/security/security-model.html b/docs-archive/apache-airflow/2.2.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.1/security/security-model.html b/docs-archive/apache-airflow/2.2.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.2/security/security-model.html b/docs-archive/apache-airflow/2.2.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.3/security/security-model.html b/docs-archive/apache-airflow/2.2.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.4/security/security-model.html b/docs-archive/apache-airflow/2.2.4/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.4/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.2.5/security/security-model.html b/docs-archive/apache-airflow/2.2.5/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.2.5/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.3.0/security/security-model.html b/docs-archive/apache-airflow/2.3.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.3.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.3.1/security/security-model.html b/docs-archive/apache-airflow/2.3.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.3.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.3.2/security/security-model.html b/docs-archive/apache-airflow/2.3.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.3.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.3.3/security/security-model.html b/docs-archive/apache-airflow/2.3.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.3.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.3.4/security/security-model.html b/docs-archive/apache-airflow/2.3.4/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.3.4/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.4.0/security/security-model.html b/docs-archive/apache-airflow/2.4.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.4.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.4.1/security/security-model.html b/docs-archive/apache-airflow/2.4.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.4.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.4.2/security/security-model.html b/docs-archive/apache-airflow/2.4.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.4.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.4.3/security/security-model.html b/docs-archive/apache-airflow/2.4.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.4.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.5.0/security/security-model.html b/docs-archive/apache-airflow/2.5.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.5.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.5.1/security/security-model.html b/docs-archive/apache-airflow/2.5.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.5.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.5.2/security/security-model.html b/docs-archive/apache-airflow/2.5.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.5.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.5.3/security/security-model.html b/docs-archive/apache-airflow/2.5.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.5.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.6.0/security/security-model.html b/docs-archive/apache-airflow/2.6.0/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.6.0/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.6.1/security/security-model.html b/docs-archive/apache-airflow/2.6.1/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.6.1/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.6.2/security/security-model.html b/docs-archive/apache-airflow/2.6.2/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.6.2/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.6.3/security/security-model.html b/docs-archive/apache-airflow/2.6.3/security/security-model.html
new file mode 100644
index 0000000000..9a36716bcb
--- /dev/null
+++ b/docs-archive/apache-airflow/2.6.3/security/security-model.html
@@ -0,0 +1 @@
+<html><head><meta http-equiv="refresh" content="0; url=../security.html"/></head></html>
\ No newline at end of file
diff --git a/docs-archive/apache-airflow/2.7.0/.buildinfo b/docs-archive/apache-airflow/2.7.0/.buildinfo
new file mode 100644
index 0000000000..aed8ded1d7
--- /dev/null
+++ b/docs-archive/apache-airflow/2.7.0/.buildinfo
@@ -0,0 +1,4 @@
+# Sphinx build info version 1
+# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
+config: 4a97fb7e9818542e1534ae75c6e0a0db
+tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/base/index.html
similarity index 51%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/base/index.html
index 110c29effa..cc4b0f7d1a 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/base/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.base &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.branch_python" href="../branch_python/index.html" />
+            <link rel="prev" title="airflow.decorators" href="../index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/base/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,126 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.get_unique_task_id"><code class="docutils literal notranslate"><span class="pre">get_unique_task_id()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields_renderers</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.shallow_copy_attrs</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.execute"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.execute()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.get_python_source"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.get_python_source()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.OperatorSubclass"><code class="docutils literal notranslate"><span class="pre">OperatorSubclass</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.multiple_outputs"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.multiple_outputs</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.python_callable"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.python_callable</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.op_kwargs_expand_input"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.op_kwargs_expand_input</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__hash__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__hash__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__attrs_post_init__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__attrs_post_init__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.Task"><code class="docutils literal notranslate"><span class="pre">Task</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.__wrapped__"><code class="docutils literal notranslate"><span class="pre">Task.__wrapped__</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.__call__"><code class="docutils literal notranslate"><span class="pre">Task.__call__</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.function"><code class="docutils literal notranslate"><span class="pre">Task.function</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.partial"><code class="docutils literal notranslate"><span class="pre">Task.partial()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.expand"><code class="docutils literal notranslate"><span class="pre">Task.expand()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.expand_kwargs"><code class="docutils literal notranslate"><span class="pre">Task.expand_kwargs()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.override"><code class="docutils literal notranslate"><span class="pre">Task.override()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator"><code class="docutils literal notranslate"><span class="pre">TaskDecorator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.__call__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.override"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.override()</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.task_decorator_factory"><code class="docutils literal notranslate"><span class="pre">task_decorator_factory()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +528,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +572,126 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.get_unique_task_id"><code class="docutils literal notranslate"><span class="pre">get_unique_task_id()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields_renderers</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.shallow_copy_attrs</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.execute"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.execute()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.get_python_source"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.get_python_source()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.OperatorSubclass"><code class="docutils literal notranslate"><span class="pre">OperatorSubclass</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.multiple_outputs"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.multiple_outputs</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.python_callable"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.python_callable</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.op_kwargs_expand_input"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.op_kwargs_expand_input</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__hash__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__hash__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__attrs_post_init__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__attrs_post_init__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.Task"><code class="docutils literal notranslate"><span class="pre">Task</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.__wrapped__"><code class="docutils literal notranslate"><span class="pre">Task.__wrapped__</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.__call__"><code class="docutils literal notranslate"><span class="pre">Task.__call__</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.function"><code class="docutils literal notranslate"><span class="pre">Task.function</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.partial"><code class="docutils literal notranslate"><span class="pre">Task.partial()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.expand"><code class="docutils literal notranslate"><span class="pre">Task.expand()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.expand_kwargs"><code class="docutils literal notranslate"><span class="pre">Task.expand_kwargs()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.Task.override"><code class="docutils literal notranslate"><span class="pre">Task.override()</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator"><code class="docutils literal notranslate"><span class="pre">TaskDecorator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.__call__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.override"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.override()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.base.task_decorator_factory"><code class="docutils literal notranslate"><span class="pre">task_decorator_factory()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +780,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +797,299 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.base">
+<span id="airflow-decorators-base"></span><h1><a class="reference internal" href="#module-airflow.decorators.base" title="airflow.decorators.base"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a><a class="headerlink" href="#module-airflow.decorators.base" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="classes">
+<h3>Classes<a class="headerlink" href="#classes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator" title="airflow.decorators.base.DecoratedOperator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">DecoratedOperator</span></code></a></p></td>
+<td><p>Wraps a Python callable and captures args/kwargs when called for execution.</p></td>
 </tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator" title="airflow.decorators.base.DecoratedMappedOperator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">DecoratedMappedOperator</span></code></a></p></td>
+<td><p>MappedOperator implementation for &#64;task-decorated task function.</p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.base.Task" title="airflow.decorators.base.Task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Task</span></code></a></p></td>
+<td><p>Declaration of a &#64;task-decorated callable for type-checking.</p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.base.TaskDecorator" title="airflow.decorators.base.TaskDecorator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TaskDecorator</span></code></a></p></td>
+<td><p>Type declaration for <code class="docutils literal notranslate"><span class="pre">task_decorator_factory</span></code> return type.</p></td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.base.get_unique_task_id" title="airflow.decorators.base.get_unique_task_id"><code class="xref py py-obj docutils literal notranslate"><span class="pre">get_unique_task_id</span></code></a>(task_id[, dag, task_group])</p></td>
+<td><p>Generate unique task id given a DAG (or if run in a DAG context).</p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.base.task_decorator_factory" title="airflow.decorators.base.task_decorator_factory"><code class="xref py py-obj docutils literal notranslate"><span class="pre">task_decorator_factory</span></code></a>([python_callable, multiple_outputs])</p></td>
+<td><p>Generate a wrapper that wraps a function into an Airflow operator.</p></td>
+</tr>
+</tbody>
+</table>
 </div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
+<div class="section" id="attributes">
+<h3>Attributes<a class="headerlink" href="#attributes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.base.FParams" title="airflow.decorators.base.FParams"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FParams</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.base.FReturn" title="airflow.decorators.base.FReturn"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FReturn</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.base.OperatorSubclass" title="airflow.decorators.base.OperatorSubclass"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OperatorSubclass</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.base.get_unique_task_id">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">get_unique_task_id</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dag</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em c [...]
+<dd><p>Generate unique task id given a DAG (or if run in a DAG context).</p>
+<p>IDs are generated by appending a unique number to the end of
+the original task id.</p>
+<dl class="simple">
+<dt>Example:</dt><dd><p>task_id
+task_id__1
+task_id__2
+…
+task_id__20</p>
 </dd>
 </dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
+<dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">DecoratedOperator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">python_callable</span></span></em>, <em class="sig-param"><span class [...]
+<dd><p>Bases: <a class="reference internal" href="../../models/baseoperator/index.html#airflow.models.baseoperator.BaseOperator" title="airflow.models.baseoperator.BaseOperator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">airflow.models.baseoperator.BaseOperator</span></code></a></p>
+<p>Wraps a Python callable and captures args/kwargs when called for execution.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> (<em>Callable</em>) – A reference to an object that is callable</p></li>
+<li><p><strong>op_kwargs</strong> (<em>Mapping</em><em>[</em><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><em>str</em></a><em>, </em><em>Any</em><em>] </em><em>| </em><em>None</em>) – a dictionary of keyword arguments that will get unpacked
+in your function (templated)</p></li>
+<li><p><strong>op_args</strong> (<em>Collection</em><em>[</em><em>Any</em><em>] </em><em>| </em><em>None</em>) – a list of positional arguments that will get unpacked when
+calling your callable (templated)</p></li>
+<li><p><strong>multiple_outputs</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><em>bool</em></a>) – If set to True, the decorated function’s return value will be unrolled to
+multiple XCom values. Dict will unroll to XCom values with its keys as XCom keys. Defaults to False.</p></li>
+<li><p><strong>kwargs_to_upstream</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#dict" title="(in Python v3.11)"><em>dict</em></a><em>[</em><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><em>str</em></a><em>, </em><em>Any</em><em>] </em><em>| </em><em>None</em>) – For certain operators, we might need to upstream certain arguments
+that would otherwise be absorbed by the DecoratedOperator (for example python_callable for the
+PythonOperator). This gives a user the option to upstream kwargs as needed.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator.template_fields">
+<span class="sig-name descname"><span class="pre">template_fields</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><span class="pre">str</span></a><span class="p"><span class="pre">]</span></span></em><em class="property"><span class="w" [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator.template_fields_renderers">
+<span class="sig-name descname"><span class="pre">template_fields_renderers</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedOperator.template_fields_renderers"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedOperator.template_fields_renderers" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator.shallow_copy_attrs">
+<span class="sig-name descname"><span class="pre">shallow_copy_attrs</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><span class="pre">str</span></a><span class="p"><span class="pre">]</span></span></em><em class="property"><span class= [...]
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator.execute">
+<span class="sig-name descname"><span class="pre">execute</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">context</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedOperator.execute"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedOperator.execute" title="Per [...]
+<dd><p>This is the main method to derive when creating an operator.</p>
+<p>Context is the same dictionary used as when rendering jinja templates.</p>
+<p>Refer to get_template_context for more context.</p>
+<dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedOperator.get_python_source">
+<span class="sig-name descname"><span class="pre">get_python_source</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedOperator.get_python_source"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedOperator.get_python_source" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.base.FParams">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">FParams</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#FParams"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.FParams" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.base.FReturn">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">FReturn</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#FReturn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.FReturn" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.base.OperatorSubclass">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">OperatorSubclass</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#OperatorSubclass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.OperatorSubclass" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">DecoratedMappedOperator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">context</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><s [...]
+<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">airflow.models.mappedoperator.MappedOperator</span></code></p>
+<p>MappedOperator implementation for &#64;task-decorated task function.</p>
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator.multiple_outputs">
+<span class="sig-name descname"><span class="pre">multiple_outputs</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><span class="pre">bool</span></a></em><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedMappedOperator.multiple_outputs"><span class="viewcode-link"><span c [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator.python_callable">
+<span class="sig-name descname"><span class="pre">python_callable</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span></em><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedMappedOperator.python_callable"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedMappedOperator.pytho [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator.op_kwargs_expand_input">
+<span class="sig-name descname"><span class="pre">op_kwargs_expand_input</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">airflow.models.expandinput.ExpandInput</span></em><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedMappedOperator.op_kwargs_expand_input"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.d [...]
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator.__hash__">
+<span class="sig-name descname"><span class="pre">__hash__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedMappedOperator.__hash__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedMappedOperator.__hash__" title="Permalink to this definition">¶</a></dt>
+<dd><p>Return hash(self).</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.DecoratedMappedOperator.__attrs_post_init__">
+<span class="sig-name descname"><span class="pre">__attrs_post_init__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#DecoratedMappedOperator.__attrs_post_init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.DecoratedMappedOperator.__attrs_post_init__" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">Task</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#Task"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.Task" title="Permalink to this  [...]
+<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">airflow.typing_compat.Protocol</span></code>, <code class="xref py py-obj docutils literal notranslate"><span class="pre">Generic</span></code>[<a class="reference internal" href="#airflow.decorators.base.FParams" title="airflow.decorators.base.FParams"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FParams</span></code></a>, <a class="reference internal" href="#airflow. [...]
+<p>Declaration of a &#64;task-decorated callable for type-checking.</p>
+<p>An instance of this type inherits the call signature of the decorated
+function wrapped in it (not <em>exactly</em> since it actually returns an XComArg,
+but there’s no way to express that right now), and provides two additional
+methods for task-mapping.</p>
+<p>This type is implemented by <code class="docutils literal notranslate"><span class="pre">_TaskDecorator</span></code> at runtime.</p>
+<dl class="py property">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.__wrapped__">
+<em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">__wrapped__</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">FParams</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">FReturn</span><span class="p"><span [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">FParams</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">airflow.models.xcom_arg.XComArg</span><span class="p"><span class="pre">]</span></span></em><a class="reference internal" [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.function">
+<span class="sig-name descname"><span class="pre">function</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">FParams</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">FReturn</span><span class="p"><span class="pre">]</span></span></em><a class="reference internal" href="../../../../_modu [...]
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.partial">
+<span class="sig-name descname"><span class="pre">partial</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#Task.partial"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.T [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.expand">
+<span class="sig-name descname"><span class="pre">expand</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#Task.expand"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.Tas [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.expand_kwargs">
+<span class="sig-name descname"><span class="pre">expand_kwargs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">kwargs</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">strict</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</s [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.Task.override">
+<span class="sig-name descname"><span class="pre">override</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#Task.override"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base [...]
+<dd><dl class="field-list simple">
+</dl>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.base.TaskDecorator">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">TaskDecorator</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#TaskDecorator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.base.TaskDecorator [...]
+<dd><p>Bases: <code class="xref py py-obj docutils literal notranslate"><span class="pre">airflow.typing_compat.Protocol</span></code></p>
+<p>Type declaration for <code class="docutils literal notranslate"><span class="pre">task_decorator_factory</span></code> return type.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.TaskDecorator.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">FParams</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">FReturn</ [...]
+<dt class="sig sig-object py">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">multiple_outputs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><span class="pre"> [...]
+<dd><p>For the decorator factory <code class="docutils literal notranslate"><span class="pre">&#64;task()</span></code> case.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.base.TaskDecorator.override">
+<span class="sig-name descname"><span class="pre">override</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/base.html#TaskDecorator.override"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decora [...]
+<dd><dl class="field-list simple">
+</dl>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.base.task_decorator_factory">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.base.</span></span><span class="sig-name descname"><span class="pre">task_decorator_factory</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></ [...]
+<dd><p>Generate a wrapper that wraps a function into an Airflow operator.</p>
+<p>Can be reused in a single DAG.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> (<em>Callable</em><em> | </em><em>None</em>) – Function to decorate.</p></li>
+<li><p><strong>multiple_outputs</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><em>bool</em></a><em> | </em><em>None</em>) – If set to True, the decorated function’s return
+value will be unrolled to multiple XCom values. Dict will unroll to XCom
+values with its keys as XCom keys. If set to False (default), only at
+most one XCom value is pushed.</p></li>
+<li><p><strong>decorated_operator_class</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#type" title="(in Python v3.11)"><em>type</em></a><em>[</em><a class="reference internal" href="../../models/baseoperator/index.html#airflow.models.baseoperator.BaseOperator" title="airflow.models.baseoperator.BaseOperator"><em>airflow.models.baseoperator.BaseOperator</em></a><em>]</em>) – The operator that executes the logic needed
+to run the python function in the correct environment.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-</ul>
+<p>Other kwargs are directly forwarded to the underlying operator class when
+it’s instantiated.</p>
+</dd></dl>
+
+</div>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators" href="../index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.branch_python" href="../branch_python/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +1159,51 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#classes">Classes</a></li>
+<li><a class="reference internal" href="#functions">Functions</a></li>
+<li><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.base.get_unique_task_id"><code class="docutils literal notranslate"><span class="pre">get_unique_task_id()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.template_fields_renderers</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.shallow_copy_attrs</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.execute"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.execute()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedOperator.get_python_source"><code class="docutils literal notranslate"><span class="pre">DecoratedOperator.get_python_source()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.base.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.OperatorSubclass"><code class="docutils literal notranslate"><span class="pre">OperatorSubclass</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.multiple_outputs"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.multiple_outputs</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.python_callable"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.python_callable</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.op_kwargs_expand_input"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.op_kwargs_expand_input</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__hash__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__hash__()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.DecoratedMappedOperator.__attrs_post_init__"><code class="docutils literal notranslate"><span class="pre">DecoratedMappedOperator.__attrs_post_init__()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task"><code class="docutils literal notranslate"><span class="pre">Task</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.__wrapped__"><code class="docutils literal notranslate"><span class="pre">Task.__wrapped__</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.__call__"><code class="docutils literal notranslate"><span class="pre">Task.__call__</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.function"><code class="docutils literal notranslate"><span class="pre">Task.function</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.partial"><code class="docutils literal notranslate"><span class="pre">Task.partial()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.expand"><code class="docutils literal notranslate"><span class="pre">Task.expand()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.expand_kwargs"><code class="docutils literal notranslate"><span class="pre">Task.expand_kwargs()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.Task.override"><code class="docutils literal notranslate"><span class="pre">Task.override()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.base.TaskDecorator"><code class="docutils literal notranslate"><span class="pre">TaskDecorator</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.__call__()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.base.TaskDecorator.override"><code class="docutils literal notranslate"><span class="pre">TaskDecorator.override()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.base.task_decorator_factory"><code class="docutils literal notranslate"><span class="pre">task_decorator_factory()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +1228,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/base/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1362,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/branch_python/index.html
similarity index 75%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/branch_python/index.html
index 110c29effa..0ef4ad720d 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/branch_python/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.branch_python &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.external_python" href="../external_python/index.html" />
+            <link rel="prev" title="airflow.decorators.base" href="../base/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/branch_python/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,89 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.branch_python.branch_task"><code class="docutils literal notranslate"><span class="pre">branch_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +491,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +535,89 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.branch_python.branch_task"><code class="docutils literal notranslate"><span class="pre">branch_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +706,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +723,52 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.branch_python">
+<span id="airflow-decorators-branch-python"></span><h1><a class="reference internal" href="#module-airflow.decorators.branch_python" title="airflow.decorators.branch_python"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a><a class="headerlink" href="#module-airflow.decorators.branch_python" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.branch_python.branch_task" title="airflow.decorators.branch_python.branch_task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">branch_task</span></code></a>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a python function into a BranchPythonOperator.</p></td>
 </tr>
 </tbody>
 </table>
-</div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.branch_python.branch_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.branch_python.</span></span><span class="sig-name descname"><span class="pre">branch_task</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">multiple_outputs</s [...]
+<dd><p>Wraps a python function into a BranchPythonOperator.</p>
+<p>For more information on how to use this operator, take a look at the guide:
+<a class="reference internal" href="../../../../core-concepts/dags.html#concepts-branching"><span class="std std-ref">Branching</span></a></p>
+<p>Accepts kwargs for operator kwarg. Can be reused in a single DAG.</p>
 <dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> (<em>Callable</em><em> | </em><em>None</em>) – Function to decorate</p></li>
+<li><p><strong>multiple_outputs</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><em>bool</em></a><em> | </em><em>None</em>) – if set, function return value will be
+unrolled to multiple XCom values. Dict will unroll to xcom values with keys as XCom keys.
+Defaults to False.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-</ul>
+</dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators.base" href="../base/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.external_python" href="../external_python/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +838,14 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#functions">Functions</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.branch_python.branch_task"><code class="docutils literal notranslate"><span class="pre">branch_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +870,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/branch_python/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1004,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/index.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/external_python/index.html
similarity index 78%
copy from docs-archive/docker-stack/index.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/external_python/index.html
index 168adbaaf3..073b65cdf5 100644
--- a/docs-archive/docker-stack/index.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/external_python/index.html
@@ -9,18 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Docker Image for Apache Airflow &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Building the image" href="build.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/index.html" />
+        <title>airflow.decorators.external_python &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.python" href="../python/index.html" />
+            <link rel="prev" title="airflow.decorators.branch_python" href="../branch_python/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/external_python/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -282,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -313,16 +328,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -403,8 +482,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -434,16 +526,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -532,9 +688,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="#" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
             
-            <li class="breadcrumb-item"><a href="index.html"> Docker Image for Apache Airflow</a></li>
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
         
     </ul>
 </div>
@@ -545,121 +705,16 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<a class="reference internal image-reference" href="_images/docker-logo.png"><img alt="_images/docker-logo.png" src="_images/docker-logo.png" style="width: 100px;" /></a>
-<div class="section" id="docker-image-for-apache-airflow">
-<h1>Docker Image for Apache Airflow<a class="headerlink" href="#docker-image-for-apache-airflow" title="Permalink to this heading">¶</a></h1>
-<div class="toctree-wrapper compound">
-</div>
-<div class="toctree-wrapper compound">
-</div>
-<p>For the ease of deployment in production, the community releases a production-ready reference container
-image.</p>
-<p>The Apache Airflow community, releases Docker Images which are <code class="docutils literal notranslate"><span class="pre">reference</span> <span class="pre">images</span></code> for Apache Airflow.
-Every time a new version of Airflow is released, the images are prepared in the
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">apache/airflow DockerHub</a>
-for all the supported Python versions.</p>
-<p>You can find the following images there (Assuming Airflow version <code class="code docutils literal notranslate"><span class="pre">2.6.3</span></code>):</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>Those are “reference” regular images. They contain the most common set of extras, dependencies and providers that are
-often used by the users and they are good to “try-things-out” when you want to just take Airflow for a spin,</p>
-<p>You can also use “slim” images that contain only core airflow and are about half the size of the “regular” images
-but you need to add all the <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a> and providers that you need separately
-via <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>The Apache Airflow image provided as convenience package is optimized for size, and
-it provides just a bare minimal set of the extras and dependencies installed and in most cases
-you want to either extend or customize the image. You can see all possible extras in <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a>.
-The set of extras used in Airflow Production image are available in the
-<a class="reference external" href="https://github.com/apache/airflow/blob/2c6c7fdb2308de98e142618836bdf414df9768c8/Dockerfile#L37">Dockerfile</a>.</p>
-<p>However, Airflow has more than 60 community-managed providers (installable via extras) and some of the
-default extras/providers installed are not used by everyone, sometimes others extras/providers
-are needed, sometimes (very often actually) you need to add your own custom dependencies,
-packages or even custom providers. You can learn how to do it in <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<p>The production images are build in DockerHub from released version and release candidates. There
-are also images published from branches but they are used mainly for development and testing purpose.
-See <a class="reference external" href="https://github.com/apache/airflow/blob/main/CONTRIBUTING.rst#airflow-git-branches">Airflow Git Branching</a>
-for details.</p>
-</div>
-<div class="section" id="fixing-images-at-release-time">
-<h1>Fixing images at release time<a class="headerlink" href="#fixing-images-at-release-time" title="Permalink to this heading">¶</a></h1>
-<p>The released “versioned” reference images are mostly <code class="docutils literal notranslate"><span class="pre">fixed</span></code> when we release Airflow version and we only
-update them in exceptional circumstances. For example when we find out that there are dependency errors
-that might prevent important Airflow or embedded provider’s functionalities working. In normal circumstances,
-the images are not going to change after release, even if new version of Airflow dependencies are released -
-not even when those versions contain critical security fixes. The process of Airflow releases is designed
-around upgrading dependencies automatically where applicable but only when we release a new version of Airflow,
-not for already released versions.</p>
-<p>If you want to make sure that Airflow dependencies are upgraded to the latest released versions containing
-latest security fixes in the image you use, you should implement your own process to upgrade
-those yourself when you build custom image based on the Airflow reference one. Airflow usually does not
-upper-bound versions of its dependencies via requirements, so you should be able to upgrade them to the
-latest versions - usually without any problems. And you can follow the process described in
-<a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a> to do it (even in automated way).</p>
-<p>Obviously - since we have no control over what gets released in new versions of the dependencies, we
-cannot give any guarantees that tests and functionality of those dependencies will be compatible with
-Airflow after you upgrade them - testing if Airflow still works with those is in your hands,
-and in case of any problems, you should raise issue with the authors of the dependencies that are problematic.
-You can also - in such cases - look at the <a class="reference external" href="https://github.com/apache/airflow/issues">Airflow issues</a>
-<a class="reference external" href="https://github.com/apache/airflow/pulls">Airflow Pull Requests</a> and
-<a class="reference external" href="https://github.com/apache/airflow/discussions">Airflow Discussions</a>, searching for similar
-problems to see if there are any fixes or workarounds found in the <code class="docutils literal notranslate"><span class="pre">main</span></code> version of Airflow and apply them
-to your custom image.</p>
-<p>The easiest way to keep-up with the latest released dependencies is however, to upgrade to the latest released
-Airflow version via switching to newly released images as base for your images, when a new version of
-Airflow is released. Whenever we release a new version of Airflow, we upgrade all dependencies to the latest
-applicable versions and test them together, so if you want to keep up with those tests - staying up-to-date
-with latest version of Airflow is the easiest way to update those dependencies.</p>
-</div>
-<div class="section" id="support">
-<h1>Support<a class="headerlink" href="#support" title="Permalink to this heading">¶</a></h1>
-<p>The reference Docker Image supports the following platforms and database:</p>
-<div class="section" id="intel-platform-x86-64">
-<h2>Intel platform (x86_64)<a class="headerlink" href="#intel-platform-x86-64" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-</div>
-<div class="section" id="arm-platform-aarch64">
-<h2>ARM platform (aarch64)<a class="headerlink" href="#arm-platform-aarch64" title="Permalink to this heading">¶</a></h2>
-<p>ARM support is experimental, might change any time.</p>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client (MySQL 8)</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-<p>Note that MySQL on arm has experimental support through MariaDB client library.</p>
-</div>
-</div>
-<div class="section" id="usage">
-<h1>Usage<a class="headerlink" href="#usage" title="Permalink to this heading">¶</a></h1>
-<p>The <span class="target" id="index-0"></span><a class="reference external" href="/docs/apache-airflow/stable/cli-and-env-variables-ref.html#envvar-AIRFLOW_HOME" title="(in apache-airflow v2.7.0.dev0)"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW_HOME</span></code></a> is set by default to <code class="docutils literal notranslate"><span class="pre">/opt/airflow/</span></code> - this means that DAGs
-are by default in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/dags</span></code> folder and logs are in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/logs</span></code></p>
-<p>The working directory is <code class="docutils literal notranslate"><span class="pre">/opt/airflow</span></code> by default.</p>
-<p>If no <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW__DATABASE__SQL_ALCHEMY_CONN</span></code> variable is set then SQLite database is created in
-<code class="docutils literal notranslate"><span class="pre">${AIRFLOW_HOME}/airflow.db</span></code>.</p>
-<p>For example commands that start Airflow see: <a class="reference internal" href="entrypoint.html#entrypoint-commands"><span class="std std-ref">Executing commands</span></a>.</p>
-<p>Airflow requires many components to function as it is a distributed application. You may therefore also be interested
-in launching Airflow in the Docker Compose environment, see: <a class="reference external" href="/docs/apache-airflow/stable/howto/docker-compose/index.html" title="(in apache-airflow v2.7.0.dev0)"><span>Running Airflow in Docker</span></a>.</p>
-<p>You can use this image in <a class="reference external" href="/docs/helm-chart/stable/index.html" title="(in helm-chart v1.11.0-dev)"><span class="xref std std-doc">Helm Chart</span></a> as well.</p>
+  <div class="section" id="module-airflow.decorators.external_python">
+<span id="airflow-decorators-external-python"></span><h1><a class="reference internal" href="#module-airflow.decorators.external_python" title="airflow.decorators.external_python"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a><a class="headerlink" href="#module-airflow.decorators.external_python" title="Permalink to this heading">¶</a></h1>
 </div>
 
 
-    <div class="pager" role="navigation" aria-label="related navigation"><button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" disabled>Previous</button>
-            <a rel="next" title="Building the image" href="build.html" >
+    <div class="pager" role="navigation" aria-label="related navigation">
+            <a rel="prev" title="airflow.decorators.branch_python" href="../branch_python/index.html" >
+                <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
+            </a>
+            <a rel="next" title="airflow.decorators.python" href="../python/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -729,16 +784,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Docker Image for Apache Airflow</a><ul>
-</ul>
-</li>
-<li><a class="reference internal" href="#fixing-images-at-release-time">Fixing images at release time</a></li>
-<li><a class="reference internal" href="#support">Support</a><ul>
-<li><a class="reference internal" href="#intel-platform-x86-64">Intel platform (x86_64)</a></li>
-<li><a class="reference internal" href="#arm-platform-aarch64">ARM platform (aarch64)</a></li>
-</ul>
-</li>
-<li><a class="reference internal" href="#usage">Usage</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
 </ul>
 
         </div>
@@ -761,7 +807,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/index.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/external_python/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -895,19 +941,20 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/index.html
similarity index 64%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/index.html
index 110c29effa..e133f1dadf 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../search.html" />
+            <link rel="next" title="airflow.decorators.base" href="base/index.html" />
+            <link rel="prev" title="airflow.secrets.metastore" href="../secrets/metastore/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,101 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul>
+<li class="toctree-l5"><a class="reference internal" href="#submodules">Submodules</a><ul>
+<li class="toctree-l6"><a class="reference internal" href="base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="#package-contents">Package Contents</a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l6"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l6"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection</span></code></a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.python</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.virtualenv"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.virtualenv</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.external_python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.external_python</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.branch"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.branch</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.short_circuit"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.short_circuit</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.sensor"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.sensor</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__call__</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__getattr__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__getattr__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.task"><code class="docutils literal notranslate"><span class="pre">task</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.setup"><code class="docutils literal notranslate"><span class="pre">setup</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.teardown"><code class="docutils literal notranslate"><span class="pre">teardown</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +503,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +547,101 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul>
+<li class="toctree-l5"><a class="reference internal" href="#submodules">Submodules</a><ul>
+<li class="toctree-l6"><a class="reference internal" href="base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="#package-contents">Package Contents</a><ul>
+<li class="toctree-l6"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l6"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l6"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection</span></code></a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.python</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.virtualenv"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.virtualenv</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.external_python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.external_python</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.branch"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.branch</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.short_circuit"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.short_circuit</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.sensor"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.sensor</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__call__</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__getattr__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__getattr__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.task"><code class="docutils literal notranslate"><span class="pre">task</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.setup"><code class="docutils literal notranslate"><span class="pre">setup</span></code></a></li>
+<li class="toctree-l7"><a class="reference internal" href="#airflow.decorators.teardown"><code class="docutils literal notranslate"><span class="pre">teardown</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +730,11 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../index.html" class="icon icon-home"> Home</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +745,171 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators">
+<span id="airflow-decorators"></span><h1><a class="reference internal" href="#module-airflow.decorators" title="airflow.decorators"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><a class="headerlink" href="#module-airflow.decorators" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="submodules">
+<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this heading">¶</a></h2>
+<div class="toctree-wrapper compound">
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l1"><a class="reference internal" href="task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</div>
+</div>
+<div class="section" id="package-contents">
+<h2>Package Contents<a class="headerlink" href="#package-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="classes">
+<h3>Classes<a class="headerlink" href="#classes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
+<tr class="row-odd"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">TaskDecorator</span></code></p></td>
+<td><p>Type declaration for <code class="docutils literal notranslate"><span class="pre">task_decorator_factory</span></code> return type.</p></td>
 </tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection" title="airflow.decorators.TaskDecoratorCollection"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TaskDecoratorCollection</span></code></a></p></td>
+<td><p>Implementation to provide the <code class="docutils literal notranslate"><span class="pre">&#64;task</span></code> syntax.</p></td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">branch_task</span></code>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a python function into a BranchPythonOperator.</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">external_python_task</span></code>([python, python_callable, ...])</p></td>
+<td><p>Wraps a callable into an Airflow operator to run via a Python virtual environment.</p></td>
+</tr>
+<tr class="row-odd"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">python_task</span></code>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a function into an Airflow operator.</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">virtualenv_task</span></code>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a callable into an Airflow operator to run via a Python virtual environment.</p></td>
+</tr>
+<tr class="row-odd"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">sensor_task</span></code>([python_callable])</p></td>
+<td><p>Wraps a function into an Airflow operator.</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">short_circuit_task</span></code>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a function into an ShortCircuitOperator.</p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="task_group/index.html#module-airflow.decorators.task_group" title="airflow.decorators.task_group"><code class="xref py py-obj docutils literal notranslate"><span class="pre">task_group</span></code></a></p></td>
+<td><p>Implements the <code class="docutils literal notranslate"><span class="pre">&#64;task_group</span></code> function decorator.</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">dag</span></code>([dag_id, description, schedule, ...])</p></td>
+<td><p>Python dag decorator which wraps a function into an Airflow DAG.</p></td>
+</tr>
+</tbody>
+</table>
 </div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<div class="section" id="attributes">
+<h3>Attributes<a class="headerlink" href="#attributes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.task" title="airflow.decorators.task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">task</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.setup" title="airflow.decorators.setup"><code class="xref py py-obj docutils literal notranslate"><span class="pre">setup</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.teardown" title="airflow.decorators.teardown"><code class="xref py py-obj docutils literal notranslate"><span class="pre">teardown</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.</span></span><span class="sig-name descname"><span class="pre">TaskDecoratorCollection</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecorat [...]
+<dd><p>Implementation to provide the <code class="docutils literal notranslate"><span class="pre">&#64;task</span></code> syntax.</p>
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.python">
+<span class="sig-name descname"><span class="pre">python</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.python"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.python" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.virtualenv">
+<span class="sig-name descname"><span class="pre">virtualenv</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.virtualenv"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.virtualenv" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.external_python">
+<span class="sig-name descname"><span class="pre">external_python</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.external_python"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.external_python" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.branch">
+<span class="sig-name descname"><span class="pre">branch</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.branch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.branch" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.short_circuit">
+<span class="sig-name descname"><span class="pre">short_circuit</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.short_circuit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.short_circuit" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.sensor">
+<span class="sig-name descname"><span class="pre">sensor</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.sensor"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.sensor" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Any</span></em><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.__call__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.__call__" title="Permalink to this de [...]
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.TaskDecoratorCollection.__getattr__">
+<span class="sig-name descname"><span class="pre">__getattr__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/airflow/decorators.html#TaskDecoratorCollection.__getattr__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.TaskDecoratorCollection.__getattr__" ti [...]
+<dd><p>Dynamically get provider-registered task decorators, e.g. <code class="docutils literal notranslate"><span class="pre">&#64;task.docker</span></code>.</p>
 <dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
 </dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.</span></span><span class="sig-name descname"><span class="pre">task</span></span><a class="reference internal" href="../../../_modules/airflow/decorators.html#task"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.task" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.setup">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.</span></span><span class="sig-name descname"><span class="pre">setup</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span></em><a class="reference internal" href="../../../_modules/airflow/decorators.html#setup"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decora [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.teardown">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.</span></span><span class="sig-name descname"><span class="pre">teardown</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Callable</span></em><a class="reference internal" href="../../../_modules/airflow/decorators.html#teardown"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow. [...]
+<dd></dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.secrets.metastore" href="../secrets/metastore/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.base" href="base/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +979,30 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul>
+<li><a class="reference internal" href="#submodules">Submodules</a></li>
+<li><a class="reference internal" href="#package-contents">Package Contents</a><ul>
+<li><a class="reference internal" href="#classes">Classes</a></li>
+<li><a class="reference internal" href="#functions">Functions</a></li>
+<li><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.python</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.virtualenv"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.virtualenv</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.external_python"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.external_python</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.branch"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.branch</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.short_circuit"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.short_circuit</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.sensor"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.sensor</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__call__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__call__</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.TaskDecoratorCollection.__getattr__"><code class="docutils literal notranslate"><span class="pre">TaskDecoratorCollection.__getattr__()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.task"><code class="docutils literal notranslate"><span class="pre">task</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.setup"><code class="docutils literal notranslate"><span class="pre">setup</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.teardown"><code class="docutils literal notranslate"><span class="pre">teardown</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +1027,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1161,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../" src="../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../" id="documentation_options" src="../../../_static/documentation_options.js"></script>
+        <script src="../../../_static/jquery.js"></script>
+        <script src="../../../_static/underscore.js"></script>
+        <script src="../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../_static/doctools.js"></script>
+        <script src="../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../_static/clipboard.min.js"></script>
+        <script src="../../../_static/copybutton.js"></script>
+        <script src="../../../_static/js/globaltoc.js"></script>
+        <script src="../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python/index.html
similarity index 75%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python/index.html
index 110c29effa..a74fc17b50 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.python &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.python_virtualenv" href="../python_virtualenv/index.html" />
+            <link rel="prev" title="airflow.decorators.external_python" href="../external_python/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/python/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,89 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.python.python_task"><code class="docutils literal notranslate"><span class="pre">python_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +491,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +535,89 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.python.python_task"><code class="docutils literal notranslate"><span class="pre">python_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +706,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +723,49 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.python">
+<span id="airflow-decorators-python"></span><h1><a class="reference internal" href="#module-airflow.decorators.python" title="airflow.decorators.python"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a><a class="headerlink" href="#module-airflow.decorators.python" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.python.python_task" title="airflow.decorators.python.python_task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">python_task</span></code></a>([python_callable, multiple_outputs])</p></td>
+<td><p>Wraps a function into an Airflow operator.</p></td>
 </tr>
 </tbody>
 </table>
-</div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.python.python_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.python.</span></span><span class="sig-name descname"><span class="pre">python_task</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">multiple_outputs</span></s [...]
+<dd><p>Wraps a function into an Airflow operator.</p>
+<p>Accepts kwargs for operator kwarg. Can be reused in a single DAG.</p>
 <dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> (<em>Callable</em><em> | </em><em>None</em>) – Function to decorate</p></li>
+<li><p><strong>multiple_outputs</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.11)"><em>bool</em></a><em> | </em><em>None</em>) – If set to True, the decorated function’s return value will be unrolled to
+multiple XCom values. Dict will unroll to XCom values with its keys as XCom keys. Defaults to False.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-</ul>
+</dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators.external_python" href="../external_python/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.python_virtualenv" href="../python_virtualenv/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +835,14 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#functions">Functions</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.python.python_task"><code class="docutils literal notranslate"><span class="pre">python_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +867,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/python/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1001,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/index.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python_virtualenv/index.html
similarity index 78%
copy from docs-archive/docker-stack/index.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python_virtualenv/index.html
index 168adbaaf3..b8052010b0 100644
--- a/docs-archive/docker-stack/index.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/python_virtualenv/index.html
@@ -9,18 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Docker Image for Apache Airflow &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Building the image" href="build.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/index.html" />
+        <title>airflow.decorators.python_virtualenv &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.sensor" href="../sensor/index.html" />
+            <link rel="prev" title="airflow.decorators.python" href="../python/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/python_virtualenv/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -282,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -313,16 +328,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -403,8 +482,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -434,16 +526,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -532,9 +688,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="#" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
             
-            <li class="breadcrumb-item"><a href="index.html"> Docker Image for Apache Airflow</a></li>
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
         
     </ul>
 </div>
@@ -545,121 +705,16 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<a class="reference internal image-reference" href="_images/docker-logo.png"><img alt="_images/docker-logo.png" src="_images/docker-logo.png" style="width: 100px;" /></a>
-<div class="section" id="docker-image-for-apache-airflow">
-<h1>Docker Image for Apache Airflow<a class="headerlink" href="#docker-image-for-apache-airflow" title="Permalink to this heading">¶</a></h1>
-<div class="toctree-wrapper compound">
-</div>
-<div class="toctree-wrapper compound">
-</div>
-<p>For the ease of deployment in production, the community releases a production-ready reference container
-image.</p>
-<p>The Apache Airflow community, releases Docker Images which are <code class="docutils literal notranslate"><span class="pre">reference</span> <span class="pre">images</span></code> for Apache Airflow.
-Every time a new version of Airflow is released, the images are prepared in the
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">apache/airflow DockerHub</a>
-for all the supported Python versions.</p>
-<p>You can find the following images there (Assuming Airflow version <code class="code docutils literal notranslate"><span class="pre">2.6.3</span></code>):</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>Those are “reference” regular images. They contain the most common set of extras, dependencies and providers that are
-often used by the users and they are good to “try-things-out” when you want to just take Airflow for a spin,</p>
-<p>You can also use “slim” images that contain only core airflow and are about half the size of the “regular” images
-but you need to add all the <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a> and providers that you need separately
-via <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>The Apache Airflow image provided as convenience package is optimized for size, and
-it provides just a bare minimal set of the extras and dependencies installed and in most cases
-you want to either extend or customize the image. You can see all possible extras in <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a>.
-The set of extras used in Airflow Production image are available in the
-<a class="reference external" href="https://github.com/apache/airflow/blob/2c6c7fdb2308de98e142618836bdf414df9768c8/Dockerfile#L37">Dockerfile</a>.</p>
-<p>However, Airflow has more than 60 community-managed providers (installable via extras) and some of the
-default extras/providers installed are not used by everyone, sometimes others extras/providers
-are needed, sometimes (very often actually) you need to add your own custom dependencies,
-packages or even custom providers. You can learn how to do it in <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<p>The production images are build in DockerHub from released version and release candidates. There
-are also images published from branches but they are used mainly for development and testing purpose.
-See <a class="reference external" href="https://github.com/apache/airflow/blob/main/CONTRIBUTING.rst#airflow-git-branches">Airflow Git Branching</a>
-for details.</p>
-</div>
-<div class="section" id="fixing-images-at-release-time">
-<h1>Fixing images at release time<a class="headerlink" href="#fixing-images-at-release-time" title="Permalink to this heading">¶</a></h1>
-<p>The released “versioned” reference images are mostly <code class="docutils literal notranslate"><span class="pre">fixed</span></code> when we release Airflow version and we only
-update them in exceptional circumstances. For example when we find out that there are dependency errors
-that might prevent important Airflow or embedded provider’s functionalities working. In normal circumstances,
-the images are not going to change after release, even if new version of Airflow dependencies are released -
-not even when those versions contain critical security fixes. The process of Airflow releases is designed
-around upgrading dependencies automatically where applicable but only when we release a new version of Airflow,
-not for already released versions.</p>
-<p>If you want to make sure that Airflow dependencies are upgraded to the latest released versions containing
-latest security fixes in the image you use, you should implement your own process to upgrade
-those yourself when you build custom image based on the Airflow reference one. Airflow usually does not
-upper-bound versions of its dependencies via requirements, so you should be able to upgrade them to the
-latest versions - usually without any problems. And you can follow the process described in
-<a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a> to do it (even in automated way).</p>
-<p>Obviously - since we have no control over what gets released in new versions of the dependencies, we
-cannot give any guarantees that tests and functionality of those dependencies will be compatible with
-Airflow after you upgrade them - testing if Airflow still works with those is in your hands,
-and in case of any problems, you should raise issue with the authors of the dependencies that are problematic.
-You can also - in such cases - look at the <a class="reference external" href="https://github.com/apache/airflow/issues">Airflow issues</a>
-<a class="reference external" href="https://github.com/apache/airflow/pulls">Airflow Pull Requests</a> and
-<a class="reference external" href="https://github.com/apache/airflow/discussions">Airflow Discussions</a>, searching for similar
-problems to see if there are any fixes or workarounds found in the <code class="docutils literal notranslate"><span class="pre">main</span></code> version of Airflow and apply them
-to your custom image.</p>
-<p>The easiest way to keep-up with the latest released dependencies is however, to upgrade to the latest released
-Airflow version via switching to newly released images as base for your images, when a new version of
-Airflow is released. Whenever we release a new version of Airflow, we upgrade all dependencies to the latest
-applicable versions and test them together, so if you want to keep up with those tests - staying up-to-date
-with latest version of Airflow is the easiest way to update those dependencies.</p>
-</div>
-<div class="section" id="support">
-<h1>Support<a class="headerlink" href="#support" title="Permalink to this heading">¶</a></h1>
-<p>The reference Docker Image supports the following platforms and database:</p>
-<div class="section" id="intel-platform-x86-64">
-<h2>Intel platform (x86_64)<a class="headerlink" href="#intel-platform-x86-64" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-</div>
-<div class="section" id="arm-platform-aarch64">
-<h2>ARM platform (aarch64)<a class="headerlink" href="#arm-platform-aarch64" title="Permalink to this heading">¶</a></h2>
-<p>ARM support is experimental, might change any time.</p>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client (MySQL 8)</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-<p>Note that MySQL on arm has experimental support through MariaDB client library.</p>
-</div>
-</div>
-<div class="section" id="usage">
-<h1>Usage<a class="headerlink" href="#usage" title="Permalink to this heading">¶</a></h1>
-<p>The <span class="target" id="index-0"></span><a class="reference external" href="/docs/apache-airflow/stable/cli-and-env-variables-ref.html#envvar-AIRFLOW_HOME" title="(in apache-airflow v2.7.0.dev0)"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW_HOME</span></code></a> is set by default to <code class="docutils literal notranslate"><span class="pre">/opt/airflow/</span></code> - this means that DAGs
-are by default in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/dags</span></code> folder and logs are in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/logs</span></code></p>
-<p>The working directory is <code class="docutils literal notranslate"><span class="pre">/opt/airflow</span></code> by default.</p>
-<p>If no <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW__DATABASE__SQL_ALCHEMY_CONN</span></code> variable is set then SQLite database is created in
-<code class="docutils literal notranslate"><span class="pre">${AIRFLOW_HOME}/airflow.db</span></code>.</p>
-<p>For example commands that start Airflow see: <a class="reference internal" href="entrypoint.html#entrypoint-commands"><span class="std std-ref">Executing commands</span></a>.</p>
-<p>Airflow requires many components to function as it is a distributed application. You may therefore also be interested
-in launching Airflow in the Docker Compose environment, see: <a class="reference external" href="/docs/apache-airflow/stable/howto/docker-compose/index.html" title="(in apache-airflow v2.7.0.dev0)"><span>Running Airflow in Docker</span></a>.</p>
-<p>You can use this image in <a class="reference external" href="/docs/helm-chart/stable/index.html" title="(in helm-chart v1.11.0-dev)"><span class="xref std std-doc">Helm Chart</span></a> as well.</p>
+  <div class="section" id="module-airflow.decorators.python_virtualenv">
+<span id="airflow-decorators-python-virtualenv"></span><h1><a class="reference internal" href="#module-airflow.decorators.python_virtualenv" title="airflow.decorators.python_virtualenv"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a><a class="headerlink" href="#module-airflow.decorators.python_virtualenv" title="Permalink to this heading">¶</a></h1>
 </div>
 
 
-    <div class="pager" role="navigation" aria-label="related navigation"><button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" disabled>Previous</button>
-            <a rel="next" title="Building the image" href="build.html" >
+    <div class="pager" role="navigation" aria-label="related navigation">
+            <a rel="prev" title="airflow.decorators.python" href="../python/index.html" >
+                <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
+            </a>
+            <a rel="next" title="airflow.decorators.sensor" href="../sensor/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -729,16 +784,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Docker Image for Apache Airflow</a><ul>
-</ul>
-</li>
-<li><a class="reference internal" href="#fixing-images-at-release-time">Fixing images at release time</a></li>
-<li><a class="reference internal" href="#support">Support</a><ul>
-<li><a class="reference internal" href="#intel-platform-x86-64">Intel platform (x86_64)</a></li>
-<li><a class="reference internal" href="#arm-platform-aarch64">ARM platform (aarch64)</a></li>
-</ul>
-</li>
-<li><a class="reference internal" href="#usage">Usage</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
 </ul>
 
         </div>
@@ -761,7 +807,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/index.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/python_virtualenv/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -895,19 +941,20 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/sensor/index.html
similarity index 69%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/sensor/index.html
index 110c29effa..7d30c3fd4a 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/sensor/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.sensor &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.setup_teardown" href="../setup_teardown/index.html" />
+            <link rel="prev" title="airflow.decorators.python_virtualenv" href="../python_virtualenv/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/sensor/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,97 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields_renderers</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.custom_operator_name"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.custom_operator_name</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.shallow_copy_attrs</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.sensor.sensor_task"><code class="docutils literal notranslate"><span class="pre">sensor_task()</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +499,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +543,97 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields_renderers</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.custom_operator_name"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.custom_operator_name</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.shallow_copy_attrs</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.sensor.sensor_task"><code class="docutils literal notranslate"><span class="pre">sensor_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +722,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +739,99 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.sensor">
+<span id="airflow-decorators-sensor"></span><h1><a class="reference internal" href="#module-airflow.decorators.sensor" title="airflow.decorators.sensor"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a><a class="headerlink" href="#module-airflow.decorators.sensor" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="classes">
+<h3>Classes<a class="headerlink" href="#classes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator" title="airflow.decorators.sensor.DecoratedSensorOperator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">DecoratedSensorOperator</span></code></a></p></td>
+<td><p>Wraps a Python callable and captures args/kwargs when called for execution.</p></td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.sensor.sensor_task" title="airflow.decorators.sensor.sensor_task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">sensor_task</span></code></a>([python_callable])</p></td>
+<td><p>Wraps a function into an Airflow operator.</p></td>
+</tr>
+</tbody>
+</table>
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.DecoratedSensorOperator">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.sensor.</span></span><span class="sig-name descname"><span class="pre">DecoratedSensorOperator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">task_id</span></span></em>, <em class="sig-param"><span class [...]
+<dd><p>Bases: <a class="reference internal" href="../../sensors/python/index.html#airflow.sensors.python.PythonSensor" title="airflow.sensors.python.PythonSensor"><code class="xref py py-obj docutils literal notranslate"><span class="pre">airflow.sensors.python.PythonSensor</span></code></a></p>
+<p>Wraps a Python callable and captures args/kwargs when called for execution.</p>
 <dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> – A reference to an object that is callable</p></li>
+<li><p><strong>task_id</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><em>str</em></a>) – task Id</p></li>
+<li><p><strong>op_args</strong> – a list of positional arguments that will get unpacked when
+calling your callable (templated)</p></li>
+<li><p><strong>op_kwargs</strong> – a dictionary of keyword arguments that will get unpacked
+in your function (templated)</p></li>
+<li><p><strong>kwargs_to_upstream</strong> – For certain operators, we might need to upstream certain arguments
+that would otherwise be absorbed by the DecoratedOperator (for example python_callable for the
+PythonOperator). This gives a user the option to upstream kwargs as needed.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.DecoratedSensorOperator.template_fields">
+<span class="sig-name descname"><span class="pre">template_fields</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><span class="pre">str</span></a><span class="p"><span class="pre">]</span></span></em><em class="property"><span class="w" [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.DecoratedSensorOperator.template_fields_renderers">
+<span class="sig-name descname"><span class="pre">template_fields_renderers</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#dict" title="(in Python v3.11)"><span class="pre">dict</span></a><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.1 [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.DecoratedSensorOperator.custom_operator_name">
+<span class="sig-name descname"><span class="pre">custom_operator_name</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;task.sensor'</span></em><a class="reference internal" href="../../../../_modules/airflow/decorators/sensor.html#DecoratedSensorOperator.custom_operator_name"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow [...]
+<dd></dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.DecoratedSensorOperator.shallow_copy_attrs">
+<span class="sig-name descname"><span class="pre">shallow_copy_attrs</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><span class="pre">str</span></a><span class="p"><span class="pre">]</span></span></em><em class="property"><span class= [...]
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.sensor.sensor_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.sensor.</span></span><span class="sig-name descname"><span class="pre">sensor_task</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span clas [...]
+<dd><p>Wraps a function into an Airflow operator.</p>
+<p>Accepts kwargs for operator kwarg. Can be reused in a single DAG.
+:param python_callable: Function to decorate</p>
+<dl class="field-list simple">
 </dl>
-</li>
-</ul>
+</dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators.python_virtualenv" href="../python_virtualenv/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.setup_teardown" href="../setup_teardown/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +901,22 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#classes">Classes</a></li>
+<li><a class="reference internal" href="#functions">Functions</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.template_fields_renderers"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.template_fields_renderers</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.custom_operator_name"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.custom_operator_name</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.sensor.DecoratedSensorOperator.shallow_copy_attrs"><code class="docutils literal notranslate"><span class="pre">DecoratedSensorOperator.shallow_copy_attrs</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.sensor.sensor_task"><code class="docutils literal notranslate"><span class="pre">sensor_task()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +941,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/sensor/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1075,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/setup_teardown/index.html
similarity index 70%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/setup_teardown/index.html
index 110c29effa..f4ff7f7709 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/setup_teardown/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.setup_teardown &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.short_circuit" href="../short_circuit/index.html" />
+            <link rel="prev" title="airflow.decorators.sensor" href="../sensor/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/setup_teardown/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,98 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.setup_task"><code class="docutils literal notranslate"><span class="pre">setup_task()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.teardown_task"><code class="docutils literal notranslate"><span class="pre">teardown_task()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper"><code class="docutils literal notranslate"><span class="pre">ContextWrapper</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__enter__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__enter__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__exit__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__exit__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.context_wrapper"><code class="docutils literal notranslate"><span class="pre">context_wrapper</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +500,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +544,98 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#classes">Classes</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.setup_task"><code class="docutils literal notranslate"><span class="pre">setup_task()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.teardown_task"><code class="docutils literal notranslate"><span class="pre">teardown_task()</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper"><code class="docutils literal notranslate"><span class="pre">ContextWrapper</span></code></a><ul>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__enter__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__enter__()</span></code></a></li>
+<li class="toctree-l10"><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__exit__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__exit__()</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.setup_teardown.context_wrapper"><code class="docutils literal notranslate"><span class="pre">context_wrapper</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +724,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +741,102 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.setup_teardown">
+<span id="airflow-decorators-setup-teardown"></span><h1><a class="reference internal" href="#module-airflow.decorators.setup_teardown" title="airflow.decorators.setup_teardown"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a><a class="headerlink" href="#module-airflow.decorators.setup_teardown" title="Permalink to this heading">¶</a></h1>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="classes">
+<h3>Classes<a class="headerlink" href="#classes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper" title="airflow.decorators.setup_teardown.ContextWrapper"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ContextWrapper</span></code></a></p></td>
+<td><p>A list subclass that has a context manager that pushes setup/teardown tasks to the context.</p></td>
 </tr>
-</thead>
+</tbody>
+</table>
+</div>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.setup_teardown.setup_task" title="airflow.decorators.setup_teardown.setup_task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">setup_task</span></code></a>(func)</p></td>
+<td><p></p></td>
 </tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.setup_teardown.teardown_task" title="airflow.decorators.setup_teardown.teardown_task"><code class="xref py py-obj docutils literal notranslate"><span class="pre">teardown_task</span></code></a>([_func, on_failure_fail_dagrun])</p></td>
+<td><p></p></td>
 </tr>
 </tbody>
 </table>
 </div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
+<div class="section" id="attributes">
+<h3>Attributes<a class="headerlink" href="#attributes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.setup_teardown.context_wrapper" title="airflow.decorators.setup_teardown.context_wrapper"><code class="xref py py-obj docutils literal notranslate"><span class="pre">context_wrapper</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+</tbody>
+</table>
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.setup_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.setup_teardown.</span></span><span class="sig-name descname"><span class="pre">setup_task</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/setup_teardown.html#setup_task"><span class="viewcode-link"><span class="pre">[source]</span> [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.teardown_task">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.setup_teardown.</span></span><span class="sig-name descname"><span class="pre">teardown_task</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">_func</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em  [...]
+<dd><dl class="field-list simple">
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.ContextWrapper">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">airflow.decorators.setup_teardown.</span></span><span class="sig-name descname"><span class="pre">ContextWrapper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tasks</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/setup_te [...]
+<dd><p>Bases: <a class="reference external" href="https://jinja.palletsprojects.com/en/2.11.x/templates/#list" title="(in Jinja v2.11.x)"><code class="xref py py-obj docutils literal notranslate"><span class="pre">list</span></code></a></p>
+<p>A list subclass that has a context manager that pushes setup/teardown tasks to the context.</p>
+<dl class="field-list simple">
 </dl>
-</li>
-</ul>
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.ContextWrapper.__enter__">
+<span class="sig-name descname"><span class="pre">__enter__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/setup_teardown.html#ContextWrapper.__enter__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.setup_teardown.ContextWrapper.__enter__" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.ContextWrapper.__exit__">
+<span class="sig-name descname"><span class="pre">__exit__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">exc_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exc_val</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exc_tb</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../../_modules/airflow/decorators/setup_teardown.html#ContextWra [...]
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.setup_teardown.context_wrapper">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.setup_teardown.</span></span><span class="sig-name descname"><span class="pre">context_wrapper</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/setup_teardown.html#context_wrapper"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.setup_teardown.context_wrapper" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators.sensor" href="../sensor/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.decorators.short_circuit" href="../short_circuit/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +906,23 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#classes">Classes</a></li>
+<li><a class="reference internal" href="#functions">Functions</a></li>
+<li><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.setup_task"><code class="docutils literal notranslate"><span class="pre">setup_task()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.teardown_task"><code class="docutils literal notranslate"><span class="pre">teardown_task()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper"><code class="docutils literal notranslate"><span class="pre">ContextWrapper</span></code></a><ul>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__enter__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__enter__()</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.ContextWrapper.__exit__"><code class="docutils literal notranslate"><span class="pre">ContextWrapper.__exit__()</span></code></a></li>
+</ul>
+</li>
+<li><a class="reference internal" href="#airflow.decorators.setup_teardown.context_wrapper"><code class="docutils literal notranslate"><span class="pre">context_wrapper</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +947,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/setup_teardown/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1081,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/index.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/short_circuit/index.html
similarity index 78%
copy from docs-archive/docker-stack/index.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/short_circuit/index.html
index 168adbaaf3..6a1054a90f 100644
--- a/docs-archive/docker-stack/index.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/short_circuit/index.html
@@ -9,18 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Docker Image for Apache Airflow &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Building the image" href="build.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/index.html" />
+        <title>airflow.decorators.short_circuit &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.decorators.task_group" href="../task_group/index.html" />
+            <link rel="prev" title="airflow.decorators.setup_teardown" href="../setup_teardown/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/short_circuit/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -282,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -313,16 +328,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -403,8 +482,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -434,16 +526,80 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1"><a class="reference internal" href="changelog.html">Dockerfile Changelog</a></li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -532,9 +688,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="#" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
             
-            <li class="breadcrumb-item"><a href="index.html"> Docker Image for Apache Airflow</a></li>
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
         
     </ul>
 </div>
@@ -545,121 +705,16 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<a class="reference internal image-reference" href="_images/docker-logo.png"><img alt="_images/docker-logo.png" src="_images/docker-logo.png" style="width: 100px;" /></a>
-<div class="section" id="docker-image-for-apache-airflow">
-<h1>Docker Image for Apache Airflow<a class="headerlink" href="#docker-image-for-apache-airflow" title="Permalink to this heading">¶</a></h1>
-<div class="toctree-wrapper compound">
-</div>
-<div class="toctree-wrapper compound">
-</div>
-<p>For the ease of deployment in production, the community releases a production-ready reference container
-image.</p>
-<p>The Apache Airflow community, releases Docker Images which are <code class="docutils literal notranslate"><span class="pre">reference</span> <span class="pre">images</span></code> for Apache Airflow.
-Every time a new version of Airflow is released, the images are prepared in the
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">apache/airflow DockerHub</a>
-for all the supported Python versions.</p>
-<p>You can find the following images there (Assuming Airflow version <code class="code docutils literal notranslate"><span class="pre">2.6.3</span></code>):</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>Those are “reference” regular images. They contain the most common set of extras, dependencies and providers that are
-often used by the users and they are good to “try-things-out” when you want to just take Airflow for a spin,</p>
-<p>You can also use “slim” images that contain only core airflow and are about half the size of the “regular” images
-but you need to add all the <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a> and providers that you need separately
-via <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<ul class="simple">
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest</span></code>              - the latest released Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-latest-pythonX.Y</span></code>    - the latest released Airflow image with specific Python version</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3</span></code>           - the versioned Airflow image with default Python version (3.7 currently)</p></li>
-<li><p><code class="code docutils literal notranslate"><span class="pre">apache/airflow:slim-2.6.3-pythonX.Y</span></code> - the versioned Airflow image with specific Python version</p></li>
-</ul>
-<p>The Apache Airflow image provided as convenience package is optimized for size, and
-it provides just a bare minimal set of the extras and dependencies installed and in most cases
-you want to either extend or customize the image. You can see all possible extras in <a class="reference external" href="/docs/apache-airflow/stable/extra-packages-ref.html" title="(in apache-airflow v2.7.0.dev0)"><span>Reference for package extras</span></a>.
-The set of extras used in Airflow Production image are available in the
-<a class="reference external" href="https://github.com/apache/airflow/blob/2c6c7fdb2308de98e142618836bdf414df9768c8/Dockerfile#L37">Dockerfile</a>.</p>
-<p>However, Airflow has more than 60 community-managed providers (installable via extras) and some of the
-default extras/providers installed are not used by everyone, sometimes others extras/providers
-are needed, sometimes (very often actually) you need to add your own custom dependencies,
-packages or even custom providers. You can learn how to do it in <a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a>.</p>
-<p>The production images are build in DockerHub from released version and release candidates. There
-are also images published from branches but they are used mainly for development and testing purpose.
-See <a class="reference external" href="https://github.com/apache/airflow/blob/main/CONTRIBUTING.rst#airflow-git-branches">Airflow Git Branching</a>
-for details.</p>
-</div>
-<div class="section" id="fixing-images-at-release-time">
-<h1>Fixing images at release time<a class="headerlink" href="#fixing-images-at-release-time" title="Permalink to this heading">¶</a></h1>
-<p>The released “versioned” reference images are mostly <code class="docutils literal notranslate"><span class="pre">fixed</span></code> when we release Airflow version and we only
-update them in exceptional circumstances. For example when we find out that there are dependency errors
-that might prevent important Airflow or embedded provider’s functionalities working. In normal circumstances,
-the images are not going to change after release, even if new version of Airflow dependencies are released -
-not even when those versions contain critical security fixes. The process of Airflow releases is designed
-around upgrading dependencies automatically where applicable but only when we release a new version of Airflow,
-not for already released versions.</p>
-<p>If you want to make sure that Airflow dependencies are upgraded to the latest released versions containing
-latest security fixes in the image you use, you should implement your own process to upgrade
-those yourself when you build custom image based on the Airflow reference one. Airflow usually does not
-upper-bound versions of its dependencies via requirements, so you should be able to upgrade them to the
-latest versions - usually without any problems. And you can follow the process described in
-<a class="reference internal" href="build.html#build-build-image"><span class="std std-ref">Building the image</span></a> to do it (even in automated way).</p>
-<p>Obviously - since we have no control over what gets released in new versions of the dependencies, we
-cannot give any guarantees that tests and functionality of those dependencies will be compatible with
-Airflow after you upgrade them - testing if Airflow still works with those is in your hands,
-and in case of any problems, you should raise issue with the authors of the dependencies that are problematic.
-You can also - in such cases - look at the <a class="reference external" href="https://github.com/apache/airflow/issues">Airflow issues</a>
-<a class="reference external" href="https://github.com/apache/airflow/pulls">Airflow Pull Requests</a> and
-<a class="reference external" href="https://github.com/apache/airflow/discussions">Airflow Discussions</a>, searching for similar
-problems to see if there are any fixes or workarounds found in the <code class="docutils literal notranslate"><span class="pre">main</span></code> version of Airflow and apply them
-to your custom image.</p>
-<p>The easiest way to keep-up with the latest released dependencies is however, to upgrade to the latest released
-Airflow version via switching to newly released images as base for your images, when a new version of
-Airflow is released. Whenever we release a new version of Airflow, we upgrade all dependencies to the latest
-applicable versions and test them together, so if you want to keep up with those tests - staying up-to-date
-with latest version of Airflow is the easiest way to update those dependencies.</p>
-</div>
-<div class="section" id="support">
-<h1>Support<a class="headerlink" href="#support" title="Permalink to this heading">¶</a></h1>
-<p>The reference Docker Image supports the following platforms and database:</p>
-<div class="section" id="intel-platform-x86-64">
-<h2>Intel platform (x86_64)<a class="headerlink" href="#intel-platform-x86-64" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-</div>
-<div class="section" id="arm-platform-aarch64">
-<h2>ARM platform (aarch64)<a class="headerlink" href="#arm-platform-aarch64" title="Permalink to this heading">¶</a></h2>
-<p>ARM support is experimental, might change any time.</p>
-<ul class="simple">
-<li><p>Postgres Client</p></li>
-<li><p>MySQL Client (MySQL 8)</p></li>
-<li><p>MSSQL Client</p></li>
-</ul>
-<p>Note that MySQL on arm has experimental support through MariaDB client library.</p>
-</div>
-</div>
-<div class="section" id="usage">
-<h1>Usage<a class="headerlink" href="#usage" title="Permalink to this heading">¶</a></h1>
-<p>The <span class="target" id="index-0"></span><a class="reference external" href="/docs/apache-airflow/stable/cli-and-env-variables-ref.html#envvar-AIRFLOW_HOME" title="(in apache-airflow v2.7.0.dev0)"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW_HOME</span></code></a> is set by default to <code class="docutils literal notranslate"><span class="pre">/opt/airflow/</span></code> - this means that DAGs
-are by default in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/dags</span></code> folder and logs are in the <code class="docutils literal notranslate"><span class="pre">/opt/airflow/logs</span></code></p>
-<p>The working directory is <code class="docutils literal notranslate"><span class="pre">/opt/airflow</span></code> by default.</p>
-<p>If no <span class="target" id="index-1"></span><code class="xref std std-envvar docutils literal notranslate"><span class="pre">AIRFLOW__DATABASE__SQL_ALCHEMY_CONN</span></code> variable is set then SQLite database is created in
-<code class="docutils literal notranslate"><span class="pre">${AIRFLOW_HOME}/airflow.db</span></code>.</p>
-<p>For example commands that start Airflow see: <a class="reference internal" href="entrypoint.html#entrypoint-commands"><span class="std std-ref">Executing commands</span></a>.</p>
-<p>Airflow requires many components to function as it is a distributed application. You may therefore also be interested
-in launching Airflow in the Docker Compose environment, see: <a class="reference external" href="/docs/apache-airflow/stable/howto/docker-compose/index.html" title="(in apache-airflow v2.7.0.dev0)"><span>Running Airflow in Docker</span></a>.</p>
-<p>You can use this image in <a class="reference external" href="/docs/helm-chart/stable/index.html" title="(in helm-chart v1.11.0-dev)"><span class="xref std std-doc">Helm Chart</span></a> as well.</p>
+  <div class="section" id="module-airflow.decorators.short_circuit">
+<span id="airflow-decorators-short-circuit"></span><h1><a class="reference internal" href="#module-airflow.decorators.short_circuit" title="airflow.decorators.short_circuit"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a><a class="headerlink" href="#module-airflow.decorators.short_circuit" title="Permalink to this heading">¶</a></h1>
 </div>
 
 
-    <div class="pager" role="navigation" aria-label="related navigation"><button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" disabled>Previous</button>
-            <a rel="next" title="Building the image" href="build.html" >
+    <div class="pager" role="navigation" aria-label="related navigation">
+            <a rel="prev" title="airflow.decorators.setup_teardown" href="../setup_teardown/index.html" >
+                <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
+            </a>
+            <a rel="next" title="airflow.decorators.task_group" href="../task_group/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -729,16 +784,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Docker Image for Apache Airflow</a><ul>
-</ul>
-</li>
-<li><a class="reference internal" href="#fixing-images-at-release-time">Fixing images at release time</a></li>
-<li><a class="reference internal" href="#support">Support</a><ul>
-<li><a class="reference internal" href="#intel-platform-x86-64">Intel platform (x86_64)</a></li>
-<li><a class="reference internal" href="#arm-platform-aarch64">ARM platform (aarch64)</a></li>
-</ul>
-</li>
-<li><a class="reference internal" href="#usage">Usage</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
 </ul>
 
         </div>
@@ -761,7 +807,7 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/index.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/short_circuit/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -895,19 +941,20 @@ in launching Airflow in the Docker Compose environment, see: <a class="reference
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/task_group/index.html
similarity index 68%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/task_group/index.html
index 110c29effa..da8ba4d1ac 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/decorators/task_group/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.decorators.task_group &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="Best Practices" href="../../../../best-practices.html" />
+            <link rel="prev" title="airflow.decorators.short_circuit" href="../short_circuit/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/decorators/task_group/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,93 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.task_group_sig"><code class="docutils literal notranslate"><span class="pre">task_group_sig</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.task_group"><code class="docutils literal notranslate"><span class="pre">task_group()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +495,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +539,93 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#executors">Executors</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#secrets-backends">Secrets Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#authentication-backends">Authentication Backends</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#connections">Connections</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#id1">Extra Links</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#logging-and-monitoring">Logging and Monitoring</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#decorators">Decorators</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a><ul class="current">
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../base/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.base</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../branch_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.branch_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../external_python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.external_python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../python_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.python_virtualenv</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../sensor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.sensor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../short_circuit/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.short_circuit</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#functions">Functions</a></li>
+<li class="toctree-l8"><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.task_group_sig"><code class="docutils literal notranslate"><span class="pre">task_group_sig</span></code></a></li>
+<li class="toctree-l9"><a class="reference internal" href="#airflow.decorators.task_group.task_group"><code class="docutils literal notranslate"><span class="pre">task_group()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l5"><a class="reference internal" href="../index.html#package-contents">Package Contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#email-notifications">Email notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#notifications">Notifications</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#cluster-policies">Cluster Policies</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#lineage">Lineage</a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +714,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
+            
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +731,91 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
+  <div class="section" id="module-airflow.decorators.task_group">
+<span id="airflow-decorators-task-group"></span><h1><a class="reference internal" href="#module-airflow.decorators.task_group" title="airflow.decorators.task_group"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a><a class="headerlink" href="#module-airflow.decorators.task_group" title="Permalink to this heading">¶</a></h1>
+<p>Implements the <code class="docutils literal notranslate"><span class="pre">&#64;task_group</span></code> function decorator.</p>
+<p>When the decorated function is called, a task group will be created to represent
+a collection of closely related tasks on the same DAG that should be grouped
+together when the DAG is displayed graphically.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<div class="section" id="functions">
+<h3>Functions<a class="headerlink" href="#functions" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
 <colgroup>
 <col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
+<col style="width: 90%" />
 </colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
+<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.task_group.task_group" title="airflow.decorators.task_group.task_group"><code class="xref py py-obj docutils literal notranslate"><span class="pre">task_group</span></code></a>(…)</p></td>
+<td><p>Python TaskGroup decorator.</p></td>
 </tr>
-</thead>
+</tbody>
+</table>
+</div>
+<div class="section" id="attributes">
+<h3>Attributes<a class="headerlink" href="#attributes" title="Permalink to this heading">¶</a></h3>
+<table class="autosummary longtable docutils align-default">
+<colgroup>
+<col style="width: 10%" />
+<col style="width: 90%" />
+</colgroup>
 <tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.task_group.FParams" title="airflow.decorators.task_group.FParams"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FParams</span></code></a></p></td>
+<td><p></p></td>
 </tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
+<tr class="row-even"><td><p><a class="reference internal" href="#airflow.decorators.task_group.FReturn" title="airflow.decorators.task_group.FReturn"><code class="xref py py-obj docutils literal notranslate"><span class="pre">FReturn</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#airflow.decorators.task_group.task_group_sig" title="airflow.decorators.task_group.task_group_sig"><code class="xref py py-obj docutils literal notranslate"><span class="pre">task_group_sig</span></code></a></p></td>
+<td><p></p></td>
 </tr>
 </tbody>
 </table>
-</div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.task_group.FParams">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.task_group.</span></span><span class="sig-name descname"><span class="pre">FParams</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/task_group.html#FParams"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.task_group.FParams" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.task_group.FReturn">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.task_group.</span></span><span class="sig-name descname"><span class="pre">FReturn</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/task_group.html#FReturn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.task_group.FReturn" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.decorators.task_group.task_group_sig">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.task_group.</span></span><span class="sig-name descname"><span class="pre">task_group_sig</span></span><a class="reference internal" href="../../../../_modules/airflow/decorators/task_group.html#task_group_sig"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.decorators.task_group.task_group_sig" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py function">
+<dt class="sig sig-object py" id="airflow.decorators.task_group.task_group">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.task_group.</span></span><span class="sig-name descname"><span class="pre">task_group</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">group_id</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.11)"><s [...]
+<dt class="sig sig-object py">
+<span class="sig-prename descclassname"><span class="pre">airflow.decorators.task_group.</span></span><span class="sig-name descname"><span class="pre">task_group</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">python_callable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">FParams</s [...]
+<dd><p>Python TaskGroup decorator.</p>
+<p>This wraps a function into an Airflow TaskGroup. When used as the
+<code class="docutils literal notranslate"><span class="pre">&#64;task_group()</span></code> form, all arguments are forwarded to the underlying
+TaskGroup class. Can be used to parametrize TaskGroup.</p>
 <dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>python_callable</strong> – Function to decorate.</p></li>
+<li><p><strong>tg_kwargs</strong> – Keyword arguments for the TaskGroup object.</p></li>
 </ul>
 </dd>
 </dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+</dd></dl>
+
 </div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.decorators.short_circuit" href="../short_circuit/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="Best Practices" href="../../../../best-practices.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +885,18 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.decorators.task_group</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#functions">Functions</a></li>
+<li><a class="reference internal" href="#attributes">Attributes</a><ul>
+<li><a class="reference internal" href="#airflow.decorators.task_group.FParams"><code class="docutils literal notranslate"><span class="pre">FParams</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.task_group.FReturn"><code class="docutils literal notranslate"><span class="pre">FReturn</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.task_group.task_group_sig"><code class="docutils literal notranslate"><span class="pre">task_group_sig</span></code></a></li>
+<li><a class="reference internal" href="#airflow.decorators.task_group.task_group"><code class="docutils literal notranslate"><span class="pre">task_group()</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +921,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/decorators/task_group/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1055,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_bash_operator/index.html
similarity index 66%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_bash_operator/index.html
index 110c29effa..fed5b2f8a6 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_bash_operator/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.example_dags.example_bash_operator &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" />
+            <link rel="prev" title="airflow.example_dags.subdags.subdag" href="../subdags/subdag/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/example_dags/example_bash_operator/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,117 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#dags">DAGs</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping_with_no_taskflow_operators/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping_with_no_taskflow_operators</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_trigger_ui/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_trigger_ui</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_ui_tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_ui_tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensor_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensor_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensors/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensors</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown_taskflow/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown_taskflow</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dagbag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dagbag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/param/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.param</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#operators">Operators</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instances">Task Instances</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instance-keys">Task Instance Keys</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#hooks">Hooks</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-airflow-utilities">Public Airflow utilities</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-exceptions">Public Exceptions</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +519,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +563,117 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#dags">DAGs</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_datetime_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping_with_no_taskflow_operators/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping_with_no_taskflow_operators</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_trigger_ui/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_trigger_ui</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_ui_tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_ui_tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensor_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensor_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensors/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensors</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown_taskflow/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown_taskflow</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dagbag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dagbag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/param/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.param</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#operators">Operators</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instances">Task Instances</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instance-keys">Task Instance Keys</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#hooks">Hooks</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-airflow-utilities">Public Airflow utilities</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-exceptions">Public Exceptions</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +762,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +779,30 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+  <div class="section" id="module-airflow.example_dags.example_bash_operator">
+<span id="airflow-example-dags-example-bash-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_bash_operator" title="airflow.example_dags.example_bash_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_bash_operator" title="Permalink to this heading">¶</a></h1>
+<p>Example DAG demonstrating the usage of the BashOperator.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_bash_operator.run_this_last">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_bash_operator.</span></span><span class="sig-name descname"><span class="pre">run_this_last</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_bash_operator.html#run_this_last"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_bash_operator.run_this_last" title="Permalink to t [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_bash_operator.this_will_skip">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_bash_operator.</span></span><span class="sig-name descname"><span class="pre">this_will_skip</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_bash_operator.html#this_will_skip"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_bash_operator.this_will_skip" title="Permalink t [...]
+<dd></dd></dl>
+
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.example_dags.subdags.subdag" href="../subdags/subdag/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.example_dags.example_branch_datetime_operator" href="../example_branch_datetime_operator/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +872,12 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.run_this_last"><code class="docutils literal notranslate"><span class="pre">run_this_last</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_bash_operator.this_will_skip"><code class="docutils literal notranslate"><span class="pre">this_will_skip</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +902,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_bash_operator/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1036,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_branch_datetime_operator/index.html
similarity index 59%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_branch_datetime_operator/index.html
index 110c29effa..5512a7ef33 100644
--- a/docs-archive/docker-stack/changelog.html
+++ b/docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_branch_datetime_operator/index.html
@@ -9,19 +9,20 @@
 <head>
         <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1">
-        <title>Dockerfile Changelog &mdash; docker-stack Documentation</title>
-    <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" />
-            <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main.min.css" />
-            <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
-            <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" />
-            <link rel="shortcut icon" href="_static/pin_32.png"/>
-            <link rel="index" title="Index" href="genindex.html" />
-            <link rel="search" title="Search" href="search.html" />
-            <link rel="next" title="Recipes" href="recipes.html" />
-            <link rel="prev" title="Entrypoint" href="entrypoint.html" />
-
-    <link rel="canonical" href="https://airflow.apache.org/docs/docker-stack/stable/changelog.html" />
+        <title>airflow.example_dags.example_branch_datetime_operator &mdash; Airflow Documentation</title>
+    <link rel="stylesheet" href="../../../../_static/_gen/css/main.min.css" type="text/css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/copybutton.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/_gen/css/main-custom.min.css" />
+            <link rel="stylesheet" type="text/css" href="../../../../_static/graphviz.css" />
+            <link rel="shortcut icon" href="../../../../_static/pin_32.png"/>
+            <link rel="index" title="Index" href="../../../../genindex.html" />
+            <link rel="search" title="Search" href="../../../../search.html" />
+            <link rel="next" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" />
+            <link rel="prev" title="airflow.example_dags.example_bash_operator" href="../example_bash_operator/index.html" />
+
+    <link rel="canonical" href="https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/example_dags/example_branch_datetime_operator/index.html" />
 
     <!-- Matomo -->
     <script>
@@ -283,8 +284,21 @@
             <div class="content-drawer">
                 <div class="td-sidebar">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -314,27 +328,127 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#dags">DAGs</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping_with_no_taskflow_operators/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping_with_no_taskflow_operators</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_trigger_ui/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_trigger_ui</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_ui_tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_ui_tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensor_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensor_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensors/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensors</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown_taskflow/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown_taskflow</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dagbag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dagbag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/param/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.param</span></code></a></li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#operators">Operators</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instances">Task Instances</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instance-keys">Task Instance Keys</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#hooks">Hooks</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-airflow-utilities">Public Airflow utilities</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-exceptions">Public Exceptions</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -415,8 +529,21 @@
             
     <div class="td-sidebar desktop-only d-print-none">
 
+<div id="docs-version-selector" class="docs-version-selector sidebar__version-selector">
+    <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true"
+       aria-expanded="false">
+        <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.7.0</span>
+    </a>
+    <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
+
+    </div>
+    <script type="application/x-template" id="version-item-template">
+        <a class="dropdown-item"></a>
+    </script>
+</div>
+
 <div class="searchb-box">
-    <form class="search-form" action="search.html" method="get">
+    <form class="search-form" action="../../../../search.html" method="get">
         <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16">
         <input type="hidden" name="check_keywords" value="yes" />
         <input type="hidden" name="area" value="default" />
@@ -446,27 +573,127 @@
 
 
 <div class="toctree" role="navigation" aria-label="main navigation">
-    <ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li>
-<li class="toctree-l1"><a class="reference internal" href="build.html">Building the image</a></li>
-<li class="toctree-l1"><a class="reference internal" href="entrypoint.html">Entrypoint</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">Dockerfile Changelog</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+    <p class="caption" role="heading"><span class="caption-text">Content</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../../../../index.html">Overview</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../start.html">Quick Start</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../installation/index.html">Installation of Airflow™</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../security/index.html">Security</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../tutorial/index.html">Tutorials</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../howto/index.html">How-to Guides</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../ui.html">UI / Screenshots</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../core-concepts/index.html">Core Concepts</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../authoring-and-scheduling/index.html">Authoring and Scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../administration-and-deployment/index.html">Administration and Deployment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../integration.html">Integration</a></li>
+<li class="toctree-l1 current"><a class="reference internal" href="../../../../public-airflow-interface.html">Public Interface of Airflow</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-airflow-public-interfaces">Using Airflow Public Interfaces</a></li>
+<li class="toctree-l2 current"><a class="reference internal" href="../../../../public-airflow-interface.html#using-the-public-interface-for-dag-authors">Using the Public Interface for DAG Authors</a><ul class="current">
+<li class="toctree-l3 current"><a class="reference internal" href="../../../../public-airflow-interface.html#dags">DAGs</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a><ul class="current">
+<li class="toctree-l5"><a class="reference internal" href="../index.html#subpackages">Subpackages</a></li>
+<li class="toctree-l5 current"><a class="reference internal" href="../index.html#submodules">Submodules</a><ul class="current">
+<li class="toctree-l6"><a class="reference internal" href="../example_bash_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_bash_operator</span></code></a></li>
+<li class="toctree-l6 current"><a class="current reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li class="toctree-l7"><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li class="toctree-l8"><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
-<li class="toctree-l1"><a class="reference internal" href="recipes.html">Recipes</a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_day_of_week_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_day_of_week_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_labels/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_labels</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_operator_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_operator_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_branch_python_dop_operator_3/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_python_dop_operator_3</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_complex/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_complex</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_datasets/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_datasets</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_dynamic_task_mapping_with_no_taskflow_operators/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_dynamic_task_mapping_with_no_taskflow_operators</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_external_task_marker_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_external_task_marker_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_latest_only_with_trigger/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_latest_only_with_trigger</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_local_kubernetes_executor/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_local_kubernetes_executor</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_nested_branch_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_nested_branch_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_trigger_ui/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_trigger_ui</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_params_ui_tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_params_ui_tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_passing_params_via_test_command/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_passing_params_via_test_command</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_python_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_python_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensor_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensor_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_sensors/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_sensors</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_setup_teardown_taskflow/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_setup_teardown_taskflow</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_short_circuit_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_short_circuit_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_skip_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_skip_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_subdag_operator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_subdag_operator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_task_group_decorator/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_task_group_decorator</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_time_delta_sensor_async/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_time_delta_sensor_async</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_controller_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_controller_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_trigger_target_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_trigger_target_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcom/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcom</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../example_xcomargs/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_xcomargs</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_dag</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api</span></code></a></li>
+<li class="toctree-l6"><a class="reference internal" href="../tutorial_taskflow_api_virtualenv/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.tutorial_taskflow_api_virtualenv</span></code></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/dagbag/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.dagbag</span></code></a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../models/param/index.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.models.param</span></code></a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#operators">Operators</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instances">Task Instances</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#task-instance-keys">Task Instance Keys</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#hooks">Hooks</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-airflow-utilities">Public Airflow utilities</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../public-airflow-interface.html#public-exceptions">Public Exceptions</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-extend-airflow-capabilities">Using Public Interface to extend Airflow capabilities</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#using-public-interface-to-integrate-with-external-services-and-applications">Using Public Interface to integrate with external services and applications</a></li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../public-airflow-interface.html#what-is-not-part-of-the-public-interface-of-apache-airflow">What is not part of the Public Interface of Apache Airflow?</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../best-practices.html">Best Practices</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../faq.html">FAQ</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release-process.html">Release Policies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../release_notes.html">Release Notes</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../privacy_notice.html">Privacy Notice</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../project.html">Project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../license.html">License</a></li>
 </ul>
 <p class="caption" role="heading"><span class="caption-text">References</span></p>
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="build-arg-ref.html">Image build arguments reference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../operators-and-hooks-ref.html">Operators and hooks</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../cli-and-env-variables-ref.html">CLI</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../templates-ref.html">Templates</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../stable-rest-api-ref.html">Stable REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../deprecated-rest-api-ref.html">Deprecated REST API</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../configurations-ref.html">Configurations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../extra-packages-ref.html">Extra packages</a></li>
+</ul>
+<p class="caption" role="heading"><span class="caption-text">Internal DB details</span></p>
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../migrations-ref.html">Database Migrations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../../../database-erd-ref.html">Database ERD Schema</a></li>
 </ul>
 
 </div>
@@ -555,9 +782,13 @@
 
     <ul class="breadcrumb">
         
-            <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li>
+            <li class="breadcrumb-item"><a href="../../../../index.html" class="icon icon-home"> Home</a></li>
+            
+                <li class="breadcrumb-item"><a href="../../../../public-airflow-interface.html"> Public Interface of Airflow</a></li>
             
-            <li class="breadcrumb-item"><a href="changelog.html"> Dockerfile Changelog</a></li>
+                <li class="breadcrumb-item"><a href="../index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags</span></code></a></li>
+            
+            <li class="breadcrumb-item"><a href="index.html"> <code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a></li>
         
     </ul>
 </div>
@@ -568,308 +799,81 @@
                                 <div class="bodywrapper">
                                     <div class="body" role="main">
                                         
-  <blockquote>
-<div></div></blockquote>
-<div class="section" id="dockerfile-changelog">
-<h1>Dockerfile Changelog<a class="headerlink" href="#dockerfile-changelog" title="Permalink to this heading">¶</a></h1>
-<p>The <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> does not strictly follow the <a class="reference external" href="https://semver.org/">SemVer</a> approach of
-Apache Airflow when it comes to features and backwards compatibility. While Airflow code strictly
-follows it, the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is really a way to give users a conveniently packaged Airflow
-using standard container approach, so occasionally there are some changes in the building process
-or in the entrypoint of the image that require slight adaptation of how it is used or built.</p>
-<p>The Changelog below describes the changes introduced in each version of the docker images released by
-the Airflow team.</p>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>The Changelog below concerns only the convenience production images released at
-<a class="reference external" href="https://hub.docker.com/r/apache/airflow">Airflow DockerHub</a> . The images that are released
-there are usually built using the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> released together with Airflow. However, you are
-free to take latest released <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> from Airflow and use it to build an image for
-any Airflow version from the <code class="docutils literal notranslate"><span class="pre">Airflow</span> <span class="pre">2</span></code> line. There is no guarantee that it will work, but if it does,
-then you can use latest features from that image to build images for previous Airflow versions.</p>
-</dd>
-</dl>
-<div class="section" id="changes-after-publishing-the-images">
-<h2>Changes after publishing the images<a class="headerlink" href="#changes-after-publishing-the-images" title="Permalink to this heading">¶</a></h2>
-<p>Occasionally our images need to be regenerated using newer <code class="docutils literal notranslate"><span class="pre">Dockerfiles</span></code> or constraints.
-This happens when an issue is found or a breaking change is released by our dependencies
-that invalidates the already released image, and regenerating the image makes it usable again.
-While we cannot assure 100% backwards compatibility when it happens, we at least document it
-here so that users affected can find the reason for the changes.</p>
-<table class="docutils align-default">
-<colgroup>
-<col style="width: 10%" />
-<col style="width: 14%" />
-<col style="width: 28%" />
-<col style="width: 16%" />
-<col style="width: 32%" />
-</colgroup>
-<thead>
-<tr class="row-odd"><th class="head"><p>Date</p></th>
-<th class="head"><p>Affected images</p></th>
-<th class="head"><p>Potentially breaking change</p></th>
-<th class="head"><p>Reason</p></th>
-<th class="head"><p>Link to Pull Request</p></th>
-</tr>
-</thead>
-<tbody>
-<tr class="row-even"><td><p>17 June 2022</p></td>
-<td><p>2.2.5</p>
-<p>2.3.0-2.3.2</p>
-</td>
-<td><ul class="simple">
-<li><p>The <code class="docutils literal notranslate"><span class="pre">Authlib</span></code> library downgraded
-from 1.0.1 to 0.15.5 version</p></li>
-</ul>
-</td>
-<td><p>Flask App Builder
-not compatible with
-Authlib &gt;= 1.0.0</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/24516">https://github.com/apache/airflow/pull/24516</a></p></td>
-</tr>
-<tr class="row-odd"><td><p>18 Jan 2022</p></td>
-<td><p>All 2.2.*, 2.1.*</p></td>
-<td><ul class="simple">
-<li><p>The AIRFLOW_GID 500 was removed</p></li>
-<li><p>MySQL <code class="docutils literal notranslate"><span class="pre">apt</span></code> repository key changed.</p></li>
-</ul>
-</td>
-<td><p>MySQL changed keys
-to sign their packages
-on 17 Jan 2022</p></td>
-<td><p><a class="reference external" href="https://github.com/apache/airflow/pull/20912">https://github.com/apache/airflow/pull/20912</a></p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section" id="airflow-2-6">
-<h2>Airflow 2.6<a class="headerlink" href="#airflow-2-6" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.6.3</p>
-<ul>
-<li><p>Add <code class="docutils literal notranslate"><span class="pre">libgeos-dev</span></code> library to runtime PROD image as it is required by BigQuery library on ARM image</p></li>
-</ul>
-</li>
-<li><p>2.6.0</p>
-<ul>
-<li><p>Snowflake provider installed by default</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5-1">
-<h2>Airflow 2.5.1<a class="headerlink" href="#airflow-2-5-1" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.1</p>
-<ul>
-<li><p>The ARM experimental image adds support for MSSQL</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-5">
-<h2>Airflow 2.5<a class="headerlink" href="#airflow-2-5" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.5.0</p>
-<ul>
-<li><p>The docker CLI binary is now added to the images by default (available on PATH). Version 20.10.9 is used.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-4">
-<h2>Airflow 2.4<a class="headerlink" href="#airflow-2-4" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.4.0</p>
-<ul>
-<li><p>You can specify additional <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span></code> flags when you build the image via <code class="docutils literal notranslate"><span class="pre">ADDITIONAL_PIP_INSTALL_FLAGS</span></code>
-build arg.</p></li>
-<li><p>Support for <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> was dropped, including the possibility of building customized images as
-<code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> reached end of life.</p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-3">
-<h2>Airflow 2.3<a class="headerlink" href="#airflow-2-3" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.3.0</p>
-<ul>
-<li><p>Airflow 2.3 <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> is now better optimized for caching and “standalone” which means that you
-can copy <strong>just</strong> the <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code> to any folder and start building custom images. This,
-however, requires <a class="reference external" href="https://docs.docker.com/develop/develop-images/build_enhancements/">Buildkit</a>
-to build the image because we started using features that are only available in <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code>.
-This can be done by setting <code class="docutils literal notranslate"><span class="pre">DOCKER_BUILDKIT=1</span></code> as an environment variable
-or by installing <a class="reference external" href="https://docs.docker.com/buildx/working-with-buildx/">the buildx plugin</a>
-and running <code class="docutils literal notranslate"><span class="pre">docker</span> <span class="pre">buildx</span> <span class="pre">build</span></code> command.</p></li>
-<li><p>MySQL is experimentally supported on ARM through MariaDB client library</p></li>
-<li><p>Add Python 3.10 support</p></li>
-<li><p>Switch to <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Bullseye</span></code> based images. <code class="docutils literal notranslate"><span class="pre">Debian</span> <span class="pre">Buster</span></code> is deprecated and only available for
-customized image building.</p></li>
-<li><p>Add Multi-Platform support (AMD64/ARM64) in order to accommodate MacOS M1 users</p></li>
-<li><p>Build parameters which control if packages and Airflow should be installed from context file were
-unified</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_PYPI</span></code> arg was removed - it is automatically detected now.</p></li>
-<li><p>The <code class="docutils literal notranslate"><span class="pre">INSTALL_FROM_DOCKER_CONTEXT_FILES</span></code> arg changed to <code class="docutils literal notranslate"><span class="pre">INSTALL_PACKAGES_FROM_CONTEXT</span></code></p></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-2">
-<h2>Airflow 2.2<a class="headerlink" href="#airflow-2-2" title="Permalink to this heading">¶</a></h2>
-<ul class="simple">
-<li><p>2.2.4
-* Add support for both <code class="docutils literal notranslate"><span class="pre">.piprc</span></code> and <code class="docutils literal notranslate"><span class="pre">pip.conf</span></code> customizations
-* Add ArtifactHub labels for better discovery of the images
-* Update default Python image to be 3.7
-* Build images with <code class="docutils literal notranslate"><span class="pre">Buildkit</span></code> (optional)
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error</p></li>
-<li><p>2.2.3
-* No changes</p></li>
-<li><p>2.2.2
-* No changes</p></li>
-<li><p>2.2.1
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>2.2.0
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Fix warm shutdown for celery worker (signal propagation)
-* Add Oauth libraries to PROD images
-* Add Python 3.9 support</p></li>
-</ul>
-</div>
-<div class="section" id="airflow-2-1">
-<h2>Airflow 2.1<a class="headerlink" href="#airflow-2-1" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were subtle changes in the behaviour of some 2.1 images due to that (more details below)
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a></p>
-</li>
-</ul>
-<dl class="field-list simple">
-<dt class="field-odd">note</dt>
-<dd class="field-odd"><p>that the changes below were valid before image refreshing on 18 Feb 2022.
-Since all the images were refreshed on 18 Feb with the same <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-as 2.1.4, the changes 2.1.1 -&gt; 2.1.3 are
-effectively applied to all the images in 2.1.* line.
-The images refreshed have also those fixes added:</p>
-</dd>
-</dl>
-<ul class="simple">
-<li><p>All 2.1.* image versions refreshed on 18 Feb 2022 have those fixes applied:
-* Fix building the image on Azure with <code class="docutils literal notranslate"><span class="pre">text</span> <span class="pre">file</span> <span class="pre">busy</span></code> error
-* Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error
-* Remove AIRFLOW_GID (5000) from Airflow images (potentially breaking change for users using it)
-* Added warnings for Quick-start docker compose
-* Add Oauth libraries to PROD images</p></li>
-</ul>
-<p>Original image Changelog (before the refresh on 18 Feb 2022):</p>
-<ul class="simple">
-<li><dl class="simple">
-<dt>2.1.4</dt><dd><ul>
-<li><p>Workaround the problem with <code class="docutils literal notranslate"><span class="pre">libstdcpp</span></code> TLS error</p></li>
-<li><p>fixed detection of port number in connection URL</p></li>
-<li><p>Improve warnings for quick-start-docker compose</p></li>
-<li><p>Fix warm shutdown for celery worker (signal propagation)</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.3</dt><dd><ul>
-<li><p>fixed auto-creation of user to use non-deprecated <code class="docutils literal notranslate"><span class="pre">create</span> <span class="pre">user</span></code> rather than <code class="docutils literal notranslate"><span class="pre">user_create</span></code></p></li>
-<li><p>remove waiting for celery backend for <code class="docutils literal notranslate"><span class="pre">worker</span></code> and <code class="docutils literal notranslate"><span class="pre">flower</span></code> commands rather than <code class="docutils literal notranslate"><span class="pre">scheduler</span></code> and <code class="docutils literal notranslate"><span class="pre">celery</span></code> only</p></li>
-<li><p>remove deprecated <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">upgradedb</span></code> command from Airflow 1.10 in case upgrade is requested</p></li>
-<li><p>Add Python 3.9 support</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.2</dt><dd><ul>
-<li><p>No changes</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.1</dt><dd><ul>
-<li><p>Fix failure of lack of default commands (failed when no commands were passed)</p></li>
-<li><p>Added <code class="docutils literal notranslate"><span class="pre">_PIP_ADDITIONAL_REQUIREMENTS</span></code> development feature</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.1.0</dt><dd><ul>
-<li><p>Unset default <code class="docutils literal notranslate"><span class="pre">PIP_USER</span></code> variable - which caused PythonVirtualEnv to fail</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section" id="airflow-2-0">
-<h2>Airflow 2.0<a class="headerlink" href="#airflow-2-0" title="Permalink to this heading">¶</a></h2>
-<ul>
-<li><p>MySQL changed the keys to sign their packages on 17 Feb 2022. This caused all released images
-to fail when being extended. As result, on 18 Feb 2021 we re-released all
-the <code class="docutils literal notranslate"><span class="pre">2.2</span></code> and <code class="docutils literal notranslate"><span class="pre">2.1</span></code> images with latest versions of <code class="docutils literal notranslate"><span class="pre">Dockerfile</span></code>
-containing the new signing key.</p>
-<p>There were no changes in the behaviour of 2.0.2 image due to that
-Detailed <a class="reference external" href="https://github.com/apache/airflow/issues/20911">issue here</a> .
-Only 2.0.2 image was regenerated, as 2.0.1 and 2.0.0 versions are hardly used and it is unlikely someone
-would like to extend those images. Extending 2.0.1 and 2.0.0 images will lead to failures of “missing key”.</p>
-</li>
-<li><dl class="simple">
-<dt>2.0.2</dt><dd><ul class="simple">
-<li><p>Set correct PYTHONPATH for <code class="docutils literal notranslate"><span class="pre">root</span></code> user. Allows to run the image as root</p></li>
-<li><p>Warn if the deprecated 5000 group ID was used for airflow user when running the image
-(should be 0 for the OpenShift compatibility). Fails if the group 5000 was used with any other user
-(it would not work anyway but with cryptic errors)</p></li>
-<li><p>Set umask as 002 by default, so that you can actually change the user id used to run the image
-(required for OpenShift compatibility)</p></li>
-<li><p>Skip checking the DB and celery backend if CONNECTION_CHECK_MAX_COUNT is equal to 0</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.1</dt><dd><ul class="simple">
-<li><p>Avoid reverse IP lookup when checking DB availability. This helped to solve long delays on misconfigured
-docker engines</p></li>
-<li><p>Add auto-detection of redis and amqp broker ports</p></li>
-<li><p>Fixed detection of all user/password combinations in URLs - helps in auto-detecting ports and testing
-connectivity</p></li>
-<li><p>Add possibility to create Admin user automatically when entering the image</p></li>
-<li><p>Automatically create system user when different user than <code class="docutils literal notranslate"><span class="pre">airflow</span></code> is used. Needed for OpenShift
-compatibility</p></li>
-<li><p>Allows to exec to <code class="docutils literal notranslate"><span class="pre">bash</span></code> or <code class="docutils literal notranslate"><span class="pre">python</span></code> if specified as parameters</p></li>
-<li><p>Remove <code class="docutils literal notranslate"><span class="pre">airflow</span></code> command if it is specified as first parameter of the <code class="docutils literal notranslate"><span class="pre">run</span></code> command</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-<li><dl class="simple">
-<dt>2.0.0</dt><dd><ul class="simple">
-<li><p>Initial release of the image based on Debian Buster</p></li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
+  <div class="section" id="module-airflow.example_dags.example_branch_datetime_operator">
+<span id="airflow-example-dags-example-branch-datetime-operator"></span><h1><a class="reference internal" href="#module-airflow.example_dags.example_branch_datetime_operator" title="airflow.example_dags.example_branch_datetime_operator"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><a class="headerlink" href="#module-airflow.example_dags.example_branch_datetime_operator" title="Permalink  [...]
+<p>Example DAG demonstrating the usage of DateTimeBranchOperator with datetime as well as time objects as
+targets.</p>
+<div class="section" id="module-contents">
+<h2>Module Contents<a class="headerlink" href="#module-contents" title="Permalink to this heading">¶</a></h2>
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag1" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_11">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_11</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_11"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_21">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_21</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_21"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond1">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond1</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond1"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond1" title="Perma [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag2">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag2</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag2"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag2" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_12">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_12</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_12"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_22">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_22</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_22"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond2">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond2</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond2"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond2" title="Perma [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.dag3">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">dag3</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#dag3"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.dag3" title="Permalin [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_13">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_13</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_13"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.empty_task_23">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">empty_task_23</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#empty_task_23"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.emp [...]
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="airflow.example_dags.example_branch_datetime_operator.cond3">
+<span class="sig-prename descclassname"><span class="pre">airflow.example_dags.example_branch_datetime_operator.</span></span><span class="sig-name descname"><span class="pre">cond3</span></span><a class="reference internal" href="../../../../_modules/airflow/example_dags/example_branch_datetime_operator.html#cond3"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#airflow.example_dags.example_branch_datetime_operator.cond3" title="Perma [...]
+<dd></dd></dl>
+
 </div>
 </div>
 
 
     <div class="pager" role="navigation" aria-label="related navigation">
-            <a rel="prev" title="Entrypoint" href="entrypoint.html" >
+            <a rel="prev" title="airflow.example_dags.example_bash_operator" href="../example_bash_operator/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button>
             </a>
-            <a rel="next" title="Recipes" href="recipes.html" >
+            <a rel="next" title="airflow.example_dags.example_branch_day_of_week_operator" href="../example_branch_day_of_week_operator/index.html" >
                 <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button>
             </a>
     </div>
@@ -939,16 +943,22 @@ compatibility</p></li>
     <nav class="wy-nav-side-toc">
         <div class="wy-menu-vertical">
             <ul>
-<li><a class="reference internal" href="#">Dockerfile Changelog</a><ul>
-<li><a class="reference internal" href="#changes-after-publishing-the-images">Changes after publishing the images</a></li>
-<li><a class="reference internal" href="#airflow-2-6">Airflow 2.6</a></li>
-<li><a class="reference internal" href="#airflow-2-5-1">Airflow 2.5.1</a></li>
-<li><a class="reference internal" href="#airflow-2-5">Airflow 2.5</a></li>
-<li><a class="reference internal" href="#airflow-2-4">Airflow 2.4</a></li>
-<li><a class="reference internal" href="#airflow-2-3">Airflow 2.3</a></li>
-<li><a class="reference internal" href="#airflow-2-2">Airflow 2.2</a></li>
-<li><a class="reference internal" href="#airflow-2-1">Airflow 2.1</a></li>
-<li><a class="reference internal" href="#airflow-2-0">Airflow 2.0</a></li>
+<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">airflow.example_dags.example_branch_datetime_operator</span></code></a><ul>
+<li><a class="reference internal" href="#module-contents">Module Contents</a><ul>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag1"><code class="docutils literal notranslate"><span class="pre">dag1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_11"><code class="docutils literal notranslate"><span class="pre">empty_task_11</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_21"><code class="docutils literal notranslate"><span class="pre">empty_task_21</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond1"><code class="docutils literal notranslate"><span class="pre">cond1</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag2"><code class="docutils literal notranslate"><span class="pre">dag2</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_12"><code class="docutils literal notranslate"><span class="pre">empty_task_12</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_22"><code class="docutils literal notranslate"><span class="pre">empty_task_22</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond2"><code class="docutils literal notranslate"><span class="pre">cond2</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.dag3"><code class="docutils literal notranslate"><span class="pre">dag3</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_13"><code class="docutils literal notranslate"><span class="pre">empty_task_13</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.empty_task_23"><code class="docutils literal notranslate"><span class="pre">empty_task_23</span></code></a></li>
+<li><a class="reference internal" href="#airflow.example_dags.example_branch_datetime_operator.cond3"><code class="docutils literal notranslate"><span class="pre">cond3</span></code></a></li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -973,7 +983,7 @@ compatibility</p></li>
             
         
         <div class="base-layout--button">
-            <a href="https://github.com/apache/airflow/edit/main/docs/docker-stack/changelog.rst" rel="nofollow">
+            <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/_api/airflow/example_dags/example_branch_datetime_operator/index.rst" rel="nofollow">
 
                 <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed">
                     <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30">
@@ -1107,19 +1117,20 @@ compatibility</p></li>
         </span>
     </div>
 </footer>
-    <script type="text/javascript" src="_static/_gen/js/docs.js"></script>
-    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="../../../../_static/_gen/js/docs.js"></script>
+    <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
     <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
-        <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
-        <script src="_static/jquery.js"></script>
-        <script src="_static/underscore.js"></script>
-        <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
-        <script src="_static/doctools.js"></script>
-        <script src="_static/sphinx_highlight.js"></script>
-        <script src="_static/clipboard.min.js"></script>
-        <script src="_static/copybutton.js"></script>
-        <script src="_static/js/globaltoc.js"></script>
+        <script data-url_root="../../../../" id="documentation_options" src="../../../../_static/documentation_options.js"></script>
+        <script src="../../../../_static/jquery.js"></script>
+        <script src="../../../../_static/underscore.js"></script>
+        <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js"></script>
+        <script src="../../../../_static/doctools.js"></script>
+        <script src="../../../../_static/sphinx_highlight.js"></script>
+        <script src="../../../../_static/clipboard.min.js"></script>
+        <script src="../../../../_static/copybutton.js"></script>
+        <script src="../../../../_static/js/globaltoc.js"></script>
+        <script src="../../../../_static/gh-jira-links.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs-archive/docker-stack/changelog.html b/docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_branch_day_of_week_operator/index.html
similarity index 66%
copy from docs-archive/docker-stack/changelog.html
copy to docs-archive/apache-airflow/2.7.0/_api/airflow/example_dags/example_branch_day_of_week_operator/index.html
index 110c29effa..c009a2bb4d 100644
--- a/docs-archive/docker-stack/changelog.html
... 347566 lines suppressed ...