This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a change to tag nightly-master
in repository https://gitbox.apache.org/repos/asf/airflow.git.
*** WARNING: tag nightly-master was modified! ***
from 4d74ac2 (commit)
to cb5430d (commit)
from 4d74ac2 Increase typing for Apache and http provider package (#9729)
add 89fe5fe improve typing for datadog provider (#9775)
add 5013fda Add drop_partition functionality for HiveMetastoreHook (#9472)
add 9126f70 Deprecate experimental API (#9888)
add a0bde8e Make Secret Backend docs clearer about Variable & Connection
View (#8913)
add 1a32c45 Don't Update Serialized DAGs in DB if DAG didn't change
(#9850)
add 84b85d8 Update Serialized DAGs in Webserver when DAGs are Updated
(#9851)
add de9eaeb Constraint files are now maintained automatically (#9889)
add 840799d Improve KubernetesPodOperator guide (#9079)
add e7c87fe Refactor AwsBaseHook._get_credentials (#9878)
add fc8d38d improve typing for openfaas provider (#9883)
add d7c996c Add new committers: Ry Walker & Leah Cole to project.rst
(#9892)
add 9c518fe TimeSensor should respect DAG timezone (#9882)
add 273e28c UX Enhancement: Separate actions from links in DAG navigation
(#9894)
add 3064811 Use warning directive in deprecation warning (#9890)
add 560e0b5 Pin google-cloud-container to <2 (#9901)
add c8c52e6 Remove type hint causing DeprecationWarning in Firestore
operators (#9819)
add 1cfdebf Fix insert_job method of BigQueryHook (#9899)
add 7dd5c11 Simplify pull request template (#9896)
add 95632ce Fix dag.clear usages after change from #9824 (#9909)
add eb1aedd Add unit tests for CassandraTableSensor,
CassandraRecordSensor and WebHdfsSensor (#9874)
add d5d119b Increase typing coverage for Elasticsearch (#9911)
add bff7137 Add function to get current context (#9631)
add b823f8a Use pipe pylint result to sort -u for error deduplication
(#9893)
add 4eddce2 Add typing for grpc provider (#9884)
add 5eacc16 Add support for impersonation in GCP hooks (#9915)
add 8a405d2 [AIRFLOW-6931] Fixed migrations to find all dependencies for
MSSQL (#9891)
add 719ae2b Dump Pod as YAML in logs for KubernetesPodOperator (#9895)
add 46e34ab Import ABC from collections.abc (#9649)
add 508d7d2 Tests are cancelled if any of faster checks fail (#9917)
add c460529 Postgres tests were skipped by mistake (#9923)
add c4244e1 Fix calling `get_client` in BigQueryHook.table_exists (#9916)
add ddeea33 Nightly tag was not pushed on scheduled run (#9924)
add f60940d Add unit test for test_sql_to_gcs (#9920)
add 6d612ef Allows to configure logging for third-party libraries (#9657)
add 040fb1d point go client mod path to new repo (#9922)
add 1427e4a Update Spark submit operator for Spark 3 support (#8730)
add cd160b9 Shorter/more meaningful header for official images (#9925)
add 24a951e Breeze / KinD - support earlier k8s versions, fix recreate
and kubectl versioning (#9905)
add c2db0df More strict rules in mypy (#9705) (#9906)
add ac93419 Add response_filter parameter to SimpleHttpOperator (#9885)
add 7b9e8e0 Python base image version is retrieved in the right place
(#9931)
add a9c871b Clean up tmp directory when exiting from breeze shell (#9930)
add e86d753 Pin github checkout action to v2 (#9938)
add 708197b Improve command examples in docs (#9934)
add 39a0288 Add Google Authentication for experimental API (#9848)
add 33f0cd2 apply_default keeps the function signature for mypy (#9784)
add 867bc44 Add type annotations to providers/vertica (#9936)
add 5cfacfc Add Nielsen to Airflow users list (#9954)
add e90271e Fix link to CI.rst document (#9953)
add 3a1dd0b Improve signature for core operaotrs (#9944)
add ef98edf Add more information about using GoogleAdsHook (#9951)
add 243b704 Add DateTimeSensor (#9697)
add 4112723 Fix CI: Don't add & fetch remote if source branch == target
branch (#9961)
add 458d7d4 Fix CI: Fetch target only when source repo != target repo
(#9962)
add 0bf330b Add get_blobs_list method to WasbHook (#9950)
add 6d7739b Fix OpenShift Guidelines link in IMAGES.rst (#9978)
add 42543c5 Add Badges for Airflow Docker (#9979)
add c839705 Fix typo in airflow/cli/cli_parser.py (#9980)
add fc03304 Fix various typos in airflow/cli/commands (#9983)
add 8b10a4b Stop using start_date in default_args in example_dags (#9982)
add 2719fcf Bump actions/setup-python version to 2 (#9984)
add 47cab5f Bump tableauserverclient to 0.12 (#9988)
add 7cafa59 Relax requirement to allow latest version of flask-caching
(#9989)
add 76c60af Relax requirement to allow latest version of jinja2 (#9991)
add 926aa1b Relax requirement to allow latest version of tenacity (#9992)
add c438812 Bump mysqlclient to 2.0.1 (#9987)
add 2f73974 Revert "Bump mysqlclient to 2.0.1 (#9987)" (#9997)
add 81b65be Remove unnecessary environment variable from CI workflow
(#9998)
add d3d918c Fix typo in api_connexion/openapi/v1.yaml (#9986)
add ffcd060 Avoid sharing session with RenderedTaskInstanceFields write
and delete (#9993)
add a7204a4 Adds separate scheduled-only workflow to cancel duplicates
(#9999)
add b31523f Fix typos in README.md (#10000)
add ab07891 Add missing x-openapi-router-controller to DAG Run endpoint
(#9945)
add 7cc1c8b Updates the slack WebClient call to use the instance variable
- token (#9995)
add 7d24b08 Stop using start_date in default_args in example_dags (2)
(#9985)
add cb5430d Fix cron schedule on cancelling workflow (#10002)
No new revisions were added by this update.
Summary of changes:
.dockerignore | 1 -
.github/PULL_REQUEST_TEMPLATE.md | 26 +-
.github/mergeable.yml | 7 -
.../workflows/cancel_duplicate_workflows.yml | 21 +-
.github/workflows/ci.yml | 220 ++++++----
.pre-commit-config.yaml | 8 +-
BREEZE.rst | 68 ++-
CI.rst | 113 +++--
CONTRIBUTING.rst | 73 ++-
Dockerfile | 17 +-
Dockerfile.ci | 21 +-
IMAGES.rst | 77 ++--
INSTALL | 7 +-
LOCAL_VIRTUALENV.rst | 13 +-
README.md | 30 +-
TESTING.rst | 3 +-
UPDATING.md | 5 +-
airflow/api/__init__.py | 4 +-
airflow/api/client/__init__.py | 8 +-
airflow/api/client/api_client.py | 7 +-
airflow/api/client/json_client.py | 6 +-
airflow/api_connexion/openapi/v1.yaml | 7 +-
airflow/cli/cli_parser.py | 8 +-
airflow/cli/commands/dag_command.py | 14 +-
airflow/cli/commands/info_command.py | 4 +-
airflow/cli/commands/webserver_command.py | 2 +-
airflow/config_templates/airflow_local_settings.py | 14 +-
airflow/config_templates/config.yml | 32 ++
airflow/config_templates/default_airflow.cfg | 20 +
airflow/configuration.py | 12 +-
airflow/contrib/operators/qubole_check_operator.py | 2 +-
airflow/example_dags/example_bash_operator.py | 2 +-
airflow/example_dags/example_branch_operator.py | 2 +-
.../example_branch_python_dop_operator_3.py | 2 +-
airflow/example_dags/example_complex.py | 4 +-
.../example_dags/example_kubernetes_executor.py | 2 +-
.../example_kubernetes_executor_config.py | 2 +-
.../example_passing_params_via_test_command.py | 2 +-
airflow/example_dags/example_python_operator.py | 2 +-
.../example_dags/example_short_circuit_operator.py | 8 +-
airflow/example_dags/example_skip_dag.py | 3 +-
airflow/example_dags/example_subdag_operator.py | 2 +-
.../example_dags/example_trigger_controller_dag.py | 3 +-
airflow/example_dags/example_trigger_target_dag.py | 3 +-
airflow/example_dags/example_xcom.py | 13 +-
airflow/example_dags/example_xcomargs.py | 32 +-
airflow/example_dags/subdags/subdag.py | 2 +
airflow/example_dags/tutorial.py | 2 +-
...867_change_datetime_to_datetime2_6_on_mssql_.py | 2 +-
airflow/models/baseoperator.py | 37 +-
airflow/models/dagbag.py | 39 +-
airflow/models/dagrun.py | 4 +-
airflow/models/serialized_dag.py | 54 ++-
airflow/models/taskinstance.py | 36 +-
airflow/operators/bash.py | 5 +-
airflow/operators/check_operator.py | 16 +-
airflow/operators/dagrun_operator.py | 4 +-
airflow/operators/dummy_operator.py | 4 +-
airflow/operators/generic_transfer.py | 5 +-
airflow/operators/google_api_to_s3_transfer.py | 4 +-
airflow/operators/hive_to_druid.py | 4 +-
airflow/operators/hive_to_mysql.py | 4 +-
airflow/operators/mssql_to_hive.py | 4 +-
airflow/operators/mysql_to_hive.py | 4 +-
airflow/operators/presto_check_operator.py | 12 +-
airflow/operators/presto_to_mysql.py | 4 +-
airflow/operators/python.py | 39 +-
airflow/operators/redshift_to_s3_operator.py | 4 +-
airflow/operators/s3_to_hive_operator.py | 4 +-
airflow/operators/s3_to_redshift_operator.py | 4 +-
airflow/operators/sql.py | 28 +-
airflow/operators/sql_branch_operator.py | 4 +-
airflow/operators/subdag_operator.py | 5 +-
airflow/plugins_manager.py | 4 +-
.../amazon/aws/example_dags/example_datasync_1.py | 5 +-
.../amazon/aws/example_dags/example_datasync_2.py | 3 +-
.../amazon/aws/example_dags/example_ecs_fargate.py | 2 +-
.../example_emr_job_flow_automatic_steps.py | 2 +-
.../example_emr_job_flow_manual_steps.py | 2 +-
.../example_google_api_to_s3_transfer_advanced.py | 4 +-
.../example_google_api_to_s3_transfer_basic.py | 3 +-
.../example_dags/example_imap_attachment_to_s3.py | 4 +-
.../aws/example_dags/example_s3_to_redshift.py | 6 +-
airflow/providers/amazon/aws/hooks/base_aws.py | 487 ++++++++++-----------
airflow/providers/amazon/aws/operators/s3_list.py | 2 +-
.../amazon/aws/operators/sagemaker_training.py | 4 +-
.../providers/amazon/aws/transfers/gcs_to_s3.py | 3 +-
.../example_dags/example_cassandra_dag.py | 2 +-
.../providers/apache/cassandra/sensors/record.py | 7 +-
.../providers/apache/cassandra/sensors/table.py | 7 +-
airflow/providers/apache/druid/operators/druid.py | 4 +-
.../apache/druid/operators/druid_check.py | 4 +-
.../apache/druid/transfers/hive_to_druid.py | 3 +-
airflow/providers/apache/hdfs/sensors/hdfs.py | 3 +-
airflow/providers/apache/hdfs/sensors/web_hdfs.py | 3 +-
.../hive/example_dags/example_twitter_dag.py | 2 +-
airflow/providers/apache/hive/hooks/hive.py | 28 ++
airflow/providers/apache/hive/operators/hive.py | 6 +-
.../providers/apache/hive/operators/hive_stats.py | 5 +-
.../apache/hive/sensors/hive_partition.py | 5 +-
.../apache/hive/sensors/metastore_partition.py | 5 +-
.../apache/hive/sensors/named_hive_partition.py | 3 +-
.../apache/hive/transfers/hive_to_mysql.py | 4 +-
.../apache/hive/transfers/hive_to_samba.py | 4 +-
.../apache/hive/transfers/mssql_to_hive.py | 6 +-
.../apache/hive/transfers/mysql_to_hive.py | 6 +-
.../providers/apache/hive/transfers/s3_to_hive.py | 4 +-
.../apache/hive/transfers/vertica_to_hive.py | 4 +-
.../apache/kylin/example_dags/example_kylin_dag.py | 2 +-
.../providers/apache/kylin/operators/kylin_cube.py | 3 +-
.../apache/livy/example_dags/example_livy.py | 6 +-
airflow/providers/apache/livy/sensors/livy.py | 3 +-
.../apache/pig/example_dags/example_pig.py | 2 +-
airflow/providers/apache/pig/operators/pig.py | 5 +-
.../apache/spark/example_dags/example_spark_dag.py | 2 +-
.../providers/apache/spark/hooks/spark_submit.py | 17 +-
.../providers/apache/spark/operators/spark_jdbc.py | 3 +-
.../providers/apache/spark/operators/spark_sql.py | 3 +-
.../apache/spark/operators/spark_submit.py | 3 +-
airflow/providers/apache/sqoop/operators/sqoop.py | 5 +-
.../kubernetes/example_dags/example_kubernetes.py | 157 ++++++-
.../example_dags/example_spark_kubernetes.py | 2 +-
.../cncf/kubernetes/operators/kubernetes_pod.py | 24 +-
.../databricks/example_dags/example_databricks.py | 2 +-
airflow/providers/datadog/hooks/datadog.py | 29 +-
airflow/providers/datadog/sensors/datadog.py | 20 +-
.../dingding/example_dags/example_dingding.py | 2 +-
.../providers/discord/operators/discord_webhook.py | 8 +-
.../docker/example_dags/example_docker.py | 7 +-
.../example_dags/example_docker_copy_data.py | 8 +-
.../docker/example_dags/example_docker_swarm.py | 2 +-
airflow/providers/docker/operators/docker.py | 2 +-
.../providers/elasticsearch/hooks/elasticsearch.py | 11 +-
.../providers/elasticsearch/log/es_task_handler.py | 43 +-
.../google/ads/example_dags/example_ads.py | 4 +-
airflow/providers/google/ads/hooks/ads.py | 25 +-
.../example_automl_nl_text_classification.py | 3 +-
.../example_automl_nl_text_extraction.py | 3 +-
.../example_automl_nl_text_sentiment.py | 3 +-
.../cloud/example_dags/example_automl_tables.py | 11 +-
.../example_dags/example_automl_translation.py | 3 +-
...ple_automl_video_intelligence_classification.py | 3 +-
.../example_automl_video_intelligence_tracking.py | 3 +-
.../example_automl_vision_classification.py | 3 +-
.../example_automl_vision_object_detection.py | 3 +-
.../cloud/example_dags/example_bigquery_dts.py | 4 +-
.../example_dags/example_bigquery_operations.py | 6 +-
.../cloud/example_dags/example_bigquery_queries.py | 4 +-
.../example_dags/example_bigquery_to_bigquery.py | 4 +-
.../cloud/example_dags/example_bigquery_to_gcs.py | 4 +-
.../example_dags/example_bigquery_transfer.py | 4 +-
.../google/cloud/example_dags/example_bigtable.py | 7 +-
.../example_dags/example_cloud_memorystore.py | 4 +-
.../google/cloud/example_dags/example_cloud_sql.py | 6 +-
.../cloud/example_dags/example_cloud_sql_query.py | 6 +-
.../example_cloud_storage_transfer_service_aws.py | 4 +-
.../example_cloud_storage_transfer_service_gcp.py | 4 +-
.../google/cloud/example_dags/example_compute.py | 5 +-
.../cloud/example_dags/example_compute_igm.py | 6 +-
.../cloud/example_dags/example_datacatalog.py | 4 +-
.../google/cloud/example_dags/example_dataflow.py | 5 +-
.../cloud/example_dags/example_datafusion.py | 3 +-
.../google/cloud/example_dags/example_dataproc.py | 2 +-
.../google/cloud/example_dags/example_datastore.py | 4 +-
.../google/cloud/example_dags/example_dlp.py | 5 +-
.../example_dags/example_facebook_ads_to_gcs.py | 4 +-
.../google/cloud/example_dags/example_functions.py | 6 +-
.../google/cloud/example_dags/example_gcs.py | 4 +-
.../cloud/example_dags/example_gcs_to_bigquery.py | 10 +-
.../cloud/example_dags/example_gcs_to_gcs.py | 4 +-
.../cloud/example_dags/example_gcs_to_sftp.py | 4 +-
.../example_dags/example_kubernetes_engine.py | 4 +-
.../google/cloud/example_dags/example_mlengine.py | 3 +-
.../cloud/example_dags/example_natural_language.py | 4 +-
.../cloud/example_dags/example_postgres_to_gcs.py | 4 +-
.../cloud/example_dags/example_presto_to_gcs.py | 4 +-
.../google/cloud/example_dags/example_pubsub.py | 10 +-
.../cloud/example_dags/example_sftp_to_gcs.py | 4 +-
.../cloud/example_dags/example_sheets_to_gcs.py | 4 +-
.../google/cloud/example_dags/example_spanner.py | 6 +-
.../cloud/example_dags/example_speech_to_text.py | 4 +-
.../cloud/example_dags/example_stackdriver.py | 4 +-
.../google/cloud/example_dags/example_tasks.py | 3 +-
.../cloud/example_dags/example_text_to_speech.py | 4 +-
.../google/cloud/example_dags/example_translate.py | 4 +-
.../cloud/example_dags/example_translate_speech.py | 3 +-
.../example_dags/example_video_intelligence.py | 4 +-
.../google/cloud/example_dags/example_vision.py | 8 +-
airflow/providers/google/cloud/hooks/automl.py | 13 +-
airflow/providers/google/cloud/hooks/bigquery.py | 18 +-
.../providers/google/cloud/hooks/bigquery_dts.py | 11 +-
airflow/providers/google/cloud/hooks/bigtable.py | 15 +-
.../providers/google/cloud/hooks/cloud_build.py | 25 +-
.../google/cloud/hooks/cloud_memorystore.py | 26 +-
airflow/providers/google/cloud/hooks/cloud_sql.py | 31 +-
.../cloud/hooks/cloud_storage_transfer_service.py | 13 +-
airflow/providers/google/cloud/hooks/compute.py | 11 +-
.../providers/google/cloud/hooks/datacatalog.py | 26 +-
airflow/providers/google/cloud/hooks/dataflow.py | 11 +-
airflow/providers/google/cloud/hooks/datafusion.py | 9 +-
airflow/providers/google/cloud/hooks/datastore.py | 11 +-
airflow/providers/google/cloud/hooks/dlp.py | 26 +-
airflow/providers/google/cloud/hooks/functions.py | 13 +-
airflow/providers/google/cloud/hooks/gcs.py | 15 +-
airflow/providers/google/cloud/hooks/gdm.py | 15 +-
airflow/providers/google/cloud/hooks/kms.py | 24 +-
.../google/cloud/hooks/kubernetes_engine.py | 10 +-
.../providers/google/cloud/hooks/life_sciences.py | 24 +-
.../google/cloud/hooks/natural_language.py | 26 +-
airflow/providers/google/cloud/hooks/pubsub.py | 13 +-
.../providers/google/cloud/hooks/secret_manager.py | 24 +-
airflow/providers/google/cloud/hooks/spanner.py | 15 +-
.../providers/google/cloud/hooks/speech_to_text.py | 28 +-
.../providers/google/cloud/hooks/stackdriver.py | 15 +-
airflow/providers/google/cloud/hooks/tasks.py | 26 +-
.../providers/google/cloud/hooks/text_to_speech.py | 28 +-
airflow/providers/google/cloud/hooks/translate.py | 17 +-
.../google/cloud/hooks/video_intelligence.py | 26 +-
airflow/providers/google/cloud/hooks/vision.py | 13 +-
.../providers/google/cloud/operators/bigquery.py | 2 +-
.../providers/google/cloud/operators/bigtable.py | 16 +-
.../google/cloud/operators/cloud_build.py | 4 +-
.../providers/google/cloud/operators/cloud_sql.py | 40 +-
.../providers/google/cloud/operators/compute.py | 24 +-
airflow/providers/google/cloud/operators/gcs.py | 2 +-
.../google/cloud/operators/kubernetes_engine.py | 6 +-
.../google/cloud/operators/life_sciences.py | 4 +-
.../providers/google/cloud/operators/spanner.py | 14 +-
.../providers/google/cloud/operators/translate.py | 4 +-
.../google/cloud/operators/translate_speech.py | 2 +-
airflow/providers/google/cloud/operators/vision.py | 2 +-
.../google/cloud/transfers/adls_to_gcs.py | 6 +-
.../providers/google/cloud/transfers/s3_to_gcs.py | 3 +-
.../google/cloud/utils/credentials_provider.py | 55 ++-
.../google/common/auth_backend}/__init__.py | 0
.../google/common/auth_backend/google_openid.py | 138 ++++++
.../providers/google/common/hooks/base_google.py | 31 +-
.../providers/google/common/hooks/discovery_api.py | 26 +-
.../providers/google/common/utils}/__init__.py | 0
.../google/common/utils/id_token_credentials.py | 215 +++++++++
.../firebase/example_dags/example_firestore.py | 2 +
.../providers/google/firebase/hooks/firestore.py | 22 +-
.../google/firebase/operators/firestore.py | 3 +-
.../example_dags/example_analytics.py | 6 +-
.../example_dags/example_campaign_manager.py | 12 +-
.../example_dags/example_display_video.py | 6 +-
.../example_dags/example_search_ads.py | 6 +-
.../marketing_platform/hooks/campaign_manager.py | 9 +-
.../marketing_platform/hooks/display_video.py | 9 +-
.../google/marketing_platform/hooks/search_ads.py | 9 +-
.../operators/campaign_manager.py | 2 +-
.../marketing_platform/sensors/search_ads.py | 3 +-
.../suite/example_dags/example_gcs_to_gdrive.py | 6 +-
.../suite/example_dags/example_gcs_to_sheets.py | 4 +-
.../google/suite/example_dags/example_sheets.py | 6 +-
airflow/providers/google/suite/hooks/drive.py | 24 +-
airflow/providers/google/suite/hooks/sheets.py | 24 +-
airflow/providers/grpc/hooks/grpc.py | 21 +-
airflow/providers/grpc/operators/grpc.py | 28 +-
.../providers/http/example_dags/example_http.py | 12 +-
airflow/providers/http/hooks/http.py | 2 +-
airflow/providers/http/operators/http.py | 11 +-
.../example_dags/example_jenkins_job_trigger.py | 3 +-
.../example_azure_container_instances.py | 2 +-
.../azure/example_dags/example_azure_cosmosdb.py | 2 +-
airflow/providers/microsoft/azure/hooks/wasb.py | 17 +
.../microsoft/azure/operators/adls_list.py | 5 +-
.../microsoft/winrm/example_dags/example_winrm.py | 2 +-
airflow/providers/openfaas/hooks/openfaas.py | 16 +-
.../papermill/example_dags/example_papermill.py | 3 +-
.../qubole/example_dags/example_qubole.py | 59 +--
airflow/providers/qubole/operators/qubole.py | 18 +-
airflow/providers/qubole/operators/qubole_check.py | 8 +-
.../example_tableau_refresh_workbook.py | 2 +-
.../providers/singularity/operators/singularity.py | 2 +-
airflow/providers/slack/hooks/slack.py | 2 +-
airflow/providers/slack/operators/slack.py | 13 +-
.../snowflake/example_dags/example_snowflake.py | 2 +-
airflow/providers/vertica/hooks/vertica.py | 6 +-
airflow/providers/vertica/operators/vertica.py | 10 +-
.../example_dags/example_yandexcloud_dataproc.py | 2 +-
airflow/sensors/date_time_sensor.py | 77 ++++
airflow/sensors/sql_sensor.py | 4 +-
airflow/sensors/time_sensor.py | 2 +-
airflow/settings.py | 5 +
airflow/utils/decorators.py | 9 +-
.../schemas/log_schema.py => utils/docs.py} | 26 +-
airflow/utils/email.py | 2 +-
airflow/utils/file.py | 4 +-
airflow/www/api/experimental/endpoints.py | 22 +-
airflow/www/extensions/init_appbuilder_links.py | 8 +-
airflow/www/templates/airflow/dag.html | 157 +++----
airflow/www/templates/airflow/dags.html | 30 +-
backport_packages/refactor_backport_packages.py | 7 +
breeze | 46 +-
breeze-complete | 4 +-
clients/gen/go.sh | 2 +-
common/_default_branch.sh | 1 +
docs/concepts.rst | 19 +
docs/conf.py | 49 ++-
docs/dag-run.rst | 14 +-
docs/dag-serialization.rst | 11 +-
docs/executor/debug.rst | 3 +-
docs/exts/exampleinclude.py | 8 +-
docs/howto/connection/index.rst | 3 +-
docs/howto/operator/http.rst | 15 +
docs/howto/operator/kubernetes.rst | 231 ++++------
docs/howto/use-alternative-secrets-backend.rst | 9 +-
docs/img/code.png | Bin 344571 -> 271371 bytes
docs/img/dags.png | Bin 581870 -> 258394 bytes
docs/img/duration.png | Bin 214826 -> 226323 bytes
docs/img/gantt.png | Bin 137239 -> 109644 bytes
docs/img/graph.png | Bin 176997 -> 134905 bytes
docs/img/tree.png | Bin 148708 -> 162041 bytes
docs/index.rst | 4 +-
docs/installation.rst | 17 +-
docs/operators-and-hooks-ref.rst | 3 +
docs/project.rst | 2 +
docs/rest-api-ref.rst | 19 +-
docs/security.rst | 63 ++-
docs/start.rst | 13 +-
docs/tutorial.rst | 4 +-
kubernetes_tests/test_kubernetes_pod_operator.py | 17 +-
.../test_utils/README.md => requirements/REMOVE.md | 7 +-
.../ci_generate_constraints.sh} | 2 +-
scripts/ci/docker-compose/local.yml | 1 -
scripts/ci/in_container/_in_container_utils.sh | 10 +
.../{run_fix_ownership.sh => run_clear_tmp.sh} | 2 +-
...n_docs_build.sh => run_generate_constraints.sh} | 28 +-
.../ci/in_container/run_generate_requirements.sh | 80 ----
scripts/ci/in_container/run_pylint_tests.sh | 4 +-
scripts/ci/kubernetes/ci_run_kubernetes_tests.sh | 5 +-
scripts/ci/libraries/_build_images.sh | 36 +-
scripts/ci/libraries/_initialization.sh | 22 +-
scripts/ci/libraries/_kind.sh | 6 +-
scripts/ci/libraries/_local_mounts.sh | 1 -
scripts/ci/libraries/_runs.sh | 12 +-
scripts/ci/openapi/client_codegen_diff.sh | 24 +-
.../pre_commit/pre_commit_generate_requirements.sh | 24 -
.../ci/speccy_rules/connexion.yml | 8 +-
scripts/ci/static_checks/ci_run_static_checks.sh | 3 +
.../ci/tools/ci_check_if_tests_should_be_run.sh | 1 -
.../tools/{ci_fix_ownership.sh => ci_clear_tmp.sh} | 5 +-
scripts/ci/tools/ci_fix_ownership.sh | 3 +-
scripts/perf/sql_queries.py | 2 +-
setup.cfg | 2 +
setup.py | 10 +-
tests/api/auth/test_client.py | 19 +-
tests/api/common/experimental/test_mark_tasks.py | 4 +-
tests/api_connexion/endpoints/test_dag_endpoint.py | 4 +-
.../api_connexion/endpoints/test_task_endpoint.py | 4 +-
tests/cli/commands/test_task_command.py | 2 +-
tests/dags/test_issue_1225.py | 2 +-
tests/models/test_dagbag.py | 43 ++
tests/models/test_serialized_dag.py | 32 +-
tests/operators/test_python.py | 97 +++-
tests/plugins/test_plugin_ignore.py | 4 +-
tests/providers/apache/cassandra/sensors/record.py | 34 --
tests/providers/apache/cassandra/sensors/table.py | 35 --
.../apache/cassandra/sensors/test_record.py | 75 ++++
.../apache/cassandra/sensors/test_table.py | 72 +++
.../providers/apache/hdfs/sensors/test_web_hdfs.py | 58 +++
.../providers/apache/hdfs/sensors/test_webhdfs.py | 41 --
tests/providers/apache/hive/hooks/test_hive.py | 10 +
.../apache/spark/hooks/test_spark_submit.py | 13 +
.../providers/google/cloud/hooks/test_bigquery.py | 49 ++-
.../google/cloud/hooks/test_cloud_memorystore.py | 34 +-
.../google/cloud/hooks/test_datacatalog.py | 134 +++---
.../providers/google/cloud/hooks/test_dataflow.py | 7 +-
.../providers/google/cloud/hooks/test_datastore.py | 7 +-
tests/providers/google/cloud/hooks/test_dlp.py | 14 +-
tests/providers/google/cloud/hooks/test_gdm.py | 7 +-
tests/providers/google/cloud/hooks/test_kms.py | 7 +-
tests/providers/google/cloud/hooks/test_pubsub.py | 7 +-
tests/providers/google/cloud/hooks/test_tasks.py | 26 +-
.../cloud/log/test_stackdriver_task_handler.py | 2 +-
.../google/cloud/transfers/test_sql_to_gcs.py | 151 +++++++
.../providers/google/cloud/utils/base_gcp_mock.py | 16 +-
.../cloud/utils/test_credentials_provider.py | 88 +++-
.../common/auth_backend}/__init__.py | 0
.../common/auth_backend/test_google_openid.py | 134 ++++++
.../google/common/hooks/test_base_google.py | 54 ++-
.../hooks => google/common/utils}/__init__.py | 0
.../common/utils/test_id_token_credentials.py | 162 +++++++
tests/providers/http/operators/test_http.py | 13 +
tests/providers/microsoft/azure/hooks/test_wasb.py | 10 +
tests/providers/slack/hooks/test_slack.py | 4 +-
tests/sensors/test_date_time_sensor.py | 72 +++
tests/sensors/test_time_sensor.py | 52 +++
tests/test_project_structure.py | 4 -
tests/test_utils/system_tests_class.py | 3 +-
.../test_version_schema.py => utils/test_docs.py} | 22 +-
tests/www/api/experimental/test_endpoints.py | 22 +
393 files changed, 4691 insertions(+), 2287 deletions(-)
copy .hadolint.yaml => .github/workflows/cancel_duplicate_workflows.yml (66%)
copy {tests/providers/zendesk/hooks =>
airflow/providers/google/common/auth_backend}/__init__.py (100%)
create mode 100644
airflow/providers/google/common/auth_backend/google_openid.py
copy {tests/providers/zendesk/hooks =>
airflow/providers/google/common/utils}/__init__.py (100%)
create mode 100644
airflow/providers/google/common/utils/id_token_credentials.py
create mode 100644 airflow/sensors/date_time_sensor.py
copy airflow/{api_connexion/schemas/log_schema.py => utils/docs.py} (66%)
copy tests/test_utils/README.md => requirements/REMOVE.md (82%)
rename scripts/ci/{requirements/ci_generate_requirements.sh =>
constraints/ci_generate_constraints.sh} (97%)
copy scripts/ci/in_container/{run_fix_ownership.sh => run_clear_tmp.sh} (97%)
copy scripts/ci/in_container/{run_docs_build.sh =>
run_generate_constraints.sh} (61%)
delete mode 100755 scripts/ci/in_container/run_generate_requirements.sh
delete mode 100755 scripts/ci/pre_commit/pre_commit_generate_requirements.sh
copy yamllint-config.yml => scripts/ci/speccy_rules/connexion.yml (80%)
copy scripts/ci/tools/{ci_fix_ownership.sh => ci_clear_tmp.sh} (90%)
delete mode 100644 tests/providers/apache/cassandra/sensors/record.py
delete mode 100644 tests/providers/apache/cassandra/sensors/table.py
create mode 100644 tests/providers/apache/cassandra/sensors/test_record.py
create mode 100644 tests/providers/apache/cassandra/sensors/test_table.py
create mode 100644 tests/providers/apache/hdfs/sensors/test_web_hdfs.py
delete mode 100644 tests/providers/apache/hdfs/sensors/test_webhdfs.py
create mode 100644 tests/providers/google/cloud/transfers/test_sql_to_gcs.py
copy tests/providers/{zendesk/hooks => google/common/auth_backend}/__init__.py
(100%)
create mode 100644
tests/providers/google/common/auth_backend/test_google_openid.py
copy tests/providers/{zendesk/hooks => google/common/utils}/__init__.py (100%)
create mode 100644
tests/providers/google/common/utils/test_id_token_credentials.py
create mode 100644 tests/sensors/test_date_time_sensor.py
create mode 100644 tests/sensors/test_time_sensor.py
copy tests/{api_connexion/schemas/test_version_schema.py =>
utils/test_docs.py} (57%)