This is an automated email from the ASF dual-hosted git repository.
jedcunningham pushed a change to branch v2-2-stable
in repository https://gitbox.apache.org/repos/asf/airflow.git.
from 9ac7428 Add Changelog for 2.2.2rc2
add afb67a8 Bump version to 2.2.3
add 309f34d Added autogenerated _docker_Compose.env file to .rat_excludes
add fb7a73b Fix function name in example timetable (#19735)
add 4dfdf7c Update Operators and Hooks doc to reflect latest (#19501)
add c45e97a Minor grammar and sentence flow corrections in pip
installation docs (#19468)
add f2929f0 Dags-in-image pod template example should not have dag mounts
(#19337)
add 3344aec Add decription on how you can customize image entrypoint
(#18915)
add a612bc8 Improve `airflow-github` dev script (#19631)
add b3b12da Fix moved data migration check for MySQL when replcation is
used (#19999)
add 317fac4 Fix labels used to find queued KubeExecutor pods (#19904)
add 76cf99a Relax timetable clas validation (#19878)
add 68555e5 Fix typo in docs link (#19837)
add 58522c7 Better ``pod_template_file`` examples (#19691)
add d34f8d3 Declare data interval fields as serializable (#19616)
add 0fc1cb2 Update deferring.rst (#19509)
add 8cebe05 Move PostgreSQL to be the first prod db listed (#19790)
add 02f9fa4 Fix IntegrityError in `DagFileProcessor.manage_slas` (#19553)
add 7982be5 Fix task instance api cannot list task instances with None
state (#19487)
add 4ba48ff ``KubernetesExecutor`` should default to template image if
used (#19484)
add 50f6e8b Add release date for when an endpoint/field is added in the
REST API (#19203)
add 22e5c48 Fix field relabeling when switching between conn types
(#19411)
add 0bd5770 Do not create dagruns for DAGs with import errors (#19367)
add 82891c7 Adds back documentation about context usage in Python/@task
(#18868)
add d53e7c8 Updating explicit arg example in TaskFlow API tutorial doc
(#18907)
add 1a5ca07 Doc: grammar check - remove a word (#18914)
add d9e7a55 Update modules_management.rst (#18948)
add 860c1ef Add DAG file processing description to Scheduler Concepts
(#18954)
add a78b2b8 Handle case of nonexistent file when preparing file path
queue (#18998)
add b0b7081 Fix typos in ``CHANGELOG.txt`` (#19012)
add 809ec10 Minor grammar tweaks in docs (#19013)
add 88b36ee Simplify "invalid TI state" message (#19029)
add c8ec1ff Rename execution date in forms and tables (#19063)
add 65d24a1 Fix: Add taskgroup tooltip to graph view (#19083)
add c6d419b Grammar mistake (#19283)
add 8da7418 Fix log timezone in task log view (#19342) (#19401)
add a431a14 Add a proper example to patch DAG (#19465)
add fc04937 Do not crash with stacktrace when task instance is missing
(#19478)
add 42cf524 Fix DAG docstrings (#19531)
add 85b106c Fix typo in Changelog (#19551)
add fbb5119 Add example SLA DAG (#19563)
add 0d4d7f1 Improve documentation for tasks run command (#19580)
add 0f2099d Expanding ``.output`` operator property information in
TaskFlow tutorial doc (#19214)
add 9da3716 Fix typo: `parsed_results` -> `parse_results` (#19588)
add 81d113f Cast macro datetime string inputs explicitly (#19592)
add 3baef17 Add upgrade note on execution_date -> run_id (#19593)
add ac8833b Fix some Changelog entries (#19604)
add 410f411 Fix log endpoint for same task (#19672)
add e6df7b4 Disclaimer in Kubernetes executor pod template (#19686)
add 011ee29 Update BranchSQLOperator doc string (#19715)
add 5485c64 docs: remove `self` parameter in the example pytest (#19763)
add 86a1ad4 Doc: Fix absolute Doc link (#19780)
add 42dab50 Update docs to reflect that changes changes to the
base_log_folder require updating other configs (#19793)
add 3b6c42e Fix typo (#19826)
add 6cb8519 Enable task run setting to be able reinitialise (#19845)
add 458847c Add information about supported OS-es for Apache Airflow
(#19855)
add ff222a4 Workaround occasional deadlocks with MSSQL (#19856)
add d3fdc90 Add a short chapter focusing on adapting secret format for
connections (#19859)
add dcfc708 Validate DagRun state is valid on assignment (#19898)
add 10e5d78 Fix "Top level Python Code" links in best practices doc
(#19913)
add c844f8f Fix possible reference to undeclared variable (#19933)
add 1705377 Add xcom clearing behaviour on task retries (#19968)
add 88d678a Avoid using Proxy in subscript type alias (#19830)
add 4172998 Context class handles deprecation (#19886)
add c915f7b Updating core example DAGs to use TaskFlow API where
applicable (#18562)
add 742c4fe Ensure the example DAGs are all working (#19355)
add 2f8594a Fix db downgrades (#19994)
add 44430b4 Fix infinite recursion on redact log (#20039)
add 486dbae update upper bound for MarkupSafe (#19953)
add 2ddb431 Lift off upper bound for MarkupSafe (#20113)
add d2eab1d fixing #19028 by moving chown to use sudo (#20114)
add 6be9609 Fix log link in gantt view (#20121)
add e627308 Fix missing dot (#20141)
add f0774be Minor touch up for async docs (#19539)
add d373325 Deferrable operators doc clarification (#20150)
add 3a39702 Bump minimum required ``alembic`` version (#20153)
add 2ad8c49 Log provider import errors as debug warnings (#20172)
add db8d78f Add changelog for 2.2.3rc1
No new revisions were added by this update.
Summary of changes:
.github/boring-cyborg.yml | 1 -
.rat-excludes | 3 +
CHANGELOG.txt | 75 +-
README.md | 23 +-
UPDATING.md | 11 +
.../api_connexion/endpoints/dag_run_endpoint.py | 8 +-
airflow/api_connexion/endpoints/log_endpoint.py | 6 +-
.../endpoints/task_instance_endpoint.py | 20 +-
airflow/api_connexion/openapi/v1.yaml | 1698 +++++++++++---------
airflow/cli/commands/task_command.py | 8 +-
airflow/config_templates/config.yml | 9 +-
airflow/config_templates/default_airflow.cfg | 9 +-
airflow/dag_processing/manager.py | 6 +-
airflow/dag_processing/processor.py | 17 +
airflow/example_dags/example_branch_operator.py | 3 +-
airflow/example_dags/example_complex.py | 3 +-
airflow/example_dags/example_dag_decorator.py | 2 +-
.../example_dags/example_kubernetes_executor.py | 237 ++-
.../example_kubernetes_executor_config.py | 172 --
airflow/example_dags/example_nested_branch_dag.py | 5 +-
.../example_passing_params_via_test_command.py | 20 +-
airflow/example_dags/example_python_operator.py | 43 +-
airflow/example_dags/example_skip_dag.py | 15 +-
.../example_sla_dag.py} | 55 +-
airflow/example_dags/example_trigger_target_dag.py | 11 +-
airflow/example_dags/example_xcom.py | 48 +-
airflow/example_dags/example_xcomargs.py | 16 +-
airflow/example_dags/plugins/workday.py | 6 +-
airflow/example_dags/test_utils.py | 29 -
airflow/executors/kubernetes_executor.py | 3 +-
airflow/kubernetes/kube_config.py | 5 +-
.../dags_in_image_template.yaml | 30 +-
.../dags_in_volume_template.yaml | 23 +-
.../git_sync_template.yaml | 17 +-
airflow/macros/__init__.py | 17 +-
...54bebd308c5f_add_trigger_table_and_task_info.py | 2 +-
.../7b2661a43ba3_taskinstance_keyed_to_dagrun.py | 4 +-
...23_add_has_import_errors_column_to_dagmodel.py} | 19 +-
...4a3141f0_make_xcom_pkey_columns_non_nullable.py | 11 +-
airflow/models/dag.py | 13 +-
airflow/models/dagrun.py | 5 +-
airflow/models/taskinstance.py | 181 +--
airflow/operators/python.py | 60 +-
airflow/operators/sql.py | 8 +-
airflow/providers_manager.py | 20 +-
airflow/serialization/serialized_objects.py | 2 +-
airflow/settings.py | 16 +-
airflow/task/task_runner/base_task_runner.py | 15 +-
airflow/task/task_runner/standard_task_runner.py | 2 +-
airflow/ti_deps/deps/valid_state_dep.py | 5 +-
airflow/triggers/base.py | 4 +-
airflow/utils/context.py | 171 ++
airflow/utils/context.pyi | 82 +
airflow/utils/db.py | 23 +-
airflow/utils/log/secrets_masker.py | 6 +-
airflow/utils/operator_helpers.py | 4 +-
airflow/utils/retries.py | 4 +-
airflow/www/forms.py | 6 +-
airflow/www/static/js/connection_form.js | 2 +-
airflow/www/static/js/graph.js | 6 +-
airflow/www/static/js/ti_log.js | 5 +-
airflow/www/templates/airflow/dags.html | 4 +-
airflow/www/views.py | 37 +-
dev/airflow-github | 44 +-
docs/apache-airflow/best-practices.rst | 8 +-
docs/apache-airflow/concepts/deferring.rst | 21 +-
docs/apache-airflow/concepts/scheduler.rst | 28 +
docs/apache-airflow/concepts/tasks.rst | 8 +
docs/apache-airflow/concepts/xcoms.rst | 3 +
docs/apache-airflow/executor/kubernetes.rst | 49 +-
docs/apache-airflow/howto/set-up-database.rst | 87 +-
docs/apache-airflow/howto/timetable.rst | 8 +-
.../img/dag_file_processing_diagram.png | Bin 0 -> 263825 bytes
.../installation/installing-from-pypi.rst | 12 +-
docs/apache-airflow/installation/prerequisites.rst | 9 +
.../logging-monitoring/logging-tasks.rst | 2 +-
docs/apache-airflow/migrations-ref.rst | 4 +-
docs/apache-airflow/modules_management.rst | 2 +-
docs/apache-airflow/operators-and-hooks-ref.rst | 23 +-
.../security/secrets/secrets-backend/index.rst | 13 +
docs/apache-airflow/templates-ref.rst | 2 +-
docs/apache-airflow/tutorial.rst | 10 +-
docs/apache-airflow/tutorial_taskflow_api.rst | 183 ++-
.../extending/add-apt-packages/Dockerfile | 2 +-
.../add-build-essential-extend/Dockerfile | 2 +-
.../extending/add-providers/Dockerfile | 2 +-
.../extending/add-pypi-packages/Dockerfile | 2 +-
.../extending/embedding-dags/Dockerfile | 2 +-
.../extending/writable-directory/Dockerfile | 2 +-
.../restricted/restricted_environments.sh | 4 +-
docs/docker-stack/entrypoint.rst | 80 +-
setup.cfg | 4 +-
setup.py | 2 +-
.../endpoints/test_dag_run_endpoint.py | 19 +
tests/api_connexion/endpoints/test_log_endpoint.py | 13 +
.../endpoints/test_task_instance_endpoint.py | 39 +-
tests/dag_processing/test_manager.py | 28 +
tests/dag_processing/test_processor.py | 67 +-
tests/executors/test_kubernetes_executor.py | 55 +
tests/jobs/test_local_task_job.py | 6 +-
tests/kubernetes/test_pod_generator.py | 22 +-
tests/macros/test_macros.py | 90 ++
tests/models/test_dag.py | 67 +-
tests/models/test_taskinstance.py | 12 +-
tests/operators/test_python.py | 39 +-
tests/providers/amazon/aws/sensors/test_s3_key.py | 4 +-
.../papermill/operators/test_papermill.py | 4 +-
tests/task/task_runner/test_base_task_runner.py | 11 +-
tests/www/views/test_views_rendered.py | 18 +-
tests/www/views/test_views_tasks.py | 10 +-
110 files changed, 2799 insertions(+), 1694 deletions(-)
delete mode 100644 airflow/example_dags/example_kubernetes_executor_config.py
copy airflow/{providers/singularity/example_dags/example_singularity.py =>
example_dags/example_sla_dag.py} (50%)
delete mode 100644 airflow/example_dags/test_utils.py
copy airflow/migrations/versions/{561833c1c74b_add_password_column_to_user.py
=> be2bfac3da23_add_has_import_errors_column_to_dagmodel.py} (68%)
create mode 100644 airflow/utils/context.py
create mode 100644 airflow/utils/context.pyi
create mode 100644 docs/apache-airflow/img/dag_file_processing_diagram.png
create mode 100644 tests/macros/test_macros.py