This is an automated email from the ASF dual-hosted git repository.
vincbeck pushed a change to branch common-msgQ
in repository https://gitbox.apache.org/repos/asf/airflow.git
from b665607b438 Fix test
add c34b73a46eb Remove `/webapp` prefix from new UI (#47041)
add 1648d7ef61f update xcom docs (#46284)
add 4fd812a6def Undo changes to accordion done in #46348 (#47054)
add 60b2220c171 Introduce DeltaTriggerTimetable (#46846)
add ca6421789d5 Create AIP-82 documentation (#46912)
add aab624de4c9 AIP-84 Add latest dag version to dag details (#47066)
add 9a72bcb6cfb Remove stray docstring (#47075)
add 82e14d540de Removing stripping quotes on XComOperatorLink (#47045)
add 2c13c18572c Limiting sqlalchemy-drill 1.1.6 as it breaks CI (#47079)
add febde142eb3 AIP-38 Fix dialog note state (#47071)
add 4e0aa267507 Remove link to the legacy UI (#47078)
add c03e6ec3b3e Rearrange Dag details view (#46939)
add c6c4f95ed9e Add legacy namespace packages to airflow.providers (#47064)
add fbbe59a2a92 Correctly support resuming tasks after triggers (#47061)
add 9276ae47487 Bump openlineage-airflow from 1.28.0 to 1.29.0 (#47067)
add 3703b4b577f [Docs] Fix typos and improve clarity in Gitpod setup guide
(#47057)
add 9bca9636fbe Update check-health.rst (#47077)
add 6332afc5dc0 Move `fastapi-api` command to `api-server` (#47076)
add ed34219d1b7 Fix breeze api-server - missed it during config move
(#47086)
add 4002d83243e AIP-72: Add support for getting connections from BaseHook
using task sdk (#47048)
add 17adf3af592 Get Boring Cyborg a commit (#47038)
add b966391133a Disable data interval by default (#47070)
add d01a1431616 Add extra paths note for tests (#47096)
add cad6745771d Adding upper bound to drill to fix compat issues (#47092)
add 260b038863e Merge branch 'main' into common-msgQ
add d5229b1e711 Add missing init files
No new revisions were added by this update.
Summary of changes:
airflow/api_fastapi/app.py | 16 +-
airflow/api_fastapi/core_api/app.py | 6 +-
airflow/api_fastapi/core_api/datamodels/dags.py | 12 +
.../api_fastapi/core_api/openapi/v1-generated.yaml | 7 +
.../execution_api/datamodels/taskinstance.py | 31 +-
.../execution_api/routes/task_instances.py | 53 +-
airflow/api_fastapi/gunicorn_config.py | 2 +-
.../auth/managers/simple/ui/src/login/Login.tsx | 2 +-
airflow/cli/cli_config.py | 52 +-
...astapi_api_command.py => api_server_command.py} | 10 +-
.../commands/local_commands/standalone_command.py | 8 +-
airflow/config_templates/config.yml | 44 +-
airflow/config_templates/unit_tests.cfg | 3 +
airflow/dag_processing/collection.py | 2 +-
airflow/hooks/base.py | 13 +
airflow/models/baseoperator.py | 45 +-
airflow/models/baseoperatorlink.py | 3 +-
airflow/timetables/_delta.py | 56 +
airflow/timetables/interval.py | 30 +-
airflow/timetables/trigger.py | 158 ++-
airflow/ui/.env.example | 1 -
airflow/ui/index.html | 2 +-
airflow/ui/openapi-gen/requests/schemas.gen.ts | 13 +
airflow/ui/openapi-gen/requests/types.gen.ts | 4 +
airflow/ui/package.json | 3 +-
airflow/ui/pnpm-lock.yaml | 1257 ++++++++++----------
.../components/ActionAccordion/ActionAccordion.tsx | 73 +-
.../ui/src/components/Clear/Run/ClearRunButton.tsx | 2 +-
.../Clear/TaskInstance/ClearTaskInstanceButton.tsx | 4 +-
airflow/ui/src/components/HeaderCard.tsx | 81 ++
.../src/components/MarkAs/Run/MarkRunAsButton.tsx | 2 +-
.../TaskInstance/MarkTaskInstanceAsButton.tsx | 4 +-
airflow/ui/src/components/Stat.tsx | 12 +-
.../TruncatedText.tsx} | 18 +-
airflow/ui/src/layouts/BaseLayout.tsx | 6 +-
airflow/ui/src/layouts/Details/DagBreadcrumb.tsx | 143 +++
airflow/ui/src/layouts/Details/DagVizModal.tsx | 105 --
airflow/ui/src/layouts/Details/DetailsLayout.tsx | 149 ++-
airflow/ui/src/layouts/Details/Graph/Graph.tsx | 68 +-
airflow/ui/src/layouts/Details/Graph/TaskNode.tsx | 2 +-
airflow/ui/src/layouts/Details/Grid/Bar.tsx | 3 +-
airflow/ui/src/layouts/Details/Grid/Grid.tsx | 6 +-
airflow/ui/src/layouts/Details/Grid/GridButton.tsx | 6 +-
airflow/ui/src/layouts/Details/Grid/GridTI.tsx | 52 +-
airflow/ui/src/layouts/Details/Grid/TaskNames.tsx | 1 +
airflow/ui/src/layouts/Details/NavTabs.tsx | 72 +-
airflow/ui/src/layouts/Nav/Nav.tsx | 7 +-
airflow/ui/src/pages/Dag/Dag.tsx | 35 +-
airflow/ui/src/pages/Dag/Header.tsx | 152 ++-
airflow/ui/src/pages/Run/Header.tsx | 67 +-
airflow/ui/src/pages/Run/Run.tsx | 42 +-
airflow/ui/src/pages/Task/Header.tsx | 40 +-
airflow/ui/src/pages/Task/Task.tsx | 44 +-
airflow/ui/src/pages/TaskInstance/Header.tsx | 95 +-
airflow/ui/src/pages/TaskInstance/TaskInstance.tsx | 66 +-
airflow/ui/src/pages/TaskInstances.tsx | 6 +-
airflow/ui/src/queries/useClearRun.ts | 2 +
airflow/ui/src/queries/useClearTaskInstances.ts | 2 +
airflow/ui/src/queries/usePatchDagRun.ts | 2 +
airflow/ui/src/queries/usePatchTaskInstance.ts | 2 +
airflow/ui/src/queries/useTrigger.ts | 2 +
airflow/ui/src/router.tsx | 5 +-
airflow/ui/src/utils/index.ts | 1 +
.../src/utils/useContainerWidth.ts} | 35 +-
airflow/ui/src/vite-env.d.ts | 4 -
chart/values.schema.json | 2 +-
chart/values.yaml | 2 +-
.../contributors_quick_start_gitpod.rst | 2 +-
.../contributors_quick_start_vscode.rst | 35 +
.../images/vscode_add_extra_paths_item.png | Bin 0 -> 33685 bytes
.../images/vscode_settings_menu.png | Bin 0 -> 96778 bytes
dev/breeze/doc/03_developer_tasks.rst | 2 +-
dev/breeze/src/airflow_breeze/global_constants.py | 2 +-
.../src/airflow_breeze/params/shell_params.py | 6 +-
dev/breeze/src/airflow_breeze/utils/visuals.py | 6 +-
.../logging-monitoring/check-health.rst | 2 +-
.../administration-and-deployment/web-stack.rst | 2 +-
.../authoring-and-scheduling/event-scheduling.rst | 109 ++
.../authoring-and-scheduling/index.rst | 1 +
.../authoring-and-scheduling/timetable.rst | 104 +-
docs/apache-airflow/core-concepts/xcoms.rst | 23 +-
.../howto/docker-compose/docker-compose.yaml | 2 +-
docs/conf.py | 8 +
generated/provider_dependencies.json | 2 +-
helm_tests/airflow_core/test_api_server.py | 2 +-
newsfragments/47070.significant.rst | 25 +
performance/requirements.txt | 2 +-
.../{tests/system => src/airflow}/__init__.py | 0
.../system => src/airflow/providers}/__init__.py | 0
.../system => alibaba/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => amazon/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../amazon/aws/auth_manager/aws_auth_manager.py | 6 +-
.../amazon/aws/auth_manager/router/login.py | 5 +-
.../amazon/aws/tests/test_aws_auth_manager.py | 2 +-
.../amazon/aws/auth_manager/router/test_login.py | 2 +-
.../system => apache/beam/src/airflow}/__init__.py | 0
.../beam/src/airflow/providers}/__init__.py | 0
.../beam/src/airflow/providers/apache}/__init__.py | 0
.../cassandra/src/airflow}/__init__.py | 0
.../cassandra/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../providers/apache/cassandra/hooks/cassandra.py | 5 +-
providers/apache/drill/README.rst | 8 +-
providers/apache/drill/pyproject.toml | 3 +-
.../drill/src/airflow}/__init__.py | 0
.../drill/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../providers/apache/drill/get_provider_info.py | 2 +-
.../druid/src/airflow}/__init__.py | 0
.../druid/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../flink/src/airflow}/__init__.py | 0
.../flink/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../system => apache/hdfs/src/airflow}/__init__.py | 0
.../hdfs/src/airflow/providers}/__init__.py | 0
.../hdfs/src/airflow/providers/apache}/__init__.py | 0
.../airflow/providers/apache/hdfs/hooks/webhdfs.py | 2 +-
.../providers/apache/hdfs/sensors/web_hdfs.py | 3 +-
.../system => apache/hive/src/airflow}/__init__.py | 0
.../hive/src/airflow/providers}/__init__.py | 0
.../hive/src/airflow/providers/apache}/__init__.py | 0
.../iceberg/src/airflow}/__init__.py | 0
.../iceberg/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../impala/src/airflow}/__init__.py | 0
.../impala/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../providers/apache/impala/hooks/impala.py | 3 +-
.../kafka/src/airflow}/__init__.py | 0
.../kafka/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../kylin/src/airflow}/__init__.py | 0
.../kylin/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../system => apache/livy/src/airflow}/__init__.py | 0
.../livy/src/airflow/providers}/__init__.py | 0
.../livy/src/airflow/providers/apache}/__init__.py | 0
.../system => apache/pig/src/airflow}/__init__.py | 0
.../pig/src/airflow/providers}/__init__.py | 0
.../pig/src/airflow/providers/apache}/__init__.py | 0
.../pinot/src/airflow}/__init__.py | 0
.../pinot/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../spark/src/airflow}/__init__.py | 0
.../spark/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apache}/__init__.py | 0
.../system => apprise/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/apprise/hooks/apprise.py | 3 +-
.../providers/apprise/notifications/apprise.py | 3 +-
.../system => arangodb/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => asana/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/asana/hooks/asana.py | 3 +-
.../jira/src/airflow}/__init__.py | 0
.../jira/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/atlassian}/__init__.py | 0
.../system => celery/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/celery/cli/celery_command.py | 6 +-
.../providers/celery/executors/celery_executor.py | 2 +-
.../celery/executors/celery_executor_utils.py | 11 +-
.../providers/celery/sensors/celery_queue.py | 3 +-
.../system => cloudant/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../kubernetes/src/airflow}/__init__.py | 0
.../kubernetes/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/cncf}/__init__.py | 0
.../backcompat/backwards_compat_converters.py | 3 +-
.../airflow/providers/cncf/kubernetes/callbacks.py | 3 +-
.../cncf/kubernetes/cli/kubernetes_command.py | 7 +-
.../cncf/kubernetes/decorators/kubernetes.py | 2 +-
.../kubernetes/executors/kubernetes_executor.py | 6 +-
.../executors/kubernetes_executor_utils.py | 7 +-
.../providers/cncf/kubernetes/hooks/kubernetes.py | 6 +-
.../cncf/kubernetes/kubernetes_helper_functions.py | 2 +-
.../kubernetes/operators/custom_object_launcher.py | 4 +-
.../providers/cncf/kubernetes/operators/job.py | 7 +-
.../providers/cncf/kubernetes/operators/kueue.py | 3 +-
.../providers/cncf/kubernetes/operators/pod.py | 8 +-
.../cncf/kubernetes/operators/resource.py | 2 +-
.../cncf/kubernetes/operators/spark_kubernetes.py | 3 +-
.../providers/cncf/kubernetes/pod_generator.py | 4 +-
.../kubernetes/resource_convert/env_variable.py | 3 +-
.../airflow/providers/cncf/kubernetes/secret.py | 3 +-
.../cncf/kubernetes/sensors/spark_kubernetes.py | 3 +-
.../cncf/kubernetes/template_rendering.py | 2 +-
.../cncf/kubernetes/utils/k8s_resource_iterator.py | 3 +-
.../providers/cncf/kubernetes/utils/pod_manager.py | 9 +-
.../system => cohere/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/cohere/hooks/cohere.py | 3 +-
.../compat/src/airflow}/__init__.py | 0
.../compat/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/common}/__init__.py | 0
.../system => common/io/src/airflow}/__init__.py | 0
.../io/src/airflow/providers}/__init__.py | 0
.../io/src/airflow/providers/common}/__init__.py | 0
.../messaging/src/airflow}/__init__.py | 0
.../messaging/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/common}/__init__.py | 0
.../system => common/sql/src/airflow}/__init__.py | 0
.../sql/src/airflow/providers}/__init__.py | 0
.../sql/src/airflow/providers/common}/__init__.py | 0
.../system => databricks/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../providers/databricks/hooks/databricks_sql.py | 5 +-
.../databricks/operators/databricks_sql.py | 3 +-
.../databricks/sensors/databricks_partition.py | 3 +-
.../system => datadog/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/datadog/hooks/datadog.py | 3 +-
.../airflow/providers/datadog/sensors/datadog.py | 3 +-
.../system => dbt/cloud/src/airflow}/__init__.py | 0
.../cloud/src/airflow/providers}/__init__.py | 0
.../cloud/src/airflow/providers/dbt}/__init__.py | 0
.../system => dingding/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => discord/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => docker/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/docker/hooks/docker.py | 5 +-
.../airflow/providers/docker/operators/docker.py | 6 +-
.../providers/docker/operators/docker_swarm.py | 5 +-
.../tests/system => edge/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../providers/elasticsearch/hooks/elasticsearch.py | 3 +-
.../providers/elasticsearch/log/es_task_handler.py | 8 +-
.../system => exasol/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => fab/src/airflow}/__init__.py | 0
.../providers/3rd-party-licenses/LICENSES-ui.txt | 89 --
.../src/airflow/providers}/__init__.py | 0
.../providers/fab/auth_manager/fab_auth_manager.py | 6 +-
.../fab/src/airflow/providers/fab/www/views.py | 2 +-
.../fab/www/views/test_views_custom_user_views.py | 2 +-
.../system => facebook/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => ftp/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => github/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/github/hooks/github.py | 3 +-
.../airflow/providers/github/operators/github.py | 3 +-
.../src/airflow/providers/github/sensors/github.py | 3 +-
.../system => google/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/google/ads/hooks/ads.py | 7 +-
.../_internal_client/secret_manager_client.py | 5 +-
.../providers/google/cloud/hooks/alloy_db.py | 5 +-
.../airflow/providers/google/cloud/hooks/automl.py | 9 +-
.../providers/google/cloud/hooks/bigquery.py | 41 +-
.../providers/google/cloud/hooks/bigquery_dts.py | 16 +-
.../providers/google/cloud/hooks/bigtable.py | 5 +-
.../providers/google/cloud/hooks/cloud_batch.py | 7 +-
.../providers/google/cloud/hooks/cloud_build.py | 9 +-
.../providers/google/cloud/hooks/cloud_composer.py | 7 +-
.../google/cloud/hooks/cloud_memorystore.py | 7 +-
.../providers/google/cloud/hooks/cloud_run.py | 7 +-
.../providers/google/cloud/hooks/cloud_sql.py | 2 +-
.../cloud/hooks/cloud_storage_transfer_service.py | 17 +-
.../providers/google/cloud/hooks/compute.py | 6 +-
.../providers/google/cloud/hooks/datacatalog.py | 7 +-
.../providers/google/cloud/hooks/dataflow.py | 24 +-
.../providers/google/cloud/hooks/dataform.py | 5 +-
.../providers/google/cloud/hooks/datafusion.py | 4 +-
.../providers/google/cloud/hooks/dataplex.py | 18 +-
.../providers/google/cloud/hooks/dataproc.py | 9 +-
.../google/cloud/hooks/dataproc_metastore.py | 7 +-
.../airflow/providers/google/cloud/hooks/dlp.py | 7 +-
.../airflow/providers/google/cloud/hooks/gcs.py | 13 +-
.../airflow/providers/google/cloud/hooks/kms.py | 5 +-
.../google/cloud/hooks/kubernetes_engine.py | 16 +-
.../providers/google/cloud/hooks/life_sciences.py | 2 +-
.../providers/google/cloud/hooks/managed_kafka.py | 5 +-
.../google/cloud/hooks/natural_language.py | 5 +-
.../providers/google/cloud/hooks/os_login.py | 5 +-
.../airflow/providers/google/cloud/hooks/pubsub.py | 12 +-
.../providers/google/cloud/hooks/secret_manager.py | 5 +-
.../providers/google/cloud/hooks/spanner.py | 4 +-
.../providers/google/cloud/hooks/speech_to_text.py | 5 +-
.../providers/google/cloud/hooks/stackdriver.py | 8 +-
.../airflow/providers/google/cloud/hooks/tasks.py | 7 +-
.../providers/google/cloud/hooks/text_to_speech.py | 5 +-
.../providers/google/cloud/hooks/translate.py | 10 +-
.../google/cloud/hooks/vertex_ai/auto_ml.py | 7 +-
.../cloud/hooks/vertex_ai/batch_prediction_job.py | 7 +-
.../google/cloud/hooks/vertex_ai/custom_job.py | 9 +-
.../google/cloud/hooks/vertex_ai/dataset.py | 7 +-
.../cloud/hooks/vertex_ai/endpoint_service.py | 5 +-
.../google/cloud/hooks/vertex_ai/feature_store.py | 7 +-
.../hooks/vertex_ai/hyperparameter_tuning_job.py | 7 +-
.../google/cloud/hooks/vertex_ai/model_service.py | 5 +-
.../google/cloud/hooks/vertex_ai/pipeline_job.py | 7 +-
.../cloud/hooks/vertex_ai/prediction_service.py | 5 +-
.../google/cloud/hooks/video_intelligence.py | 5 +-
.../airflow/providers/google/cloud/hooks/vision.py | 7 +-
.../providers/google/cloud/hooks/workflows.py | 5 +-
.../google/cloud/links/kubernetes_engine.py | 3 +-
.../providers/google/cloud/log/gcs_task_handler.py | 6 +-
.../google/cloud/log/stackdriver_task_handler.py | 14 +-
.../providers/google/cloud/openlineage/utils.py | 6 +-
.../providers/google/cloud/operators/alloy_db.py | 11 +-
.../providers/google/cloud/operators/automl.py | 20 +-
.../providers/google/cloud/operators/bigquery.py | 12 +-
.../google/cloud/operators/bigquery_dts.py | 18 +-
.../providers/google/cloud/operators/bigtable.py | 4 +-
.../providers/google/cloud/operators/cloud_base.py | 3 +-
.../google/cloud/operators/cloud_batch.py | 6 +-
.../google/cloud/operators/cloud_build.py | 8 +-
.../google/cloud/operators/cloud_composer.py | 12 +-
.../google/cloud/operators/cloud_memorystore.py | 10 +-
.../providers/google/cloud/operators/cloud_run.py | 8 +-
.../providers/google/cloud/operators/compute.py | 7 +-
.../google/cloud/operators/datacatalog.py | 20 +-
.../providers/google/cloud/operators/dataform.py | 8 +-
.../providers/google/cloud/operators/datafusion.py | 2 +-
.../providers/google/cloud/operators/dataplex.py | 38 +-
.../providers/google/cloud/operators/dataproc.py | 12 +-
.../google/cloud/operators/dataproc_metastore.py | 16 +-
.../providers/google/cloud/operators/dlp.py | 36 +-
.../providers/google/cloud/operators/gcs.py | 5 +-
.../google/cloud/operators/kubernetes_engine.py | 4 +-
.../google/cloud/operators/managed_kafka.py | 10 +-
.../google/cloud/operators/natural_language.py | 8 +-
.../providers/google/cloud/operators/pubsub.py | 18 +-
.../google/cloud/operators/speech_to_text.py | 8 +-
.../google/cloud/operators/stackdriver.py | 8 +-
.../providers/google/cloud/operators/tasks.py | 10 +-
.../google/cloud/operators/text_to_speech.py | 6 +-
.../providers/google/cloud/operators/translate.py | 8 +-
.../google/cloud/operators/translate_speech.py | 6 +-
.../google/cloud/operators/vertex_ai/auto_ml.py | 14 +-
.../operators/vertex_ai/batch_prediction_job.py | 10 +-
.../google/cloud/operators/vertex_ai/custom_job.py | 14 +-
.../google/cloud/operators/vertex_ai/dataset.py | 10 +-
.../cloud/operators/vertex_ai/endpoint_service.py | 10 +-
.../vertex_ai/hyperparameter_tuning_job.py | 10 +-
.../cloud/operators/vertex_ai/model_service.py | 10 +-
.../cloud/operators/vertex_ai/pipeline_job.py | 10 +-
.../google/cloud/operators/video_intelligence.py | 8 +-
.../providers/google/cloud/operators/vision.py | 10 +-
.../providers/google/cloud/operators/workflows.py | 12 +-
.../google/cloud/secrets/secret_manager.py | 3 +-
.../providers/google/cloud/sensors/bigquery_dts.py | 8 +-
.../providers/google/cloud/sensors/bigtable.py | 5 +-
.../google/cloud/sensors/cloud_composer.py | 2 +-
.../providers/google/cloud/sensors/dataplex.py | 10 +-
.../providers/google/cloud/sensors/dataproc.py | 5 +-
.../google/cloud/sensors/dataproc_metastore.py | 3 +-
.../airflow/providers/google/cloud/sensors/gcs.py | 6 +-
.../providers/google/cloud/sensors/pubsub.py | 5 +-
.../providers/google/cloud/sensors/workflows.py | 8 +-
.../google/cloud/transfers/bigquery_to_gcs.py | 8 +-
.../google/cloud/transfers/gcs_to_bigquery.py | 22 +-
.../google/cloud/triggers/bigquery_dts.py | 3 +-
.../providers/google/cloud/triggers/cloud_batch.py | 3 +-
.../providers/google/cloud/triggers/cloud_build.py | 3 +-
.../google/cloud/triggers/cloud_composer.py | 2 +-
.../triggers/cloud_storage_transfer_service.py | 5 +-
.../providers/google/cloud/triggers/dataflow.py | 5 +-
.../providers/google/cloud/triggers/dataplex.py | 3 +-
.../providers/google/cloud/triggers/dataproc.py | 5 +-
.../google/cloud/triggers/kubernetes_engine.py | 2 +-
.../providers/google/cloud/triggers/pubsub.py | 3 +-
.../providers/google/cloud/triggers/vertex_ai.py | 15 +-
.../google/cloud/utils/credentials_provider.py | 7 +-
.../google/cloud/utils/external_token_supplier.py | 1 -
.../google/common/auth_backend/google_openid.py | 8 +-
.../src/airflow/providers/google/common/consts.py | 3 +-
.../providers/google/common/hooks/base_google.py | 15 +-
.../marketing_platform/hooks/analytics_admin.py | 5 +-
.../google/marketing_platform/hooks/search_ads.py | 2 +-
.../operators/analytics_admin.py | 12 +-
.../tests/system => grpc/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../grpc/src/airflow/providers/grpc/hooks/grpc.py | 2 +-
.../system => hashicorp/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => http/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => imap/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => influxdb/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => jdbc/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => jenkins/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/jenkins/hooks/jenkins.py | 1 +
.../jenkins/operators/jenkins_job_trigger.py | 4 +-
.../azure/src/airflow}/__init__.py | 0
.../azure/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/microsoft}/__init__.py | 0
.../airflow/providers/microsoft/azure/fs/adls.py | 3 +-
.../airflow/providers/microsoft/azure/hooks/adx.py | 5 +-
.../airflow/providers/microsoft/azure/hooks/asb.py | 16 +-
.../providers/microsoft/azure/hooks/base_azure.py | 5 +-
.../providers/microsoft/azure/hooks/batch.py | 3 +-
.../microsoft/azure/hooks/container_instance.py | 7 +-
.../microsoft/azure/hooks/container_registry.py | 5 +-
.../microsoft/azure/hooks/container_volume.py | 5 +-
.../providers/microsoft/azure/hooks/cosmos.py | 9 +-
.../microsoft/azure/hooks/data_factory.py | 14 +-
.../providers/microsoft/azure/hooks/data_lake.py | 17 +-
.../providers/microsoft/azure/hooks/fileshare.py | 3 +-
.../providers/microsoft/azure/hooks/msgraph.py | 4 +-
.../providers/microsoft/azure/hooks/synapse.py | 9 +-
.../providers/microsoft/azure/hooks/wasb.py | 18 +-
.../microsoft/azure/log/wasb_task_handler.py | 3 +-
.../providers/microsoft/azure/operators/adx.py | 3 +-
.../providers/microsoft/azure/operators/asb.py | 3 +-
.../providers/microsoft/azure/operators/batch.py | 3 +-
.../azure/operators/container_instances.py | 14 +-
.../providers/microsoft/azure/operators/synapse.py | 3 +-
.../providers/microsoft/azure/secrets/key_vault.py | 7 +-
.../microsoft/azure/triggers/data_factory.py | 3 +-
.../src/airflow/providers/microsoft/azure/utils.py | 3 +-
.../mssql/src/airflow}/__init__.py | 0
.../mssql/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/microsoft}/__init__.py | 0
.../psrp/src/airflow}/__init__.py | 0
.../psrp/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/microsoft}/__init__.py | 0
.../winrm/src/airflow}/__init__.py | 0
.../winrm/src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/microsoft}/__init__.py | 0
.../providers/microsoft/winrm/hooks/winrm.py | 5 +-
.../tests/system => mongo/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => mysql/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => neo4j/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/neo4j/hooks/neo4j.py | 3 +-
.../tests/system => odbc/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => openai/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => openfaas/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => openlineage/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../providers/openlineage/extractors/base.py | 4 +-
.../providers/openlineage/extractors/bash.py | 3 +-
.../providers/openlineage/extractors/manager.py | 6 +-
.../providers/openlineage/extractors/python.py | 3 +-
.../providers/openlineage/plugins/adapter.py | 20 +-
.../providers/openlineage/plugins/facets.py | 1 -
.../providers/openlineage/plugins/listener.py | 2 +-
.../src/airflow/providers/openlineage/sqlparser.py | 8 +-
.../src/airflow/providers/openlineage/utils/sql.py | 3 +-
.../airflow/providers/openlineage/utils/utils.py | 7 +-
.../system => opensearch/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => opsgenie/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => oracle/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => pagerduty/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => papermill/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/papermill/hooks/kernel.py | 6 +-
.../providers/papermill/operators/papermill.py | 2 +-
.../system => pgvector/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../providers/pgvector/operators/pgvector.py | 3 +-
.../system => pinecone/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/pinecone/hooks/pinecone.py | 6 +-
.../system => postgres/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => presto/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => qdrant/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => redis/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/redis/hooks/redis.py | 3 +-
.../providers/redis/log/redis_task_handler.py | 3 +-
.../system => salesforce/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => samba/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => segment/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => sendgrid/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/sendgrid/utils/emailer.py | 5 +-
.../tests/system => sftp/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => singularity/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => slack/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => smtp/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => snowflake/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/snowflake/hooks/snowflake.py | 9 +-
.../system => sqlite/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => ssh/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => standard/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => tableau/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => telegram/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/telegram/hooks/telegram.py | 2 +-
.../system => teradata/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../tests/system => trino/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../src/airflow/providers/trino/hooks/trino.py | 5 +-
.../system => vertica/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../system => weaviate/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/weaviate/hooks/weaviate.py | 10 +-
.../providers/weaviate/operators/weaviate.py | 1 -
.../system => yandex/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../airflow/providers/yandex/secrets/lockbox.py | 4 +-
.../tests/system => ydb/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
.../ydb/src/airflow/providers/ydb/hooks/ydb.py | 2 +-
.../system => zendesk/src/airflow}/__init__.py | 0
.../src/airflow/providers}/__init__.py | 0
pyproject.toml | 17 +-
scripts/ci/docker-compose/base-ports.yml | 2 +-
.../check_providers_subpackages_all_have_init.py | 56 +-
scripts/ci/pre_commit/common_precommit_utils.py | 11 +-
scripts/ci/pre_commit/mypy.py | 6 +-
scripts/in_container/bin/run_tmux | 6 +-
scripts/in_container/run_mypy.sh | 1 +
.../src/airflow/sdk/api/datamodels/_generated.py | 7 +-
.../src/airflow/sdk/definitions/baseoperator.py | 73 +-
task_sdk/src/airflow/sdk/definitions/connection.py | 7 +
task_sdk/src/airflow/sdk/definitions/dag.py | 9 +-
task_sdk/src/airflow/sdk/execution_time/comms.py | 17 +-
.../src/airflow/sdk/execution_time/supervisor.py | 8 +-
.../src/airflow/sdk/execution_time/task_runner.py | 22 +-
task_sdk/tests/api/test_client.py | 23 +-
task_sdk/tests/dags/super_basic_deferred_run.py | 2 +-
task_sdk/tests/execution_time/test_supervisor.py | 10 +-
task_sdk/tests/execution_time/test_task_runner.py | 41 +-
.../core_api/routes/public/test_assets.py | 4 +-
.../core_api/routes/public/test_dags.py | 12 +
.../execution_api/routes/test_task_instances.py | 64 +-
tests/api_fastapi/test_app.py | 11 +
...i_api_command.py => test_api_server_command.py} | 28 +-
tests/dag_processing/test_processor.py | 32 +-
tests/timetables/test_interval_timetable.py | 25 +-
tests/timetables/test_trigger_timetable.py | 249 +++-
564 files changed, 3597 insertions(+), 2448 deletions(-)
rename airflow/cli/commands/local_commands/{fastapi_api_command.py =>
api_server_command.py} (93%)
create mode 100644 airflow/timetables/_delta.py
create mode 100644 airflow/ui/src/components/HeaderCard.tsx
copy airflow/ui/src/{layouts/Details/Grid/DurationTick.tsx =>
components/TruncatedText.tsx} (75%)
create mode 100644 airflow/ui/src/layouts/Details/DagBreadcrumb.tsx
delete mode 100644 airflow/ui/src/layouts/Details/DagVizModal.tsx
copy airflow/{www/static/js/utils/useErrorToast.ts =>
ui/src/utils/useContainerWidth.ts} (59%)
create mode 100644
contributing-docs/quick-start-ide/images/vscode_add_extra_paths_item.png
create mode 100644
contributing-docs/quick-start-ide/images/vscode_settings_menu.png
create mode 100644
docs/apache-airflow/authoring-and-scheduling/event-scheduling.rst
create mode 100644 newsfragments/47070.significant.rst
copy providers/airbyte/{tests/system => src/airflow}/__init__.py (100%)
copy providers/airbyte/{tests/system => src/airflow/providers}/__init__.py
(100%)
copy providers/{airbyte/tests/system => alibaba/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
alibaba/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => amazon/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
amazon/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/beam/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/beam/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/beam/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/cassandra/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/cassandra/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/cassandra/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/drill/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/drill/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/drill/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/druid/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/druid/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/druid/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/flink/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/flink/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/flink/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/hdfs/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/hdfs/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/hdfs/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/hive/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/hive/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/hive/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/iceberg/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/iceberg/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/iceberg/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/impala/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/impala/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/impala/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/kafka/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/kafka/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/kafka/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/kylin/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/kylin/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/kylin/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/livy/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/livy/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/livy/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/pig/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/pig/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/pig/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/pinot/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/pinot/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/pinot/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apache/spark/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
apache/spark/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apache/spark/src/airflow/providers/apache}/__init__.py (100%)
copy providers/{airbyte/tests/system => apprise/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
apprise/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => arangodb/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
arangodb/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => asana/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
asana/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
atlassian/jira/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
atlassian/jira/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
atlassian/jira/src/airflow/providers/atlassian}/__init__.py (100%)
copy providers/{airbyte/tests/system => celery/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
celery/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => cloudant/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
cloudant/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
cncf/kubernetes/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
cncf/kubernetes/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
cncf/kubernetes/src/airflow/providers/cncf}/__init__.py (100%)
copy providers/{airbyte/tests/system => cohere/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
cohere/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => common/compat/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
common/compat/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
common/compat/src/airflow/providers/common}/__init__.py (100%)
copy providers/{airbyte/tests/system => common/io/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
common/io/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
common/io/src/airflow/providers/common}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
common/messaging/src/airflow}/__init__.py (100%)
copy {airflow/api_connexion =>
providers/common/messaging/src/airflow/providers}/__init__.py (100%)
copy {airflow/api_connexion =>
providers/common/messaging/src/airflow/providers/common}/__init__.py (100%)
copy providers/{airbyte/tests/system => common/sql/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
common/sql/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
common/sql/src/airflow/providers/common}/__init__.py (100%)
copy providers/{airbyte/tests/system => databricks/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
databricks/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => datadog/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
datadog/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => dbt/cloud/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
dbt/cloud/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
dbt/cloud/src/airflow/providers/dbt}/__init__.py (100%)
copy providers/{airbyte/tests/system => dingding/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
dingding/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => discord/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
discord/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => docker/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
docker/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => edge/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
edge/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => elasticsearch/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
elasticsearch/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => exasol/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
exasol/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => fab/src/airflow}/__init__.py (100%)
delete mode 100644
providers/fab/src/airflow/providers/3rd-party-licenses/LICENSES-ui.txt
copy providers/{airbyte/tests/system => fab/src/airflow/providers}/__init__.py
(100%)
copy providers/{airbyte/tests/system => facebook/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
facebook/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => ftp/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system => ftp/src/airflow/providers}/__init__.py
(100%)
copy providers/{airbyte/tests/system => github/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
github/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => google/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
google/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => grpc/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
grpc/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => hashicorp/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
hashicorp/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => http/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
http/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => imap/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
imap/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => influxdb/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
influxdb/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => jdbc/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
jdbc/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => jenkins/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
jenkins/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/azure/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/azure/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/azure/src/airflow/providers/microsoft}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/mssql/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/mssql/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/mssql/src/airflow/providers/microsoft}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/psrp/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/psrp/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/psrp/src/airflow/providers/microsoft}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/winrm/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/winrm/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
microsoft/winrm/src/airflow/providers/microsoft}/__init__.py (100%)
copy providers/{airbyte/tests/system => mongo/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
mongo/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => mysql/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
mysql/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => neo4j/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
neo4j/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => odbc/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
odbc/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => openai/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
openai/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => openfaas/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
openfaas/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => openlineage/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
openlineage/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => opensearch/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
opensearch/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => opsgenie/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
opsgenie/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => oracle/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
oracle/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => pagerduty/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
pagerduty/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => papermill/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
papermill/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => pgvector/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
pgvector/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => pinecone/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
pinecone/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => postgres/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
postgres/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => presto/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
presto/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => qdrant/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
qdrant/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => redis/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
redis/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => salesforce/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
salesforce/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => samba/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
samba/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => segment/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
segment/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => sendgrid/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
sendgrid/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => sftp/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
sftp/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => singularity/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
singularity/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => slack/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
slack/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => smtp/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
smtp/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => snowflake/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
snowflake/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => sqlite/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
sqlite/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => ssh/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system => ssh/src/airflow/providers}/__init__.py
(100%)
copy providers/{airbyte/tests/system => standard/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
standard/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => tableau/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
tableau/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => telegram/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
telegram/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => teradata/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
teradata/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => trino/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
trino/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => vertica/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
vertica/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => weaviate/src/airflow}/__init__.py
(100%)
copy providers/{airbyte/tests/system =>
weaviate/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => yandex/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
yandex/src/airflow/providers}/__init__.py (100%)
copy providers/{airbyte/tests/system => ydb/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system => ydb/src/airflow/providers}/__init__.py
(100%)
copy providers/{airbyte/tests/system => zendesk/src/airflow}/__init__.py (100%)
copy providers/{airbyte/tests/system =>
zendesk/src/airflow/providers}/__init__.py (100%)
rename tests/cli/commands/local_commands/{test_fastapi_api_command.py =>
test_api_server_command.py} (84%)