You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by pi...@apache.org on 2024/08/29 15:52:09 UTC

(airflow) branch main updated: Pydantic v2 and FastAPI as core dependency (#41857)

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

pierrejeambrun pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 38e69c7499 Pydantic v2 and FastAPI as core dependency (#41857)
38e69c7499 is described below

commit 38e69c7499fd6186e2d33ebcc832ca2d895806a2
Author: Pierre Jeambrun <pi...@gmail.com>
AuthorDate: Thu Aug 29 17:52:02 2024 +0200

    Pydantic v2 and FastAPI as core dependency (#41857)
    
    * update requirements
    
    * Pydantic dependancy is not optional anymore
    
    * add newsfragment
    
    * fix ci
    
    * Fix remnants of deleted tests
---
 .github/workflows/run-unit-tests.yml               |   6 --
 .github/workflows/special-tests.yml                |  44 --------
 Dockerfile.ci                                      |  41 --------
 INSTALL                                            |   4 +-
 airflow/operators/python.py                        |   5 +-
 airflow/serialization/pydantic/dag.py              |  10 +-
 airflow/serialization/pydantic/dag_run.py          |   6 +-
 airflow/serialization/pydantic/dataset.py          |   2 +-
 airflow/serialization/pydantic/job.py              |   3 +-
 airflow/serialization/pydantic/taskinstance.py     |  18 ++--
 airflow/serialization/pydantic/tasklog.py          |   2 +-
 airflow/serialization/pydantic/trigger.py          |   3 +-
 airflow/serialization/serialized_objects.py        |   7 +-
 airflow/utils/pydantic.py                          |  61 -----------
 .../12_airflow_dependencies_and_extras.rst         |   4 +-
 dev/breeze/doc/images/output_shell.svg             |  48 ++++-----
 dev/breeze/doc/images/output_shell.txt             |   2 +-
 dev/breeze/doc/images/output_testing_db-tests.svg  | 116 ++++++++++-----------
 dev/breeze/doc/images/output_testing_db-tests.txt  |   2 +-
 .../doc/images/output_testing_non-db-tests.svg     | 116 ++++++++++-----------
 .../doc/images/output_testing_non-db-tests.txt     |   2 +-
 dev/breeze/doc/images/output_testing_tests.svg     | 116 ++++++++++-----------
 dev/breeze/doc/images/output_testing_tests.txt     |   2 +-
 .../src/airflow_breeze/commands/common_options.py  |   9 --
 .../airflow_breeze/commands/developer_commands.py  |   4 -
 .../commands/developer_commands_config.py          |   1 -
 .../airflow_breeze/commands/testing_commands.py    |  11 --
 .../commands/testing_commands_config.py            |   3 -
 dev/breeze/src/airflow_breeze/global_constants.py  |   1 -
 .../src/airflow_breeze/params/shell_params.py      |   3 -
 hatch_build.py                                     |   5 +-
 newsfragments/41857.significant.rst                |   3 +
 pyproject.toml                                     |   4 +-
 scripts/ci/docker-compose/devcontainer.env         |   1 -
 scripts/docker/entrypoint_ci.sh                    |  42 --------
 tests/always/test_example_dags.py                  |   6 --
 tests/operators/test_python.py                     |  20 +---
 tests/serialization/test_serde.py                  |   2 +-
 tests/serialization/test_serialized_objects.py     |   2 +-
 39 files changed, 237 insertions(+), 500 deletions(-)

diff --git a/.github/workflows/run-unit-tests.yml b/.github/workflows/run-unit-tests.yml
index 7828e50ed7..88ac30c209 100644
--- a/.github/workflows/run-unit-tests.yml
+++ b/.github/workflows/run-unit-tests.yml
@@ -89,11 +89,6 @@ on:  # yamllint disable-line rule:truthy
         required: false
         default: "false"
         type: string
-      pydantic:
-        description: "The version of pydantic to use"
-        required: false
-        default: "v2"
-        type: string
       downgrade-pendulum:
         description: "Whether to downgrade pendulum or not (true/false)"
         required: false
@@ -148,7 +143,6 @@ jobs:
       JOB_ID: "${{ inputs.test-scope }}-${{ inputs.test-name }}-${{inputs.backend}}-${{ matrix.backend-version }}-${{ matrix.python-version }}"
       MOUNT_SOURCES: "skip"
       PARALLEL_TEST_TYPES: "${{ inputs.parallel-test-types-list-as-string }}"
-      PYDANTIC: "${{ inputs.pydantic }}"
       PYTHON_MAJOR_MINOR_VERSION: "${{ matrix.python-version }}"
       UPGRADE_BOTO: "${{ inputs.upgrade-boto }}"
       AIRFLOW_MONITOR_DELAY_TIME_IN_SECONDS: "${{inputs.monitor-delay-time-in-seconds}}"
diff --git a/.github/workflows/special-tests.yml b/.github/workflows/special-tests.yml
index 000b5aa3d9..c6b4275de4 100644
--- a/.github/workflows/special-tests.yml
+++ b/.github/workflows/special-tests.yml
@@ -105,50 +105,6 @@ jobs:
       run-coverage: ${{ inputs.run-coverage }}
       debug-resources: ${{ inputs.debug-resources }}
 
-  tests-pydantic-v1:
-    name: "Pydantic v1 test"
-    uses: ./.github/workflows/run-unit-tests.yml
-    permissions:
-      contents: read
-      packages: read
-    secrets: inherit
-    with:
-      runs-on-as-json-default: ${{ inputs.runs-on-as-json-default }}
-      pydantic: "v1"
-      test-name: "Pydantic-V1-Postgres"
-      test-scope: "All"
-      backend: "postgres"
-      image-tag: ${{ inputs.image-tag }}
-      python-versions: "['${{ inputs.default-python-version }}']"
-      backend-versions: "['${{ inputs.default-postgres-version }}']"
-      excludes: "[]"
-      parallel-test-types-list-as-string: ${{ inputs.parallel-test-types-list-as-string }}
-      include-success-outputs: ${{ needs.build-info.outputs.include-success-outputs }}
-      run-coverage: ${{ inputs.run-coverage }}
-      debug-resources: ${{ inputs.debug-resources }}
-
-  tests-pydantic-none:
-    name: "Pydantic removed test"
-    uses: ./.github/workflows/run-unit-tests.yml
-    permissions:
-      contents: read
-      packages: read
-    secrets: inherit
-    with:
-      runs-on-as-json-default: ${{ inputs.runs-on-as-json-default }}
-      pydantic: "none"
-      test-name: "Pydantic-Removed-Postgres"
-      test-scope: "All"
-      backend: "postgres"
-      image-tag: ${{ inputs.image-tag }}
-      python-versions: "['${{ inputs.default-python-version }}']"
-      backend-versions: "['${{ inputs.default-postgres-version }}']"
-      excludes: "[]"
-      parallel-test-types-list-as-string: ${{ inputs.parallel-test-types-list-as-string }}
-      include-success-outputs: ${{ needs.build-info.outputs.include-success-outputs }}
-      run-coverage: ${{ inputs.run-coverage }}
-      debug-resources: ${{ inputs.debug-resources }}
-
   tests-pendulum-2:
     name: "Pendulum2 test"
     uses: ./.github/workflows/run-unit-tests.yml
diff --git a/Dockerfile.ci b/Dockerfile.ci
index 25151df8e9..67b6bf861e 100644
--- a/Dockerfile.ci
+++ b/Dockerfile.ci
@@ -1032,46 +1032,6 @@ function check_boto_upgrade() {
     pip check
 }
 
-function check_pydantic() {
-    if [[ ${PYDANTIC=} == "none" ]]; then
-        echo
-        echo "${COLOR_YELLOW}Reinstalling airflow from local sources to account for pyproject.toml changes${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} -e .
-        echo
-        echo "${COLOR_YELLOW}Remove pydantic and 3rd party libraries that depend on it${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} uninstall ${EXTRA_UNINSTALL_FLAGS} pydantic aws-sam-translator openai \
-           pyiceberg qdrant-client cfn-lint weaviate-client google-cloud-aiplatform
-        pip check
-    elif [[ ${PYDANTIC=} == "v1" ]]; then
-        echo
-        echo "${COLOR_YELLOW}Reinstalling airflow from local sources to account for pyproject.toml changes${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} -e .
-        echo
-        echo "${COLOR_YELLOW}Uninstalling dependencies which are not compatible with Pydantic 1${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} uninstall ${EXTRA_UNINSTALL_FLAGS} pyiceberg weaviate-client
-        echo
-        echo "${COLOR_YELLOW}Downgrading Pydantic to < 2${COLOR_RESET}"
-        echo
-        # Pydantic 1.10.17/1.10.15 conflicts with aws-sam-translator so we need to exclude it
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} --upgrade "pydantic<2.0.0,!=1.10.17,!=1.10.15"
-        pip check
-    else
-        echo
-        echo "${COLOR_BLUE}Leaving default pydantic v2${COLOR_RESET}"
-        echo
-    fi
-}
-
-
 function check_downgrade_sqlalchemy() {
     if [[ ${DOWNGRADE_SQLALCHEMY=} != "true" ]]; then
         return
@@ -1181,7 +1141,6 @@ function check_force_lowest_dependencies() {
 determine_airflow_to_use
 environment_initialization
 check_boto_upgrade
-check_pydantic
 check_downgrade_sqlalchemy
 check_downgrade_pendulum
 check_force_lowest_dependencies
diff --git a/INSTALL b/INSTALL
index a875fd3728..72ebca79e7 100644
--- a/INSTALL
+++ b/INSTALL
@@ -257,8 +257,8 @@ Those extras are available as regular core airflow extras - they install optiona
 # START CORE EXTRAS HERE
 
 aiobotocore, apache-atlas, apache-webhdfs, async, cgroups, cloudpickle, github-enterprise, google-
-auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, pydantic, rabbitmq, s3fs, saml,
-sentry, statsd, uv, virtualenv
+auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, rabbitmq, s3fs, saml, sentry,
+statsd, uv, virtualenv
 
 # END CORE EXTRAS HERE
 
diff --git a/airflow/operators/python.py b/airflow/operators/python.py
index 47e0cf3193..25c0b8ca68 100644
--- a/airflow/operators/python.py
+++ b/airflow/operators/python.py
@@ -56,7 +56,6 @@ from airflow.utils.context import context_copy_partial, context_get_outlet_event
 from airflow.utils.file import get_unique_dag_module_name
 from airflow.utils.operator_helpers import ExecutionCallableRunner, KeywordParameters
 from airflow.utils.process_utils import execute_in_subprocess
-from airflow.utils.pydantic import is_pydantic_2_installed
 from airflow.utils.python_virtualenv import prepare_virtualenv, write_python_script
 from airflow.utils.session import create_session
 
@@ -549,8 +548,8 @@ class _BasePythonVirtualenvOperator(PythonOperator, metaclass=ABCMeta):
             self._write_args(input_path)
             self._write_string_args(string_args_path)
 
-            if self.use_airflow_context and (not is_pydantic_2_installed() or not _ENABLE_AIP_44):
-                error_msg = "`get_current_context()` needs to be used with Pydantic 2 and AIP-44 enabled."
+            if self.use_airflow_context and not _ENABLE_AIP_44:
+                error_msg = "`get_current_context()` needs to be used with AIP-44 enabled."
                 raise AirflowException(error_msg)
 
             jinja_context = {
diff --git a/airflow/serialization/pydantic/dag.py b/airflow/serialization/pydantic/dag.py
index b916a0e580..f7cb90797d 100644
--- a/airflow/serialization/pydantic/dag.py
+++ b/airflow/serialization/pydantic/dag.py
@@ -20,17 +20,17 @@ import pathlib
 from datetime import datetime
 from typing import Any, List, Optional
 
-from typing_extensions import Annotated
-
-from airflow import DAG, settings
-from airflow.configuration import conf as airflow_conf
-from airflow.utils.pydantic import (
+from pydantic import (
     BaseModel as BaseModelPydantic,
     ConfigDict,
     PlainSerializer,
     PlainValidator,
     ValidationInfo,
 )
+from typing_extensions import Annotated
+
+from airflow import DAG, settings
+from airflow.configuration import conf as airflow_conf
 
 
 def serialize_operator(x: DAG) -> dict:
diff --git a/airflow/serialization/pydantic/dag_run.py b/airflow/serialization/pydantic/dag_run.py
index 63b20ff487..31b7171a3a 100644
--- a/airflow/serialization/pydantic/dag_run.py
+++ b/airflow/serialization/pydantic/dag_run.py
@@ -19,10 +19,11 @@ from __future__ import annotations
 from datetime import datetime
 from typing import TYPE_CHECKING, Iterable, List, Optional
 
+from pydantic import BaseModel as BaseModelPydantic, ConfigDict
+
 from airflow.models.dagrun import DagRun
 from airflow.serialization.pydantic.dag import PydanticDag
 from airflow.serialization.pydantic.dataset import DatasetEventPydantic
-from airflow.utils.pydantic import BaseModel as BaseModelPydantic, ConfigDict, is_pydantic_2_installed
 
 if TYPE_CHECKING:
     from sqlalchemy.orm import Session
@@ -111,5 +112,4 @@ class DagRunPydantic(BaseModelPydantic):
         return DagRun._get_log_template(log_template_id=self.log_template_id)
 
 
-if is_pydantic_2_installed():
-    DagRunPydantic.model_rebuild()
+DagRunPydantic.model_rebuild()
diff --git a/airflow/serialization/pydantic/dataset.py b/airflow/serialization/pydantic/dataset.py
index 44822c546d..0c233a3fd6 100644
--- a/airflow/serialization/pydantic/dataset.py
+++ b/airflow/serialization/pydantic/dataset.py
@@ -17,7 +17,7 @@
 from datetime import datetime
 from typing import List, Optional
 
-from airflow.utils.pydantic import BaseModel as BaseModelPydantic, ConfigDict
+from pydantic import BaseModel as BaseModelPydantic, ConfigDict
 
 
 class DagScheduleDatasetReferencePydantic(BaseModelPydantic):
diff --git a/airflow/serialization/pydantic/job.py b/airflow/serialization/pydantic/job.py
index bea8e9a3af..ab2dafa178 100644
--- a/airflow/serialization/pydantic/job.py
+++ b/airflow/serialization/pydantic/job.py
@@ -18,9 +18,10 @@ import datetime
 from functools import cached_property
 from typing import TYPE_CHECKING, Optional
 
+from pydantic import BaseModel as BaseModelPydantic, ConfigDict
+
 from airflow.executors.executor_loader import ExecutorLoader
 from airflow.jobs.base_job_runner import BaseJobRunner
-from airflow.utils.pydantic import BaseModel as BaseModelPydantic, ConfigDict
 
 
 def check_runner_initialized(job_runner: Optional[BaseJobRunner], job_type: str) -> BaseJobRunner:
diff --git a/airflow/serialization/pydantic/taskinstance.py b/airflow/serialization/pydantic/taskinstance.py
index e89d21cd98..0dcb7880eb 100644
--- a/airflow/serialization/pydantic/taskinstance.py
+++ b/airflow/serialization/pydantic/taskinstance.py
@@ -19,6 +19,12 @@ from __future__ import annotations
 from datetime import datetime
 from typing import TYPE_CHECKING, Any, Iterable, Optional
 
+from pydantic import (
+    BaseModel as BaseModelPydantic,
+    ConfigDict,
+    PlainSerializer,
+    PlainValidator,
+)
 from typing_extensions import Annotated
 
 from airflow.exceptions import AirflowRescheduleException, TaskDeferred
@@ -36,22 +42,15 @@ from airflow.serialization.pydantic.dag import DagModelPydantic
 from airflow.serialization.pydantic.dag_run import DagRunPydantic
 from airflow.utils.log.logging_mixin import LoggingMixin
 from airflow.utils.net import get_hostname
-from airflow.utils.pydantic import (
-    BaseModel as BaseModelPydantic,
-    ConfigDict,
-    PlainSerializer,
-    PlainValidator,
-    is_pydantic_2_installed,
-)
 from airflow.utils.xcom import XCOM_RETURN_KEY
 
 if TYPE_CHECKING:
     import pendulum
+    from pydantic import ValidationInfo
     from sqlalchemy.orm import Session
 
     from airflow.models.dagrun import DagRun
     from airflow.utils.context import Context
-    from airflow.utils.pydantic import ValidationInfo
     from airflow.utils.state import DagRunState
 
 
@@ -552,5 +551,4 @@ class TaskInstancePydantic(BaseModelPydantic, LoggingMixin):
         )
 
 
-if is_pydantic_2_installed():
-    TaskInstancePydantic.model_rebuild()
+TaskInstancePydantic.model_rebuild()
diff --git a/airflow/serialization/pydantic/tasklog.py b/airflow/serialization/pydantic/tasklog.py
index 3fbbf872b8..a23204400c 100644
--- a/airflow/serialization/pydantic/tasklog.py
+++ b/airflow/serialization/pydantic/tasklog.py
@@ -16,7 +16,7 @@
 # under the License.
 from datetime import datetime
 
-from airflow.utils.pydantic import BaseModel as BaseModelPydantic, ConfigDict
+from pydantic import BaseModel as BaseModelPydantic, ConfigDict
 
 
 class LogTemplatePydantic(BaseModelPydantic):
diff --git a/airflow/serialization/pydantic/trigger.py b/airflow/serialization/pydantic/trigger.py
index bf2ce2340c..19a8f6b70c 100644
--- a/airflow/serialization/pydantic/trigger.py
+++ b/airflow/serialization/pydantic/trigger.py
@@ -18,8 +18,9 @@
 import datetime
 from typing import Any, Dict, Optional
 
+from pydantic import BaseModel as BaseModelPydantic, ConfigDict
+
 from airflow.utils import timezone
-from airflow.utils.pydantic import BaseModel as BaseModelPydantic, ConfigDict
 
 
 class TriggerPydantic(BaseModelPydantic):
diff --git a/airflow/serialization/serialized_objects.py b/airflow/serialization/serialized_objects.py
index 71bc64c61a..2bbeb8aae9 100644
--- a/airflow/serialization/serialized_objects.py
+++ b/airflow/serialization/serialized_objects.py
@@ -96,6 +96,8 @@ from airflow.utils.types import NOTSET, ArgNotSet, AttributeRemoved
 if TYPE_CHECKING:
     from inspect import Parameter
 
+    from pydantic import BaseModel
+
     from airflow.models.baseoperatorlink import BaseOperatorLink
     from airflow.models.expandinput import ExpandInput
     from airflow.models.operator import Operator
@@ -103,7 +105,6 @@ if TYPE_CHECKING:
     from airflow.serialization.json_schema import Validator
     from airflow.ti_deps.deps.base_ti_dep import BaseTIDep
     from airflow.timetables.base import Timetable
-    from airflow.utils.pydantic import BaseModel
 
     HAS_KUBERNETES: bool
     try:
@@ -364,8 +365,8 @@ def encode_start_trigger_args(var: StartTriggerArgs) -> dict[str, Any]:
 
     :meta private:
     """
-    serialize_kwargs = (
-        lambda key: BaseSerialization.serialize(getattr(var, key)) if getattr(var, key) is not None else None
+    serialize_kwargs = lambda key: (
+        BaseSerialization.serialize(getattr(var, key)) if getattr(var, key) is not None else None
     )
     return {
         "__type": "START_TRIGGER_ARGS",
diff --git a/airflow/utils/pydantic.py b/airflow/utils/pydantic.py
deleted file mode 100644
index 85fde06195..0000000000
--- a/airflow/utils/pydantic.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# This is an util module that makes Pydantic use optional. While we are using Pydantic in the airflow core
-# codebase, we don't want to make it a hard dependency for all the users of the core codebase, because
-# it is only used in the serialization and deserialization of the models for Internal API and for nothing
-# else, and since Pydantic is a very popular library, we don't want to force the users of the core codebase
-# to install specific Pydantic version - especially that a lot of libraries out there still depend on
-# Pydantic 1 and our internal API uses Pydantic 2+
-
-from __future__ import annotations
-
-from importlib import metadata
-
-from packaging import version
-
-
-def is_pydantic_2_installed() -> bool:
-    try:
-        return version.parse(metadata.version("pydantic")).major == 2
-    except ImportError:
-        return False
-
-
-if is_pydantic_2_installed():
-    from pydantic import BaseModel, ConfigDict, PlainSerializer, PlainValidator, ValidationInfo
-else:
-
-    class BaseModel:  # type: ignore[no-redef]  # noqa: D101
-        def __init__(self, *args, **kwargs):
-            pass
-
-    class ConfigDict:  # type: ignore[no-redef]  # noqa: D101
-        def __init__(self, *args, **kwargs):
-            pass
-
-    class PlainSerializer:  # type: ignore[no-redef]  # noqa: D101
-        def __init__(self, *args, **kwargs):
-            pass
-
-    class PlainValidator:  # type: ignore[no-redef]  # noqa: D101
-        def __init__(self, *args, **kwargs):
-            pass
-
-    class ValidationInfo:  # type: ignore[no-redef]  # noqa: D101
-        def __init__(self, *args, **kwargs):
-            pass
diff --git a/contributing-docs/12_airflow_dependencies_and_extras.rst b/contributing-docs/12_airflow_dependencies_and_extras.rst
index 2bd2c1f953..baccdbf6e0 100644
--- a/contributing-docs/12_airflow_dependencies_and_extras.rst
+++ b/contributing-docs/12_airflow_dependencies_and_extras.rst
@@ -165,8 +165,8 @@ Those extras are available as regular core airflow extras - they install optiona
   .. START CORE EXTRAS HERE
 
 aiobotocore, apache-atlas, apache-webhdfs, async, cgroups, cloudpickle, github-enterprise, google-
-auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, pydantic, rabbitmq, s3fs, saml,
-sentry, statsd, uv, virtualenv
+auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, rabbitmq, s3fs, saml, sentry,
+statsd, uv, virtualenv
 
   .. END CORE EXTRAS HERE
 
diff --git a/dev/breeze/doc/images/output_shell.svg b/dev/breeze/doc/images/output_shell.svg
index 54814bb107..53fb9b978f 100644
--- a/dev/breeze/doc/images/output_shell.svg
+++ b/dev/breeze/doc/images/output_shell.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 3880.7999999999997" xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 3856.3999999999996" xmlns="http://www.w3.org/2000/svg">
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -43,7 +43,7 @@
 
     <defs>
     <clipPath id="breeze-shell-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="3829.7999999999997" />
+      <rect x="0" y="0" width="1463.0" height="3805.3999999999996" />
     </clipPath>
     <clipPath id="breeze-shell-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -510,12 +510,9 @@
 <clipPath id="breeze-shell-line-154">
     <rect x="0" y="3759.1" width="1464" height="24.65"/>
             </clipPath>
-<clipPath id="breeze-shell-line-155">
-    <rect x="0" y="3783.5" width="1464" height="24.65"/>
-            </clipPath>
     </defs>
 
-    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="3878.8" rx="8"/><text class="breeze-shell-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;shell</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="3854.4" rx="8"/><text class="breeze-shell-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;shell</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -662,26 +659,25 @@
 </text><text class="breeze-shell-r5" x="0" y="3289.6" textLength="12.2" clip-path="url(#breeze-shell-line-134)">│</text><text class="breeze-shell-r4" x="24.4" y="3289.6" textLength="170.8" clip-path="url(#breeze-shell-line-134)">--upgrade-boto</text><text class="breeze-shell-r1" x="341.6" y="3289.6" textLength="866.2" clip-path="url(#breeze-shell-line-134)">Remove&#160;aiobotocore&#160;and&#160;upgrade&#160;botocore&#160;and&#160;boto&#160;to&#160;the&#160;latest&#160;version.</text><tex [...]
 </text><text class="breeze-shell-r5" x="0" y="3314" textLength="12.2" clip-path="url(#breeze-shell-line-135)">│</text><text class="breeze-shell-r4" x="24.4" y="3314" textLength="268.4" clip-path="url(#breeze-shell-line-135)">--downgrade-sqlalchemy</text><text class="breeze-shell-r1" x="341.6" y="3314" textLength="610" clip-path="url(#breeze-shell-line-135)">Downgrade&#160;SQLAlchemy&#160;to&#160;minimum&#160;supported&#160;version.</text><text class="breeze-shell-r5" x="1451.8" y="3314"  [...]
 </text><text class="breeze-shell-r5" x="0" y="3338.4" textLength="12.2" clip-path="url(#breeze-shell-line-136)">│</text><text class="breeze-shell-r4" x="24.4" y="3338.4" textLength="244" clip-path="url(#breeze-shell-line-136)">--downgrade-pendulum</text><text class="breeze-shell-r1" x="341.6" y="3338.4" textLength="585.6" clip-path="url(#breeze-shell-line-136)">Downgrade&#160;Pendulum&#160;to&#160;minimum&#160;supported&#160;version.</text><text class="breeze-shell-r5" x="1451.8" y="3338 [...]
-</text><text class="breeze-shell-r5" x="0" y="3362.8" textLength="12.2" clip-path="url(#breeze-shell-line-137)">│</text><text class="breeze-shell-r4" x="24.4" y="3362.8" textLength="122" clip-path="url(#breeze-shell-line-137)">--pydantic</text><text class="breeze-shell-r1" x="341.6" y="3362.8" textLength="658.8" clip-path="url(#breeze-shell-line-137)">Determines&#160;which&#160;pydantic&#160;should&#160;be&#160;used&#160;during&#160;tests.</text><text class="breeze-shell-r7" x="1012.6" y [...]
-</text><text class="breeze-shell-r5" x="0" y="3387.2" textLength="1464" clip-path="url(#breeze-shell-line-138)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3387.2" textLength="12.2" clip-path="url(#breeze-shell-line-138)">
-</text><text class="breeze-shell-r5" x="0" y="3411.6" textLength="24.4" clip-path="url(#breeze-shell-line-139)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3411.6" textLength="183" clip-path="url(#breeze-shell-line-139)">&#160;DB&#160;test&#160;flags&#160;</text><text class="breeze-shell-r5" x="207.4" y="3411.6" textLength="1232.2" clip-path="url(#breeze-shell-line-139)">─────────────────────────────────────────────────────────────────────────────────────────────────────</text><te [...]
-</text><text class="breeze-shell-r5" x="0" y="3436" textLength="12.2" clip-path="url(#breeze-shell-line-140)">│</text><text class="breeze-shell-r4" x="24.4" y="3436" textLength="231.8" clip-path="url(#breeze-shell-line-140)">--run-db-tests-only</text><text class="breeze-shell-r1" x="305" y="3436" textLength="475.8" clip-path="url(#breeze-shell-line-140)">Only&#160;runs&#160;tests&#160;that&#160;require&#160;a&#160;database</text><text class="breeze-shell-r5" x="1451.8" y="3436" textLengt [...]
-</text><text class="breeze-shell-r5" x="0" y="3460.4" textLength="12.2" clip-path="url(#breeze-shell-line-141)">│</text><text class="breeze-shell-r4" x="24.4" y="3460.4" textLength="183" clip-path="url(#breeze-shell-line-141)">--skip-db-tests</text><text class="breeze-shell-r1" x="305" y="3460.4" textLength="414.8" clip-path="url(#breeze-shell-line-141)">Skip&#160;tests&#160;that&#160;require&#160;a&#160;database</text><text class="breeze-shell-r5" x="1451.8" y="3460.4" textLength="12.2" [...]
-</text><text class="breeze-shell-r5" x="0" y="3484.8" textLength="1464" clip-path="url(#breeze-shell-line-142)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3484.8" textLength="12.2" clip-path="url(#breeze-shell-line-142)">
-</text><text class="breeze-shell-r5" x="0" y="3509.2" textLength="24.4" clip-path="url(#breeze-shell-line-143)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3509.2" textLength="183" clip-path="url(#breeze-shell-line-143)">&#160;Other&#160;options&#160;</text><text class="breeze-shell-r5" x="207.4" y="3509.2" textLength="1232.2" clip-path="url(#breeze-shell-line-143)">─────────────────────────────────────────────────────────────────────────────────────────────────────</text><text cl [...]
-</text><text class="breeze-shell-r5" x="0" y="3533.6" textLength="12.2" clip-path="url(#breeze-shell-line-144)">│</text><text class="breeze-shell-r4" x="24.4" y="3533.6" textLength="256.2" clip-path="url(#breeze-shell-line-144)">--forward-credentials</text><text class="breeze-shell-r6" x="305" y="3533.6" textLength="24.4" clip-path="url(#breeze-shell-line-144)">-f</text><text class="breeze-shell-r1" x="353.8" y="3533.6" textLength="634.4" clip-path="url(#breeze-shell-line-144)">Forward&# [...]
-</text><text class="breeze-shell-r5" x="0" y="3558" textLength="12.2" clip-path="url(#breeze-shell-line-145)">│</text><text class="breeze-shell-r4" x="24.4" y="3558" textLength="122" clip-path="url(#breeze-shell-line-145)">--max-time</text><text class="breeze-shell-r1" x="353.8" y="3558" textLength="1049.2" clip-path="url(#breeze-shell-line-145)">Maximum&#160;time&#160;that&#160;the&#160;command&#160;should&#160;take&#160;-&#160;if&#160;it&#160;takes&#160;longer,&#160;the&#160;command&#1 [...]
-</text><text class="breeze-shell-r5" x="0" y="3582.4" textLength="12.2" clip-path="url(#breeze-shell-line-146)">│</text><text class="breeze-shell-r7" x="353.8" y="3582.4" textLength="1049.2" clip-path="url(#breeze-shell-line-146)">(INTEGER&#160;RANGE)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
-</text><text class="breeze-shell-r5" x="0" y="3606.8" textLength="12.2" clip-path="url(#breeze-shell-line-147)">│</text><text class="breeze-shell-r4" x="24.4" y="3606.8" textLength="219.6" clip-path="url(#breeze-shell-line-147)">--verbose-commands</text><text class="breeze-shell-r1" x="353.8" y="3606.8" textLength="414.8" clip-path="url(#breeze-shell-line-147)">Show&#160;details&#160;of&#160;commands&#160;executed.</text><text class="breeze-shell-r5" x="1451.8" y="3606.8" textLength="12. [...]
-</text><text class="breeze-shell-r5" x="0" y="3631.2" textLength="12.2" clip-path="url(#breeze-shell-line-148)">│</text><text class="breeze-shell-r4" x="24.4" y="3631.2" textLength="244" clip-path="url(#breeze-shell-line-148)">--keep-env-variables</text><text class="breeze-shell-r1" x="353.8" y="3631.2" textLength="1000.4" clip-path="url(#breeze-shell-line-148)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that&#160;might&#160;have&#160;side&#160;effect&#160;while&#160;run [...]
-</text><text class="breeze-shell-r5" x="0" y="3655.6" textLength="12.2" clip-path="url(#breeze-shell-line-149)">│</text><text class="breeze-shell-r4" x="24.4" y="3655.6" textLength="183" clip-path="url(#breeze-shell-line-149)">--no-db-cleanup</text><text class="breeze-shell-r1" x="353.8" y="3655.6" textLength="597.8" clip-path="url(#breeze-shell-line-149)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each&#160;test&#160;module</text><text class="breeze-shell-r5" x="1451 [...]
-</text><text class="breeze-shell-r5" x="0" y="3680" textLength="1464" clip-path="url(#breeze-shell-line-150)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3680" textLength="12.2" clip-path="url(#breeze-shell-line-150)">
-</text><text class="breeze-shell-r5" x="0" y="3704.4" textLength="24.4" clip-path="url(#breeze-shell-line-151)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3704.4" textLength="195.2" clip-path="url(#breeze-shell-line-151)">&#160;Common&#160;options&#160;</text><text class="breeze-shell-r5" x="219.6" y="3704.4" textLength="1220" clip-path="url(#breeze-shell-line-151)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text cl [...]
-</text><text class="breeze-shell-r5" x="0" y="3728.8" textLength="12.2" clip-path="url(#breeze-shell-line-152)">│</text><text class="breeze-shell-r4" x="24.4" y="3728.8" textLength="97.6" clip-path="url(#breeze-shell-line-152)">--answer</text><text class="breeze-shell-r6" x="158.6" y="3728.8" textLength="24.4" clip-path="url(#breeze-shell-line-152)">-a</text><text class="breeze-shell-r1" x="207.4" y="3728.8" textLength="317.2" clip-path="url(#breeze-shell-line-152)">Force&#160;answer&#16 [...]
-</text><text class="breeze-shell-r5" x="0" y="3753.2" textLength="12.2" clip-path="url(#breeze-shell-line-153)">│</text><text class="breeze-shell-r4" x="24.4" y="3753.2" textLength="109.8" clip-path="url(#breeze-shell-line-153)">--dry-run</text><text class="breeze-shell-r6" x="158.6" y="3753.2" textLength="24.4" clip-path="url(#breeze-shell-line-153)">-D</text><text class="breeze-shell-r1" x="207.4" y="3753.2" textLength="719.8" clip-path="url(#breeze-shell-line-153)">If&#160;dry-run&#16 [...]
-</text><text class="breeze-shell-r5" x="0" y="3777.6" textLength="12.2" clip-path="url(#breeze-shell-line-154)">│</text><text class="breeze-shell-r4" x="24.4" y="3777.6" textLength="109.8" clip-path="url(#breeze-shell-line-154)">--verbose</text><text class="breeze-shell-r6" x="158.6" y="3777.6" textLength="24.4" clip-path="url(#breeze-shell-line-154)">-v</text><text class="breeze-shell-r1" x="207.4" y="3777.6" textLength="585.6" clip-path="url(#breeze-shell-line-154)">Print&#160;verbose& [...]
-</text><text class="breeze-shell-r5" x="0" y="3802" textLength="12.2" clip-path="url(#breeze-shell-line-155)">│</text><text class="breeze-shell-r4" x="24.4" y="3802" textLength="73.2" clip-path="url(#breeze-shell-line-155)">--help</text><text class="breeze-shell-r6" x="158.6" y="3802" textLength="24.4" clip-path="url(#breeze-shell-line-155)">-h</text><text class="breeze-shell-r1" x="207.4" y="3802" textLength="329.4" clip-path="url(#breeze-shell-line-155)">Show&#160;this&#160;message&#16 [...]
-</text><text class="breeze-shell-r5" x="0" y="3826.4" textLength="1464" clip-path="url(#breeze-shell-line-156)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3826.4" textLength="12.2" clip-path="url(#breeze-shell-line-156)">
+</text><text class="breeze-shell-r5" x="0" y="3362.8" textLength="1464" clip-path="url(#breeze-shell-line-137)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3362.8" textLength="12.2" clip-path="url(#breeze-shell-line-137)">
+</text><text class="breeze-shell-r5" x="0" y="3387.2" textLength="24.4" clip-path="url(#breeze-shell-line-138)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3387.2" textLength="183" clip-path="url(#breeze-shell-line-138)">&#160;DB&#160;test&#160;flags&#160;</text><text class="breeze-shell-r5" x="207.4" y="3387.2" textLength="1232.2" clip-path="url(#breeze-shell-line-138)">─────────────────────────────────────────────────────────────────────────────────────────────────────</text><te [...]
+</text><text class="breeze-shell-r5" x="0" y="3411.6" textLength="12.2" clip-path="url(#breeze-shell-line-139)">│</text><text class="breeze-shell-r4" x="24.4" y="3411.6" textLength="231.8" clip-path="url(#breeze-shell-line-139)">--run-db-tests-only</text><text class="breeze-shell-r1" x="305" y="3411.6" textLength="475.8" clip-path="url(#breeze-shell-line-139)">Only&#160;runs&#160;tests&#160;that&#160;require&#160;a&#160;database</text><text class="breeze-shell-r5" x="1451.8" y="3411.6" t [...]
+</text><text class="breeze-shell-r5" x="0" y="3436" textLength="12.2" clip-path="url(#breeze-shell-line-140)">│</text><text class="breeze-shell-r4" x="24.4" y="3436" textLength="183" clip-path="url(#breeze-shell-line-140)">--skip-db-tests</text><text class="breeze-shell-r1" x="305" y="3436" textLength="414.8" clip-path="url(#breeze-shell-line-140)">Skip&#160;tests&#160;that&#160;require&#160;a&#160;database</text><text class="breeze-shell-r5" x="1451.8" y="3436" textLength="12.2" clip-pa [...]
+</text><text class="breeze-shell-r5" x="0" y="3460.4" textLength="1464" clip-path="url(#breeze-shell-line-141)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3460.4" textLength="12.2" clip-path="url(#breeze-shell-line-141)">
+</text><text class="breeze-shell-r5" x="0" y="3484.8" textLength="24.4" clip-path="url(#breeze-shell-line-142)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3484.8" textLength="183" clip-path="url(#breeze-shell-line-142)">&#160;Other&#160;options&#160;</text><text class="breeze-shell-r5" x="207.4" y="3484.8" textLength="1232.2" clip-path="url(#breeze-shell-line-142)">─────────────────────────────────────────────────────────────────────────────────────────────────────</text><text cl [...]
+</text><text class="breeze-shell-r5" x="0" y="3509.2" textLength="12.2" clip-path="url(#breeze-shell-line-143)">│</text><text class="breeze-shell-r4" x="24.4" y="3509.2" textLength="256.2" clip-path="url(#breeze-shell-line-143)">--forward-credentials</text><text class="breeze-shell-r6" x="305" y="3509.2" textLength="24.4" clip-path="url(#breeze-shell-line-143)">-f</text><text class="breeze-shell-r1" x="353.8" y="3509.2" textLength="634.4" clip-path="url(#breeze-shell-line-143)">Forward&# [...]
+</text><text class="breeze-shell-r5" x="0" y="3533.6" textLength="12.2" clip-path="url(#breeze-shell-line-144)">│</text><text class="breeze-shell-r4" x="24.4" y="3533.6" textLength="122" clip-path="url(#breeze-shell-line-144)">--max-time</text><text class="breeze-shell-r1" x="353.8" y="3533.6" textLength="1049.2" clip-path="url(#breeze-shell-line-144)">Maximum&#160;time&#160;that&#160;the&#160;command&#160;should&#160;take&#160;-&#160;if&#160;it&#160;takes&#160;longer,&#160;the&#160;comm [...]
+</text><text class="breeze-shell-r5" x="0" y="3558" textLength="12.2" clip-path="url(#breeze-shell-line-145)">│</text><text class="breeze-shell-r7" x="353.8" y="3558" textLength="1049.2" clip-path="url(#breeze-shell-line-145)">(INTEGER&#160;RANGE)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160 [...]
+</text><text class="breeze-shell-r5" x="0" y="3582.4" textLength="12.2" clip-path="url(#breeze-shell-line-146)">│</text><text class="breeze-shell-r4" x="24.4" y="3582.4" textLength="219.6" clip-path="url(#breeze-shell-line-146)">--verbose-commands</text><text class="breeze-shell-r1" x="353.8" y="3582.4" textLength="414.8" clip-path="url(#breeze-shell-line-146)">Show&#160;details&#160;of&#160;commands&#160;executed.</text><text class="breeze-shell-r5" x="1451.8" y="3582.4" textLength="12. [...]
+</text><text class="breeze-shell-r5" x="0" y="3606.8" textLength="12.2" clip-path="url(#breeze-shell-line-147)">│</text><text class="breeze-shell-r4" x="24.4" y="3606.8" textLength="244" clip-path="url(#breeze-shell-line-147)">--keep-env-variables</text><text class="breeze-shell-r1" x="353.8" y="3606.8" textLength="1000.4" clip-path="url(#breeze-shell-line-147)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that&#160;might&#160;have&#160;side&#160;effect&#160;while&#160;run [...]
+</text><text class="breeze-shell-r5" x="0" y="3631.2" textLength="12.2" clip-path="url(#breeze-shell-line-148)">│</text><text class="breeze-shell-r4" x="24.4" y="3631.2" textLength="183" clip-path="url(#breeze-shell-line-148)">--no-db-cleanup</text><text class="breeze-shell-r1" x="353.8" y="3631.2" textLength="597.8" clip-path="url(#breeze-shell-line-148)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each&#160;test&#160;module</text><text class="breeze-shell-r5" x="1451 [...]
+</text><text class="breeze-shell-r5" x="0" y="3655.6" textLength="1464" clip-path="url(#breeze-shell-line-149)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3655.6" textLength="12.2" clip-path="url(#breeze-shell-line-149)">
+</text><text class="breeze-shell-r5" x="0" y="3680" textLength="24.4" clip-path="url(#breeze-shell-line-150)">╭─</text><text class="breeze-shell-r5" x="24.4" y="3680" textLength="195.2" clip-path="url(#breeze-shell-line-150)">&#160;Common&#160;options&#160;</text><text class="breeze-shell-r5" x="219.6" y="3680" textLength="1220" clip-path="url(#breeze-shell-line-150)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="b [...]
+</text><text class="breeze-shell-r5" x="0" y="3704.4" textLength="12.2" clip-path="url(#breeze-shell-line-151)">│</text><text class="breeze-shell-r4" x="24.4" y="3704.4" textLength="97.6" clip-path="url(#breeze-shell-line-151)">--answer</text><text class="breeze-shell-r6" x="158.6" y="3704.4" textLength="24.4" clip-path="url(#breeze-shell-line-151)">-a</text><text class="breeze-shell-r1" x="207.4" y="3704.4" textLength="317.2" clip-path="url(#breeze-shell-line-151)">Force&#160;answer&#16 [...]
+</text><text class="breeze-shell-r5" x="0" y="3728.8" textLength="12.2" clip-path="url(#breeze-shell-line-152)">│</text><text class="breeze-shell-r4" x="24.4" y="3728.8" textLength="109.8" clip-path="url(#breeze-shell-line-152)">--dry-run</text><text class="breeze-shell-r6" x="158.6" y="3728.8" textLength="24.4" clip-path="url(#breeze-shell-line-152)">-D</text><text class="breeze-shell-r1" x="207.4" y="3728.8" textLength="719.8" clip-path="url(#breeze-shell-line-152)">If&#160;dry-run&#16 [...]
+</text><text class="breeze-shell-r5" x="0" y="3753.2" textLength="12.2" clip-path="url(#breeze-shell-line-153)">│</text><text class="breeze-shell-r4" x="24.4" y="3753.2" textLength="109.8" clip-path="url(#breeze-shell-line-153)">--verbose</text><text class="breeze-shell-r6" x="158.6" y="3753.2" textLength="24.4" clip-path="url(#breeze-shell-line-153)">-v</text><text class="breeze-shell-r1" x="207.4" y="3753.2" textLength="585.6" clip-path="url(#breeze-shell-line-153)">Print&#160;verbose& [...]
+</text><text class="breeze-shell-r5" x="0" y="3777.6" textLength="12.2" clip-path="url(#breeze-shell-line-154)">│</text><text class="breeze-shell-r4" x="24.4" y="3777.6" textLength="73.2" clip-path="url(#breeze-shell-line-154)">--help</text><text class="breeze-shell-r6" x="158.6" y="3777.6" textLength="24.4" clip-path="url(#breeze-shell-line-154)">-h</text><text class="breeze-shell-r1" x="207.4" y="3777.6" textLength="329.4" clip-path="url(#breeze-shell-line-154)">Show&#160;this&#160;mes [...]
+</text><text class="breeze-shell-r5" x="0" y="3802" textLength="1464" clip-path="url(#breeze-shell-line-155)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-shell-r1" x="1464" y="3802" textLength="12.2" clip-path="url(#breeze-shell-line-155)">
 </text>
     </g>
     </g>
diff --git a/dev/breeze/doc/images/output_shell.txt b/dev/breeze/doc/images/output_shell.txt
index 9443a8f293..080a9a26f9 100644
--- a/dev/breeze/doc/images/output_shell.txt
+++ b/dev/breeze/doc/images/output_shell.txt
@@ -1 +1 @@
-23410acb975d790d4f6bbd037cb54dff
+1ff986d98038ff346617ad0224a7f7ad
diff --git a/dev/breeze/doc/images/output_testing_db-tests.svg b/dev/breeze/doc/images/output_testing_db-tests.svg
index 398233f575..7ef7056dce 100644
--- a/dev/breeze/doc/images/output_testing_db-tests.svg
+++ b/dev/breeze/doc/images/output_testing_db-tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 2782.7999999999997" xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 2758.3999999999996" xmlns="http://www.w3.org/2000/svg">
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -43,7 +43,7 @@
 
     <defs>
     <clipPath id="breeze-testing-db-tests-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="2731.7999999999997" />
+      <rect x="0" y="0" width="1463.0" height="2707.3999999999996" />
     </clipPath>
     <clipPath id="breeze-testing-db-tests-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -375,12 +375,9 @@
 <clipPath id="breeze-testing-db-tests-line-109">
     <rect x="0" y="2661.1" width="1464" height="24.65"/>
             </clipPath>
-<clipPath id="breeze-testing-db-tests-line-110">
-    <rect x="0" y="2685.5" width="1464" height="24.65"/>
-            </clipPath>
     </defs>
 
-    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="2780.8" rx="8"/><text class="breeze-testing-db-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;db-tests</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="2756.4" rx="8"/><text class="breeze-testing-db-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;db-tests</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -448,60 +445,59 @@
 </text><text class="breeze-testing-db-tests-r5" x="0" y="1362" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-55)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1362" textLength="170.8" clip-path="url(#breeze-testing-db-tests-line-55)">--upgrade-boto</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1362" textLength="866.2" clip-path="url(#breeze-testing-db-tests-line-55)">Remove&#160;aiobotocore&#160;and&#160;upgrade&#160;botocore&#160;and&#160;b [...]
 </text><text class="breeze-testing-db-tests-r5" x="0" y="1386.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-56)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1386.4" textLength="268.4" clip-path="url(#breeze-testing-db-tests-line-56)">--downgrade-sqlalchemy</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1386.4" textLength="610" clip-path="url(#breeze-testing-db-tests-line-56)">Downgrade&#160;SQLAlchemy&#160;to&#160;minimum&#160;supported&# [...]
 </text><text class="breeze-testing-db-tests-r5" x="0" y="1410.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-57)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1410.8" textLength="244" clip-path="url(#breeze-testing-db-tests-line-57)">--downgrade-pendulum</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1410.8" textLength="585.6" clip-path="url(#breeze-testing-db-tests-line-57)">Downgrade&#160;Pendulum&#160;to&#160;minimum&#160;supported&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1435.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-58)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1435.2" textLength="122" clip-path="url(#breeze-testing-db-tests-line-58)">--pydantic</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1435.2" textLength="658.8" clip-path="url(#breeze-testing-db-tests-line-58)">Determines&#160;which&#160;pydantic&#160;should&#160;be&#160;used&#160;duri [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1459.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-59)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1459.6" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-59)">--remove-arm-packages</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1459.6" textLength="817.4" clip-path="url(#breeze-testing-db-tests-line-59)">Removes&#160;arm&#160;packages&#160;from&#160;the&#160;image&# [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1484" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-60)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="1484" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-60)">
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1508.4" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-61)">╭─</text><text class="breeze-testing-db-tests-r5" x="24.4" y="1508.4" textLength="402.6" clip-path="url(#breeze-testing-db-tests-line-61)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-db-tests-r5" x="427" y="1508.4" textLength="1012.6" clip-path="url(#breeze-testing-db-tests-line-61)">──────────────────── [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1532.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-62)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1532.8" textLength="378.2" clip-path="url(#breeze-testing-db-tests-line-62)">--airflow-constraints-reference</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1532.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-62)">Constraint&#160;reference&#160;to&#160;use&#160;for&#1 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1557.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-63)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1557.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-63)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1581.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-64)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="1581.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-64)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1606" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-65)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1606" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-65)">--clean-airflow-installation</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1606" textLength="671" clip-path="url(#breeze-testing-db-tests-line-65)">Clean&#160;the&#160;airflow&#160;installation&#160;before&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-66)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1630.4" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-66)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-db-tests-r4" x="1024.8" y="1630.4" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-66)">--use-airflow-version</text><text class="bree [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1654.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-67)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1654.8" textLength="329.4" clip-path="url(#breeze-testing-db-tests-line-67)">--force-lowest-dependencies</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1654.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-67)">Run&#160;tests&#160;for&#160;the&#160;lowest&#160;direct&# [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1679.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-68)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1679.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-68)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1679.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-68)" [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1703.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-69)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1703.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-69)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1728" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-70)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1728" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-70)">--github-repository</text><text class="breeze-testing-db-tests-r7" x="719.8" y="1728" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-70)">-g</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1728" te [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1752.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-71)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1752.4" textLength="585.6" clip-path="url(#breeze-testing-db-tests-line-71)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1776.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-72)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1776.8" textLength="134.2" clip-path="url(#breeze-testing-db-tests-line-72)">--image-tag</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1776.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-72)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is&#160;used&#160;to&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1801.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-73)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1801.2" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-73)">(implies&#160;</text><text class="breeze-testing-db-tests-r4" x="878.4" y="1801.2" textLength="183" clip-path="url(#breeze-testing-db-tests-line-73)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="1061 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1825.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-74)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="1825.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-74)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1850" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-75)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1850" textLength="671" clip-path="url(#breeze-testing-db-tests-line-75)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-76)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1874.4" textLength="414.8" clip-path="url(#breeze-testing-db-tests-line-76)">--install-airflow-with-constraints</text><text class="breeze-testing-db-tests-r1" x="439.2" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-76)">/</text><text class="breeze-testing-db-tests-r4" x [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-77)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1898.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-77)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1898.8" textLength=" [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-78)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1923.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-78)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1923.2" textLength="12.2" clip-path="url(#breeze-testin [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-79)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1947.6" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-79)">--package-format</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1947.6" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-79)">Format&#160;of&#160;packages.</text><text class="breeze-testing-db- [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-80)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1972" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-80)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1972" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-80)">│</text><text class="breeze-testing-db-tests-r1"  [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-81)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1996.4" textLength="390.4" clip-path="url(#breeze-testing-db-tests-line-81)">--providers-constraints-location</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1996.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-81)">Location&#160;of&#160;providers&#160;constraints&#160 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-82)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2020.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-82)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-83)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2045.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-83)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-84)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2069.6" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-84)">--providers-skip-constraints</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2069.6" textLength="597.8" clip-path="url(#breeze-testing-db-tests-line-84)">Do&#160;not&#160;use&#160;constraints&#160;when&#160;in [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-85)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2094" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-85)">--use-airflow-version</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-db-tests-line-85)">Use&#160;(reinstall&#160;at&#160;entry)&#160;Airflow&#160;version&#160 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-86)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-86)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2118.4" textLength="12.2" clip-path="url(#bre [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-87)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2142.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-87)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2142.8" textLength="12.2" clip-path="url(#breeze-testin [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-88)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2167.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-88)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-89)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2191.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-89)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-89)">│</text><text  [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-90)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2216" textLength="97.6" clip-path="url(#breeze-testing-db-tests-line-90)">Implies&#160;</text><text class="breeze-testing-db-tests-r4" x="866.2" y="2216" textLength="183" clip-path="url(#breeze-testing-db-tests-line-90)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="1049.2" y="2 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-91)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2240.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-91)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2240 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-92)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2264.8" textLength="292.8" clip-path="url(#breeze-testing-db-tests-line-92)">--use-packages-from-dist</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2264.8" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-92)">Install&#160;all&#160;found&#160;packages&#160;(</text><tex [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-93)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2289.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-93)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2289.2" textLength=" [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-94)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2313.6" textLength="183" clip-path="url(#breeze-testing-db-tests-line-94)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2313.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-94)">Choose&#160;scope&#160;of&#160;local&#160;sources&#160;that&#160;should& [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2338" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-95)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2338" textLength="671" clip-path="url(#breeze-testing-db-tests-line-95)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2338" textLeng [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-96)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2362.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-96)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-97)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2386.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-97)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-98)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="2411.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-98)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-99)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2435.6" textLength="317.2" clip-path="url(#breeze-testing-db-tests-line-99)">--skip-docker-compose-down</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2435.6" textLength="549" clip-path="url(#breeze-testing-db-tests-line-99)">Skips&#160;running&#160;docker-compose&#160;down&#160;after [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2460" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-100)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2460" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-100)">--skip-providers</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2460" textLength="671" clip-path="url(#breeze-testing-db-tests-line-100)">Space-separated&#160;list&#160;of&#160;provider&#160;ids&#160;to&#160;sk [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2484.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-101)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2484.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-101)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2508.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-102)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2508.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-102)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2533.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-103)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2533.2" textLength="244" clip-path="url(#breeze-testing-db-tests-line-103)">--keep-env-variables</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2533.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-103)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-104)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2557.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-104)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</tex [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2582" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-105)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2582" textLength="183" clip-path="url(#breeze-testing-db-tests-line-105)">--no-db-cleanup</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2582" textLength="597.8" clip-path="url(#breeze-testing-db-tests-line-105)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each&#160; [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2606.4" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-106)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="2606.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-106)">
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2630.8" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-107)">╭─</text><text class="breeze-testing-db-tests-r5" x="24.4" y="2630.8" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-107)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-db-tests-r5" x="219.6" y="2630.8" textLength="1220" clip-path="url(#breeze-testing-db-tests-line-107)">───────────────────────────────────────────────── [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2655.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-108)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2655.2" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-108)">--dry-run</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2655.2" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-108)">-D</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2655.2" t [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2679.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-109)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2679.6" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-109)">--verbose</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2679.6" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-109)">-v</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2679.6" t [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2704" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-110)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2704" textLength="73.2" clip-path="url(#breeze-testing-db-tests-line-110)">--help</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2704" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-110)">-h</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2704" textLength="3 [...]
-</text><text class="breeze-testing-db-tests-r5" x="0" y="2728.4" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-111)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="2728.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-111)">
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1435.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-58)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1435.2" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-58)">--remove-arm-packages</text><text class="breeze-testing-db-tests-r1" x="341.6" y="1435.2" textLength="817.4" clip-path="url(#breeze-testing-db-tests-line-58)">Removes&#160;arm&#160;packages&#160;from&#160;the&#160;image&# [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1459.6" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-59)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="1459.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-59)">
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1484" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-60)">╭─</text><text class="breeze-testing-db-tests-r5" x="24.4" y="1484" textLength="402.6" clip-path="url(#breeze-testing-db-tests-line-60)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-db-tests-r5" x="427" y="1484" textLength="1012.6" clip-path="url(#breeze-testing-db-tests-line-60)">────────────────────────── [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1508.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-61)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1508.4" textLength="378.2" clip-path="url(#breeze-testing-db-tests-line-61)">--airflow-constraints-reference</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1508.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-61)">Constraint&#160;reference&#160;to&#160;use&#160;for&#1 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1532.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-62)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1532.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-62)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1557.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-63)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="1557.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-63)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1581.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-64)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1581.6" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-64)">--clean-airflow-installation</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1581.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-64)">Clean&#160;the&#160;airflow&#160;installation&#160;before [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1606" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-65)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1606" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-65)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-db-tests-r4" x="1024.8" y="1606" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-65)">--use-airflow-version</text><text class="breeze-tes [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-66)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1630.4" textLength="329.4" clip-path="url(#breeze-testing-db-tests-line-66)">--force-lowest-dependencies</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1630.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-66)">Run&#160;tests&#160;for&#160;the&#160;lowest&#160;direct&# [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1654.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-67)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1654.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-67)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1654.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-67)" [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1679.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-68)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1679.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-68)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1703.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-69)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1703.6" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-69)">--github-repository</text><text class="breeze-testing-db-tests-r7" x="719.8" y="1703.6" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-69)">-g</text><text class="breeze-testing-db-tests-r1" x="768.6" y="17 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1728" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-70)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1728" textLength="585.6" clip-path="url(#breeze-testing-db-tests-line-70)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451. [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1752.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-71)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1752.4" textLength="134.2" clip-path="url(#breeze-testing-db-tests-line-71)">--image-tag</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1752.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-71)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is&#160;used&#160;to&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1776.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-72)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1776.8" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-72)">(implies&#160;</text><text class="breeze-testing-db-tests-r4" x="878.4" y="1776.8" textLength="183" clip-path="url(#breeze-testing-db-tests-line-72)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="1061 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1801.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-73)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="1801.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-73)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1825.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-74)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1825.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-74)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1850" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-75)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1850" textLength="414.8" clip-path="url(#breeze-testing-db-tests-line-75)">--install-airflow-with-constraints</text><text class="breeze-testing-db-tests-r1" x="439.2" y="1850" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-75)">/</text><text class="breeze-testing-db-tests-r4" x="451. [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-76)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1874.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-76)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1874.4" textLength=" [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-77)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1898.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-77)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1898.8" textLength="12.2" clip-path="url(#breeze-testin [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-78)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1923.2" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-78)">--package-format</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1923.2" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-78)">Format&#160;of&#160;packages.</text><text class="breeze-testing-db- [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-79)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="1947.6" textLength="231.8" clip-path="url(#breeze-testing-db-tests-line-79)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-79)">│</text><text class="breeze-testing-db-test [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-80)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="1972" textLength="390.4" clip-path="url(#breeze-testing-db-tests-line-80)">--providers-constraints-location</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1972" textLength="671" clip-path="url(#breeze-testing-db-tests-line-80)">Location&#160;of&#160;providers&#160;constraints&#160;to&#1 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-81)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="1996.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-81)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-82)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2020.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-82)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-83)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2045.2" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-83)">--providers-skip-constraints</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2045.2" textLength="597.8" clip-path="url(#breeze-testing-db-tests-line-83)">Do&#160;not&#160;use&#160;constraints&#160;when&#160;in [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-84)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2069.6" textLength="256.2" clip-path="url(#breeze-testing-db-tests-line-84)">--use-airflow-version</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2069.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-84)">Use&#160;(reinstall&#160;at&#160;entry)&#160;Airflow&#160;versio [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-85)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-db-tests-line-85)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2094" textLength="12.2" clip-path="url(#breeze-te [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-86)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-86)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2118.4" textLength="12.2" clip-path="url(#breeze-testin [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-87)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2142.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-87)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-88)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2167.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-88)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-88)">│</text><text  [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-89)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2191.6" textLength="97.6" clip-path="url(#breeze-testing-db-tests-line-89)">Implies&#160;</text><text class="breeze-testing-db-tests-r4" x="866.2" y="2191.6" textLength="183" clip-path="url(#breeze-testing-db-tests-line-89)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="1049.2 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-90)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2216" textLength="671" clip-path="url(#breeze-testing-db-tests-line-90)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2216" te [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-91)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2240.4" textLength="292.8" clip-path="url(#breeze-testing-db-tests-line-91)">--use-packages-from-dist</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2240.4" textLength="341.6" clip-path="url(#breeze-testing-db-tests-line-91)">Install&#160;all&#160;found&#160;packages&#160;(</text><tex [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-92)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2264.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-92)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2264.8" textLength=" [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-93)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2289.2" textLength="183" clip-path="url(#breeze-testing-db-tests-line-93)">--mount-sources</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2289.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-93)">Choose&#160;scope&#160;of&#160;local&#160;sources&#160;that&#160;should& [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-94)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2313.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-94)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451.8" y="2313.6" te [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2338" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-95)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2338" textLength="671" clip-path="url(#breeze-testing-db-tests-line-95)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-db-tests-r5" x="1451. [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-96)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2362.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-96)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-97)">│</text><text class="breeze-testing-db-tests-r5" x="768.6" y="2386.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-97)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-98)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2411.2" textLength="317.2" clip-path="url(#breeze-testing-db-tests-line-98)">--skip-docker-compose-down</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2411.2" textLength="549" clip-path="url(#breeze-testing-db-tests-line-98)">Skips&#160;running&#160;docker-compose&#160;down&#160;after [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-99)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2435.6" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-99)">--skip-providers</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2435.6" textLength="671" clip-path="url(#breeze-testing-db-tests-line-99)">Space-separated&#160;list&#160;of&#160;provider&#160;ids&#160;to&#160 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2460" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-100)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2460" textLength="671" clip-path="url(#breeze-testing-db-tests-line-100)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2484.4" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-101)">│</text><text class="breeze-testing-db-tests-r6" x="768.6" y="2484.4" textLength="671" clip-path="url(#breeze-testing-db-tests-line-101)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2508.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-102)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2508.8" textLength="244" clip-path="url(#breeze-testing-db-tests-line-102)">--keep-env-variables</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2508.8" textLength="671" clip-path="url(#breeze-testing-db-tests-line-102)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2533.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-103)">│</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2533.2" textLength="671" clip-path="url(#breeze-testing-db-tests-line-103)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</tex [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-104)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2557.6" textLength="183" clip-path="url(#breeze-testing-db-tests-line-104)">--no-db-cleanup</text><text class="breeze-testing-db-tests-r1" x="768.6" y="2557.6" textLength="597.8" clip-path="url(#breeze-testing-db-tests-line-104)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2582" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-105)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="2582" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-105)">
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2606.4" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-106)">╭─</text><text class="breeze-testing-db-tests-r5" x="24.4" y="2606.4" textLength="195.2" clip-path="url(#breeze-testing-db-tests-line-106)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-db-tests-r5" x="219.6" y="2606.4" textLength="1220" clip-path="url(#breeze-testing-db-tests-line-106)">───────────────────────────────────────────────── [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2630.8" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-107)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2630.8" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-107)">--dry-run</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2630.8" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-107)">-D</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2630.8" t [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2655.2" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-108)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2655.2" textLength="109.8" clip-path="url(#breeze-testing-db-tests-line-108)">--verbose</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2655.2" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-108)">-v</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2655.2" t [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2679.6" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-109)">│</text><text class="breeze-testing-db-tests-r4" x="24.4" y="2679.6" textLength="73.2" clip-path="url(#breeze-testing-db-tests-line-109)">--help</text><text class="breeze-testing-db-tests-r7" x="158.6" y="2679.6" textLength="24.4" clip-path="url(#breeze-testing-db-tests-line-109)">-h</text><text class="breeze-testing-db-tests-r1" x="207.4" y="2679.6" textL [...]
+</text><text class="breeze-testing-db-tests-r5" x="0" y="2704" textLength="1464" clip-path="url(#breeze-testing-db-tests-line-110)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-db-tests-r1" x="1464" y="2704" textLength="12.2" clip-path="url(#breeze-testing-db-tests-line-110)">
 </text>
     </g>
     </g>
diff --git a/dev/breeze/doc/images/output_testing_db-tests.txt b/dev/breeze/doc/images/output_testing_db-tests.txt
index 015673020f..29b92971d9 100644
--- a/dev/breeze/doc/images/output_testing_db-tests.txt
+++ b/dev/breeze/doc/images/output_testing_db-tests.txt
@@ -1 +1 @@
-cd5b99d8875eeaa1912cc0362dad4d91
+091647cf9bbc26bef8ded8366bbabd51
diff --git a/dev/breeze/doc/images/output_testing_non-db-tests.svg b/dev/breeze/doc/images/output_testing_non-db-tests.svg
index 2d4b943b98..ca0bd7c581 100644
--- a/dev/breeze/doc/images/output_testing_non-db-tests.svg
+++ b/dev/breeze/doc/images/output_testing_non-db-tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 2538.7999999999997" xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 2514.3999999999996" xmlns="http://www.w3.org/2000/svg">
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -43,7 +43,7 @@
 
     <defs>
     <clipPath id="breeze-testing-non-db-tests-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="2487.7999999999997" />
+      <rect x="0" y="0" width="1463.0" height="2463.3999999999996" />
     </clipPath>
     <clipPath id="breeze-testing-non-db-tests-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -345,12 +345,9 @@
 <clipPath id="breeze-testing-non-db-tests-line-99">
     <rect x="0" y="2417.1" width="1464" height="24.65"/>
             </clipPath>
-<clipPath id="breeze-testing-non-db-tests-line-100">
-    <rect x="0" y="2441.5" width="1464" height="24.65"/>
-            </clipPath>
     </defs>
 
-    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="2536.8" rx="8"/><text class="breeze-testing-non-db-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;non-db-tests</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="2512.4" rx="8"/><text class="breeze-testing-non-db-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;non-db-tests</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -408,60 +405,59 @@
 </text><text class="breeze-testing-non-db-tests-r5" x="0" y="1118" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-45)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1118" textLength="170.8" clip-path="url(#breeze-testing-non-db-tests-line-45)">--upgrade-boto</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1118" textLength="866.2" clip-path="url(#breeze-testing-non-db-tests-line-45)">Remove&#160;aiobotocore&#160;and&#160;upgrade&#160; [...]
 </text><text class="breeze-testing-non-db-tests-r5" x="0" y="1142.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-46)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1142.4" textLength="268.4" clip-path="url(#breeze-testing-non-db-tests-line-46)">--downgrade-sqlalchemy</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1142.4" textLength="610" clip-path="url(#breeze-testing-non-db-tests-line-46)">Downgrade&#160;SQLAlchemy&#160;to&#160; [...]
 </text><text class="breeze-testing-non-db-tests-r5" x="0" y="1166.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-47)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1166.8" textLength="244" clip-path="url(#breeze-testing-non-db-tests-line-47)">--downgrade-pendulum</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1166.8" textLength="585.6" clip-path="url(#breeze-testing-non-db-tests-line-47)">Downgrade&#160;Pendulum&#160;to&#160;mini [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1191.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-48)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1191.2" textLength="122" clip-path="url(#breeze-testing-non-db-tests-line-48)">--pydantic</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1191.2" textLength="658.8" clip-path="url(#breeze-testing-non-db-tests-line-48)">Determines&#160;which&#160;pydantic&#160;should&#16 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1215.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-49)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1215.6" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-49)">--remove-arm-packages</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1215.6" textLength="817.4" clip-path="url(#breeze-testing-non-db-tests-line-49)">Removes&#160;arm&#160;packages&#160;fr [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1240" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-50)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="1240" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-50)">
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1264.4" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-51)">╭─</text><text class="breeze-testing-non-db-tests-r5" x="24.4" y="1264.4" textLength="402.6" clip-path="url(#breeze-testing-non-db-tests-line-51)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-non-db-tests-r5" x="427" y="1264.4" textLength="1012.6" clip-path="url(#breeze-testing-non-db-tests-line-5 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1288.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-52)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1288.8" textLength="378.2" clip-path="url(#breeze-testing-non-db-tests-line-52)">--airflow-constraints-reference</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1288.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-52)">Constraint&#160;reference&#160 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1313.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-53)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1313.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-53)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1337.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-54)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1337.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-54)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1362" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-55)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1362" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-55)">--clean-airflow-installation</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1362" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-55)">Clean&#160;the&#160;airflow&#160;instal [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1386.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-56)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1386.4" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-56)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-non-db-tests-r4" x="1024.8" y="1386.4" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-56)">--use-airflow-version [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1410.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-57)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1410.8" textLength="329.4" clip-path="url(#breeze-testing-non-db-tests-line-57)">--force-lowest-dependencies</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1410.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-57)">Run&#160;tests&#160;for&#160;the&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1435.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-58)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1435.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-58)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1435.2" textLength="12.2" clip-path="url(#breeze-testin [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1459.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-59)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1459.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-59)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1484" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-60)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1484" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-60)">--github-repository</text><text class="breeze-testing-non-db-tests-r7" x="719.8" y="1484" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-60)">-g</text><text class="breeze-testing-non-db-tes [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1508.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-61)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1508.4" textLength="585.6" clip-path="url(#breeze-testing-non-db-tests-line-61)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-n [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1532.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-62)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1532.8" textLength="134.2" clip-path="url(#breeze-testing-non-db-tests-line-62)">--image-tag</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1532.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-62)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1557.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-63)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1557.2" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-63)">(implies&#160;</text><text class="breeze-testing-non-db-tests-r4" x="878.4" y="1557.2" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-63)">--mount-sources</text><text class="breeze-test [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1581.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-64)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1581.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-64)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1606" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-65)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1606" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-65)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-66)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1630.4" textLength="414.8" clip-path="url(#breeze-testing-non-db-tests-line-66)">--install-airflow-with-constraints</text><text class="breeze-testing-non-db-tests-r1" x="439.2" y="1630.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-66)">/</text><text class="breez [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1654.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-67)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1654.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-67)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y=" [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1679.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-68)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1679.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-68)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1679.2" textLength="12.2" clip-path [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1703.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-69)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1703.6" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-69)">--package-format</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1703.6" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-69)">Format&#160;of&#160;packages.</text><text c [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1728" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-70)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1728" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-70)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1728" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-70)">│</text><text class="bree [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1752.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-71)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1752.4" textLength="390.4" clip-path="url(#breeze-testing-non-db-tests-line-71)">--providers-constraints-location</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1752.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-71)">Location&#160;of&#160;provide [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1776.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-72)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1776.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-72)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1801.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-73)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1801.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-73)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1825.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-74)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1825.6" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-74)">--providers-skip-constraints</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1825.6" textLength="597.8" clip-path="url(#breeze-testing-non-db-tests-line-74)">Do&#160;not&#160;use&#160;const [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1850" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-75)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1850" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-75)">--use-airflow-version</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1850" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-75)">Use&#160;(reinstall&#160;at&#160;entry)&#160;A [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-76)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1874.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-76)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1874.4" textLength="12.2" [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-77)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1898.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-77)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1898.8" textLength="12.2" clip-path [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-78)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1923.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-78)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-79)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1947.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-79)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests- [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-80)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1972" textLength="97.6" clip-path="url(#breeze-testing-non-db-tests-line-80)">Implies&#160;</text><text class="breeze-testing-non-db-tests-r4" x="866.2" y="1972" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-80)">--mount-sources</text><text class="breeze-testing-non- [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-81)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1996.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-81)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-82)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2020.8" textLength="292.8" clip-path="url(#breeze-testing-non-db-tests-line-82)">--use-packages-from-dist</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2020.8" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-82)">Install&#160;all&#160;found&#160;pa [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-83)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2045.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-83)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y=" [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-84)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2069.6" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-84)">--mount-sources</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2069.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-84)">Choose&#160;scope&#160;of&#160;local&#160;source [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-85)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-85)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451. [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-86)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-86)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-n [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-87)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2142.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-87)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-88)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="2167.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-88)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-89)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2191.6" textLength="317.2" clip-path="url(#breeze-testing-non-db-tests-line-89)">--skip-docker-compose-down</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2191.6" textLength="549" clip-path="url(#breeze-testing-non-db-tests-line-89)">Skips&#160;running&#160;docker-comp [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-90)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2216" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-90)">--skip-providers</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2216" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-90)">Space-separated&#160;list&#160;of&#160;provider&#16 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-91)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2240.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-91)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-92)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2264.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-92)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-93)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2289.2" textLength="244" clip-path="url(#breeze-testing-non-db-tests-line-93)">--keep-env-variables</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2289.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-93)">Do&#160;not&#160;clear&#160;environment&#16 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-94)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2313.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-94)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2338" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-95)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2338" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-95)">--no-db-cleanup</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2338" textLength="597.8" clip-path="url(#breeze-testing-non-db-tests-line-95)">Do&#160;not&#160;clear&#160;the&#160;database&#160;b [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2362.4" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-96)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-96)">
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2386.8" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-97)">╭─</text><text class="breeze-testing-non-db-tests-r5" x="24.4" y="2386.8" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-97)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-non-db-tests-r5" x="219.6" y="2386.8" textLength="1220" clip-path="url(#breeze-testing-non-db-tests-line-97)">──────────────────────────── [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-98)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2411.2" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-98)">--dry-run</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2411.2" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-98)">-D</text><text class="breeze-testing-non-db-tests-r [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-99)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2435.6" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-99)">--verbose</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2435.6" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-99)">-v</text><text class="breeze-testing-non-db-tests-r [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2460" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-100)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2460" textLength="73.2" clip-path="url(#breeze-testing-non-db-tests-line-100)">--help</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2460" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-100)">-h</text><text class="breeze-testing-non-db-tests-r1" x="2 [...]
-</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2484.4" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-101)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="2484.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-101)">
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1191.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-48)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1191.2" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-48)">--remove-arm-packages</text><text class="breeze-testing-non-db-tests-r1" x="341.6" y="1191.2" textLength="817.4" clip-path="url(#breeze-testing-non-db-tests-line-48)">Removes&#160;arm&#160;packages&#160;fr [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1215.6" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-49)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="1215.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-49)">
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1240" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-50)">╭─</text><text class="breeze-testing-non-db-tests-r5" x="24.4" y="1240" textLength="402.6" clip-path="url(#breeze-testing-non-db-tests-line-50)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-non-db-tests-r5" x="427" y="1240" textLength="1012.6" clip-path="url(#breeze-testing-non-db-tests-line-50)">── [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1264.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-51)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1264.4" textLength="378.2" clip-path="url(#breeze-testing-non-db-tests-line-51)">--airflow-constraints-reference</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1264.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-51)">Constraint&#160;reference&#160 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1288.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-52)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1288.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-52)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1313.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-53)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1313.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-53)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1337.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-54)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1337.6" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-54)">--clean-airflow-installation</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1337.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-54)">Clean&#160;the&#160;airflow&#160; [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1362" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-55)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1362" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-55)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-non-db-tests-r4" x="1024.8" y="1362" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-55)">--use-airflow-version</text [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1386.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-56)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1386.4" textLength="329.4" clip-path="url(#breeze-testing-non-db-tests-line-56)">--force-lowest-dependencies</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1386.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-56)">Run&#160;tests&#160;for&#160;the&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1410.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-57)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1410.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-57)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1410.8" textLength="12.2" clip-path="url(#breeze-testin [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1435.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-58)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1435.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-58)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1459.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-59)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1459.6" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-59)">--github-repository</text><text class="breeze-testing-non-db-tests-r7" x="719.8" y="1459.6" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-59)">-g</text><text class="breeze-testing-non- [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1484" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-60)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1484" textLength="585.6" clip-path="url(#breeze-testing-non-db-tests-line-60)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-d [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1508.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-61)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1508.4" textLength="134.2" clip-path="url(#breeze-testing-non-db-tests-line-61)">--image-tag</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1508.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-61)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1532.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-62)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1532.8" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-62)">(implies&#160;</text><text class="breeze-testing-non-db-tests-r4" x="878.4" y="1532.8" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-62)">--mount-sources</text><text class="breeze-test [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1557.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-63)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1557.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-63)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1581.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-64)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1581.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-64)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1606" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-65)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1606" textLength="414.8" clip-path="url(#breeze-testing-non-db-tests-line-65)">--install-airflow-with-constraints</text><text class="breeze-testing-non-db-tests-r1" x="439.2" y="1606" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-65)">/</text><text class="breeze-test [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-66)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1630.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-66)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y=" [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1654.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-67)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1654.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-67)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1654.8" textLength="12.2" clip-path [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1679.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-68)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1679.2" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-68)">--package-format</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1679.2" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-68)">Format&#160;of&#160;packages.</text><text c [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1703.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-69)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="1703.6" textLength="231.8" clip-path="url(#breeze-testing-non-db-tests-line-69)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1703.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-69)">│</text><text class [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1728" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-70)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1728" textLength="390.4" clip-path="url(#breeze-testing-non-db-tests-line-70)">--providers-constraints-location</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1728" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-70)">Location&#160;of&#160;providers&#16 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1752.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-71)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1752.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-71)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1776.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-72)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1776.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-72)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1801.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-73)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1801.2" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-73)">--providers-skip-constraints</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1801.2" textLength="597.8" clip-path="url(#breeze-testing-non-db-tests-line-73)">Do&#160;not&#160;use&#160;const [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1825.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-74)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1825.6" textLength="256.2" clip-path="url(#breeze-testing-non-db-tests-line-74)">--use-airflow-version</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1825.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-74)">Use&#160;(reinstall&#160;at&#160;entry)& [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1850" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-75)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1850" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-75)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1850" textLength="12.2" clip- [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-76)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1874.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-76)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1874.4" textLength="12.2" clip-path [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-77)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1898.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-77)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-78)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1923.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-78)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests- [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-79)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1947.6" textLength="97.6" clip-path="url(#breeze-testing-non-db-tests-line-79)">Implies&#160;</text><text class="breeze-testing-non-db-tests-r4" x="866.2" y="1947.6" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-79)">--mount-sources</text><text class="breeze-testin [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-80)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="1972" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-80)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x= [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-81)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="1996.4" textLength="292.8" clip-path="url(#breeze-testing-non-db-tests-line-81)">--use-packages-from-dist</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="1996.4" textLength="341.6" clip-path="url(#breeze-testing-non-db-tests-line-81)">Install&#160;all&#160;found&#160;pa [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-82)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2020.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-82)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1451.8" y=" [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-83)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2045.2" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-83)">--mount-sources</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2045.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-83)">Choose&#160;scope&#160;of&#160;local&#160;source [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-84)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2069.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-84)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-db-tests-r5" x="1 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-85)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-85)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-non-d [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-86)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-86)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-87)">│</text><text class="breeze-testing-non-db-tests-r5" x="768.6" y="2142.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-87)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-88)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2167.2" textLength="317.2" clip-path="url(#breeze-testing-non-db-tests-line-88)">--skip-docker-compose-down</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2167.2" textLength="549" clip-path="url(#breeze-testing-non-db-tests-line-88)">Skips&#160;running&#160;docker-comp [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-89)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2191.6" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-89)">--skip-providers</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2191.6" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-89)">Space-separated&#160;list&#160;of&#160;provid [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-90)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2216" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-90)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-91)">│</text><text class="breeze-testing-non-db-tests-r6" x="768.6" y="2240.4" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-91)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-92)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2264.8" textLength="244" clip-path="url(#breeze-testing-non-db-tests-line-92)">--keep-env-variables</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2264.8" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-92)">Do&#160;not&#160;clear&#160;environment&#16 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-93)">│</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2289.2" textLength="671" clip-path="url(#breeze-testing-non-db-tests-line-93)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1 [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-94)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2313.6" textLength="183" clip-path="url(#breeze-testing-non-db-tests-line-94)">--no-db-cleanup</text><text class="breeze-testing-non-db-tests-r1" x="768.6" y="2313.6" textLength="597.8" clip-path="url(#breeze-testing-non-db-tests-line-94)">Do&#160;not&#160;clear&#160;the&#160;database& [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2338" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-95)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="2338" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-95)">
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2362.4" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-96)">╭─</text><text class="breeze-testing-non-db-tests-r5" x="24.4" y="2362.4" textLength="195.2" clip-path="url(#breeze-testing-non-db-tests-line-96)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-non-db-tests-r5" x="219.6" y="2362.4" textLength="1220" clip-path="url(#breeze-testing-non-db-tests-line-96)">──────────────────────────── [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-97)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2386.8" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-97)">--dry-run</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2386.8" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-97)">-D</text><text class="breeze-testing-non-db-tests-r [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-98)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2411.2" textLength="109.8" clip-path="url(#breeze-testing-non-db-tests-line-98)">--verbose</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2411.2" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-98)">-v</text><text class="breeze-testing-non-db-tests-r [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-99)">│</text><text class="breeze-testing-non-db-tests-r4" x="24.4" y="2435.6" textLength="73.2" clip-path="url(#breeze-testing-non-db-tests-line-99)">--help</text><text class="breeze-testing-non-db-tests-r7" x="158.6" y="2435.6" textLength="24.4" clip-path="url(#breeze-testing-non-db-tests-line-99)">-h</text><text class="breeze-testing-non-db-tests-r1" x [...]
+</text><text class="breeze-testing-non-db-tests-r5" x="0" y="2460" textLength="1464" clip-path="url(#breeze-testing-non-db-tests-line-100)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-non-db-tests-r1" x="1464" y="2460" textLength="12.2" clip-path="url(#breeze-testing-non-db-tests-line-100)">
 </text>
     </g>
     </g>
diff --git a/dev/breeze/doc/images/output_testing_non-db-tests.txt b/dev/breeze/doc/images/output_testing_non-db-tests.txt
index f3f32ff67a..91e5599171 100644
--- a/dev/breeze/doc/images/output_testing_non-db-tests.txt
+++ b/dev/breeze/doc/images/output_testing_non-db-tests.txt
@@ -1 +1 @@
-ba2a582d1be6c987c0b7ceb61bcaffb9
+f70d22e8beb3ee9115e18cf8db4fdb27
diff --git a/dev/breeze/doc/images/output_testing_tests.svg b/dev/breeze/doc/images/output_testing_tests.svg
index 005ae5a768..be9e4a2f9e 100644
--- a/dev/breeze/doc/images/output_testing_tests.svg
+++ b/dev/breeze/doc/images/output_testing_tests.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 3222.0" xmlns="http://www.w3.org/2000/svg">
+<svg class="rich-terminal" viewBox="0 0 1482 3197.6" xmlns="http://www.w3.org/2000/svg">
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -43,7 +43,7 @@
 
     <defs>
     <clipPath id="breeze-testing-tests-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="3171.0" />
+      <rect x="0" y="0" width="1463.0" height="3146.6" />
     </clipPath>
     <clipPath id="breeze-testing-tests-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -429,12 +429,9 @@
 <clipPath id="breeze-testing-tests-line-127">
     <rect x="0" y="3100.3" width="1464" height="24.65"/>
             </clipPath>
-<clipPath id="breeze-testing-tests-line-128">
-    <rect x="0" y="3124.7" width="1464" height="24.65"/>
-            </clipPath>
     </defs>
 
-    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="3220" rx="8"/><text class="breeze-testing-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;tests</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1480" height="3195.6" rx="8"/><text class="breeze-testing-tests-title" fill="#c5c8c6" text-anchor="middle" x="740" y="27">Command:&#160;testing&#160;tests</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -520,60 +517,59 @@
 </text><text class="breeze-testing-tests-r5" x="0" y="1801.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-73)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1801.2" textLength="170.8" clip-path="url(#breeze-testing-tests-line-73)">--upgrade-boto</text><text class="breeze-testing-tests-r1" x="341.6" y="1801.2" textLength="866.2" clip-path="url(#breeze-testing-tests-line-73)">Remove&#160;aiobotocore&#160;and&#160;upgrade&#160;botocore&#160;and&#160;boto&#160;to& [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1825.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-74)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1825.6" textLength="268.4" clip-path="url(#breeze-testing-tests-line-74)">--downgrade-sqlalchemy</text><text class="breeze-testing-tests-r1" x="341.6" y="1825.6" textLength="610" clip-path="url(#breeze-testing-tests-line-74)">Downgrade&#160;SQLAlchemy&#160;to&#160;minimum&#160;supported&#160;version.</text [...]
 </text><text class="breeze-testing-tests-r5" x="0" y="1850" textLength="12.2" clip-path="url(#breeze-testing-tests-line-75)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1850" textLength="244" clip-path="url(#breeze-testing-tests-line-75)">--downgrade-pendulum</text><text class="breeze-testing-tests-r1" x="341.6" y="1850" textLength="585.6" clip-path="url(#breeze-testing-tests-line-75)">Downgrade&#160;Pendulum&#160;to&#160;minimum&#160;supported&#160;version.</text><text cla [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-76)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1874.4" textLength="122" clip-path="url(#breeze-testing-tests-line-76)">--pydantic</text><text class="breeze-testing-tests-r1" x="341.6" y="1874.4" textLength="658.8" clip-path="url(#breeze-testing-tests-line-76)">Determines&#160;which&#160;pydantic&#160;should&#160;be&#160;used&#160;during&#160;tests.</te [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-77)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1898.8" textLength="256.2" clip-path="url(#breeze-testing-tests-line-77)">--remove-arm-packages</text><text class="breeze-testing-tests-r1" x="341.6" y="1898.8" textLength="817.4" clip-path="url(#breeze-testing-tests-line-77)">Removes&#160;arm&#160;packages&#160;from&#160;the&#160;image&#160;to&#160;test&# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1923.2" textLength="1464" clip-path="url(#breeze-testing-tests-line-78)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="1923.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-78)">
-</text><text class="breeze-testing-tests-r5" x="0" y="1947.6" textLength="24.4" clip-path="url(#breeze-testing-tests-line-79)">╭─</text><text class="breeze-testing-tests-r5" x="24.4" y="1947.6" textLength="402.6" clip-path="url(#breeze-testing-tests-line-79)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-tests-r5" x="427" y="1947.6" textLength="1012.6" clip-path="url(#breeze-testing-tests-line-79)">────────────────────────────────────── [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-tests-line-80)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1972" textLength="378.2" clip-path="url(#breeze-testing-tests-line-80)">--airflow-constraints-reference</text><text class="breeze-testing-tests-r1" x="768.6" y="1972" textLength="671" clip-path="url(#breeze-testing-tests-line-80)">Constraint&#160;reference&#160;to&#160;use&#160;for&#160;airflow&#160;installa [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-81)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="1996.4" textLength="671" clip-path="url(#breeze-testing-tests-line-81)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="1996.4" te [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-82)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2020.8" textLength="671" clip-path="url(#breeze-testing-tests-line-82)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-83)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2045.2" textLength="341.6" clip-path="url(#breeze-testing-tests-line-83)">--clean-airflow-installation</text><text class="breeze-testing-tests-r1" x="768.6" y="2045.2" textLength="671" clip-path="url(#breeze-testing-tests-line-83)">Clean&#160;the&#160;airflow&#160;installation&#160;before&#160;installing&# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-84)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2069.6" textLength="256.2" clip-path="url(#breeze-testing-tests-line-84)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-tests-r4" x="1024.8" y="2069.6" textLength="256.2" clip-path="url(#breeze-testing-tests-line-84)">--use-airflow-version</text><text class="breeze-testing-tests-r [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-tests-line-85)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2094" textLength="329.4" clip-path="url(#breeze-testing-tests-line-85)">--force-lowest-dependencies</text><text class="breeze-testing-tests-r1" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-tests-line-85)">Run&#160;tests&#160;for&#160;the&#160;lowest&#160;direct&#160;dependencies&#160;of [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-86)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-tests-line-86)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-tests-r5" x="1451.8" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-86)">│</text><text cla [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-87)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2142.8" textLength="671" clip-path="url(#breeze-testing-tests-line-87)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-88)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2167.2" textLength="231.8" clip-path="url(#breeze-testing-tests-line-88)">--github-repository</text><text class="breeze-testing-tests-r6" x="719.8" y="2167.2" textLength="24.4" clip-path="url(#breeze-testing-tests-line-88)">-g</text><text class="breeze-testing-tests-r1" x="768.6" y="2167.2" textLength="585 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-89)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2191.6" textLength="585.6" clip-path="url(#breeze-testing-tests-line-89)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2191. [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-tests-line-90)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2216" textLength="134.2" clip-path="url(#breeze-testing-tests-line-90)">--image-tag</text><text class="breeze-testing-tests-r1" x="768.6" y="2216" textLength="671" clip-path="url(#breeze-testing-tests-line-90)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is&#160;used&#160;to&#160;run&#160;the&#160;image& [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-91)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2240.4" textLength="109.8" clip-path="url(#breeze-testing-tests-line-91)">(implies&#160;</text><text class="breeze-testing-tests-r4" x="878.4" y="2240.4" textLength="183" clip-path="url(#breeze-testing-tests-line-91)">--mount-sources</text><text class="breeze-testing-tests-r1" x="1061.4" y="2240.4" textLe [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-92)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2264.8" textLength="671" clip-path="url(#breeze-testing-tests-line-92)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-93)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2289.2" textLength="671" clip-path="url(#breeze-testing-tests-line-93)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-94)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2313.6" textLength="414.8" clip-path="url(#breeze-testing-tests-line-94)">--install-airflow-with-constraints</text><text class="breeze-testing-tests-r1" x="439.2" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-94)">/</text><text class="breeze-testing-tests-r4" x="451.4" y="2313.6" t [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2338" textLength="12.2" clip-path="url(#breeze-testing-tests-line-95)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2338" textLength="671" clip-path="url(#breeze-testing-tests-line-95)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2338" textLength="12.2" clip-path="url( [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-96)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2362.4" textLength="671" clip-path="url(#breeze-testing-tests-line-96)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-96 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-97)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2386.8" textLength="195.2" clip-path="url(#breeze-testing-tests-line-97)">--package-format</text><text class="breeze-testing-tests-r1" x="768.6" y="2386.8" textLength="231.8" clip-path="url(#breeze-testing-tests-line-97)">Format&#160;of&#160;packages.</text><text class="breeze-testing-tests-r7" x="1012.6"  [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-98)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2411.2" textLength="231.8" clip-path="url(#breeze-testing-tests-line-98)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-98)">│</text><text class="breeze-testing-tests-r1" x="1464" y="241 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-99)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2435.6" textLength="390.4" clip-path="url(#breeze-testing-tests-line-99)">--providers-constraints-location</text><text class="breeze-testing-tests-r1" x="768.6" y="2435.6" textLength="671" clip-path="url(#breeze-testing-tests-line-99)">Location&#160;of&#160;providers&#160;constraints&#160;to&#160;use&#160; [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2460" textLength="12.2" clip-path="url(#breeze-testing-tests-line-100)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2460" textLength="671" clip-path="url(#breeze-testing-tests-line-100)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2484.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-101)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2484.4" textLength="671" clip-path="url(#breeze-testing-tests-line-101)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2508.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-102)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2508.8" textLength="341.6" clip-path="url(#breeze-testing-tests-line-102)">--providers-skip-constraints</text><text class="breeze-testing-tests-r1" x="768.6" y="2508.8" textLength="597.8" clip-path="url(#breeze-testing-tests-line-102)">Do&#160;not&#160;use&#160;constraints&#160;when&#160;installing&#160;p [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2533.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-103)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2533.2" textLength="256.2" clip-path="url(#breeze-testing-tests-line-103)">--use-airflow-version</text><text class="breeze-testing-tests-r1" x="768.6" y="2533.2" textLength="671" clip-path="url(#breeze-testing-tests-line-103)">Use&#160;(reinstall&#160;at&#160;entry)&#160;Airflow&#160;version&#160;from&#16 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-104)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2557.6" textLength="671" clip-path="url(#breeze-testing-tests-line-104)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-t [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2582" textLength="12.2" clip-path="url(#breeze-testing-tests-line-105)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2582" textLength="671" clip-path="url(#breeze-testing-tests-line-105)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2582" textLength="12.2" clip-path="url(#breeze-testing-tests-line-105)"> [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2606.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-106)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2606.4" textLength="671" clip-path="url(#breeze-testing-tests-line-106)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2630.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-107)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2630.8" textLength="671" clip-path="url(#breeze-testing-tests-line-107)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2630.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-107)">│</text><text class="breeze-t [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2655.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-108)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2655.2" textLength="97.6" clip-path="url(#breeze-testing-tests-line-108)">Implies&#160;</text><text class="breeze-testing-tests-r4" x="866.2" y="2655.2" textLength="183" clip-path="url(#breeze-testing-tests-line-108)">--mount-sources</text><text class="breeze-testing-tests-r1" x="1049.2" y="2655.2" textL [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2679.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-109)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2679.6" textLength="671" clip-path="url(#breeze-testing-tests-line-109)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2679.6" textLengt [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2704" textLength="12.2" clip-path="url(#breeze-testing-tests-line-110)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2704" textLength="292.8" clip-path="url(#breeze-testing-tests-line-110)">--use-packages-from-dist</text><text class="breeze-testing-tests-r1" x="768.6" y="2704" textLength="341.6" clip-path="url(#breeze-testing-tests-line-110)">Install&#160;all&#160;found&#160;packages&#160;(</text><text class="breeze-testi [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2728.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-111)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2728.4" textLength="671" clip-path="url(#breeze-testing-tests-line-111)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2728.4" textLength="12.2" clip-pa [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2752.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-112)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2752.8" textLength="183" clip-path="url(#breeze-testing-tests-line-112)">--mount-sources</text><text class="breeze-testing-tests-r1" x="768.6" y="2752.8" textLength="671" clip-path="url(#breeze-testing-tests-line-112)">Choose&#160;scope&#160;of&#160;local&#160;sources&#160;that&#160;should&#160;be&#160;mo [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2777.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-113)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2777.2" textLength="671" clip-path="url(#breeze-testing-tests-line-113)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2777.2" textLength="12. [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2801.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-114)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2801.6" textLength="671" clip-path="url(#breeze-testing-tests-line-114)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="280 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2826" textLength="12.2" clip-path="url(#breeze-testing-tests-line-115)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2826" textLength="671" clip-path="url(#breeze-testing-tests-line-115)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2850.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-116)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2850.4" textLength="671" clip-path="url(#breeze-testing-tests-line-116)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2874.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-117)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2874.8" textLength="317.2" clip-path="url(#breeze-testing-tests-line-117)">--skip-docker-compose-down</text><text class="breeze-testing-tests-r1" x="768.6" y="2874.8" textLength="549" clip-path="url(#breeze-testing-tests-line-117)">Skips&#160;running&#160;docker-compose&#160;down&#160;after&#160;tests</te [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2899.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-118)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2899.2" textLength="195.2" clip-path="url(#breeze-testing-tests-line-118)">--skip-providers</text><text class="breeze-testing-tests-r1" x="768.6" y="2899.2" textLength="671" clip-path="url(#breeze-testing-tests-line-118)">Space-separated&#160;list&#160;of&#160;provider&#160;ids&#160;to&#160;skip&#160;when [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2923.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-119)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2923.6" textLength="671" clip-path="url(#breeze-testing-tests-line-119)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2948" textLength="12.2" clip-path="url(#breeze-testing-tests-line-120)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2948" textLength="671" clip-path="url(#breeze-testing-tests-line-120)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2972.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-121)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2972.4" textLength="244" clip-path="url(#breeze-testing-tests-line-121)">--keep-env-variables</text><text class="breeze-testing-tests-r1" x="768.6" y="2972.4" textLength="671" clip-path="url(#breeze-testing-tests-line-121)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that&#160;might&#160;h [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="2996.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-122)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2996.8" textLength="671" clip-path="url(#breeze-testing-tests-line-122)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text clas [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3021.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-123)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3021.2" textLength="183" clip-path="url(#breeze-testing-tests-line-123)">--no-db-cleanup</text><text class="breeze-testing-tests-r1" x="768.6" y="3021.2" textLength="597.8" clip-path="url(#breeze-testing-tests-line-123)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each&#160;test&#160;mo [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3045.6" textLength="1464" clip-path="url(#breeze-testing-tests-line-124)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="3045.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-124)">
-</text><text class="breeze-testing-tests-r5" x="0" y="3070" textLength="24.4" clip-path="url(#breeze-testing-tests-line-125)">╭─</text><text class="breeze-testing-tests-r5" x="24.4" y="3070" textLength="195.2" clip-path="url(#breeze-testing-tests-line-125)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-tests-r5" x="219.6" y="3070" textLength="1220" clip-path="url(#breeze-testing-tests-line-125)">───────────────────────────────────────────────────────────────────────── [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3094.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-126)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3094.4" textLength="109.8" clip-path="url(#breeze-testing-tests-line-126)">--dry-run</text><text class="breeze-testing-tests-r6" x="158.6" y="3094.4" textLength="24.4" clip-path="url(#breeze-testing-tests-line-126)">-D</text><text class="breeze-testing-tests-r1" x="207.4" y="3094.4" textLength="719.8" cli [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3118.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-127)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3118.8" textLength="109.8" clip-path="url(#breeze-testing-tests-line-127)">--verbose</text><text class="breeze-testing-tests-r6" x="158.6" y="3118.8" textLength="24.4" clip-path="url(#breeze-testing-tests-line-127)">-v</text><text class="breeze-testing-tests-r1" x="207.4" y="3118.8" textLength="585.6" cli [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3143.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-128)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3143.2" textLength="73.2" clip-path="url(#breeze-testing-tests-line-128)">--help</text><text class="breeze-testing-tests-r6" x="158.6" y="3143.2" textLength="24.4" clip-path="url(#breeze-testing-tests-line-128)">-h</text><text class="breeze-testing-tests-r1" x="207.4" y="3143.2" textLength="329.4" clip-pa [...]
-</text><text class="breeze-testing-tests-r5" x="0" y="3167.6" textLength="1464" clip-path="url(#breeze-testing-tests-line-129)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="3167.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-129)">
+</text><text class="breeze-testing-tests-r5" x="0" y="1874.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-76)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1874.4" textLength="256.2" clip-path="url(#breeze-testing-tests-line-76)">--remove-arm-packages</text><text class="breeze-testing-tests-r1" x="341.6" y="1874.4" textLength="817.4" clip-path="url(#breeze-testing-tests-line-76)">Removes&#160;arm&#160;packages&#160;from&#160;the&#160;image&#160;to&#160;test&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1898.8" textLength="1464" clip-path="url(#breeze-testing-tests-line-77)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="1898.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-77)">
+</text><text class="breeze-testing-tests-r5" x="0" y="1923.2" textLength="24.4" clip-path="url(#breeze-testing-tests-line-78)">╭─</text><text class="breeze-testing-tests-r5" x="24.4" y="1923.2" textLength="402.6" clip-path="url(#breeze-testing-tests-line-78)">&#160;Advanced&#160;flag&#160;for&#160;tests&#160;command&#160;</text><text class="breeze-testing-tests-r5" x="427" y="1923.2" textLength="1012.6" clip-path="url(#breeze-testing-tests-line-78)">────────────────────────────────────── [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1947.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-79)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="1947.6" textLength="378.2" clip-path="url(#breeze-testing-tests-line-79)">--airflow-constraints-reference</text><text class="breeze-testing-tests-r1" x="768.6" y="1947.6" textLength="671" clip-path="url(#breeze-testing-tests-line-79)">Constraint&#160;reference&#160;to&#160;use&#160;for&#160;airflow&#160;in [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1972" textLength="12.2" clip-path="url(#breeze-testing-tests-line-80)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="1972" textLength="671" clip-path="url(#breeze-testing-tests-line-80)">(used&#160;in&#160;calculated&#160;constraints&#160;URL).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="1972" textLeng [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="1996.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-81)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="1996.4" textLength="671" clip-path="url(#breeze-testing-tests-line-81)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2020.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-82)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2020.8" textLength="341.6" clip-path="url(#breeze-testing-tests-line-82)">--clean-airflow-installation</text><text class="breeze-testing-tests-r1" x="768.6" y="2020.8" textLength="671" clip-path="url(#breeze-testing-tests-line-82)">Clean&#160;the&#160;airflow&#160;installation&#160;before&#160;installing&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2045.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-83)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2045.2" textLength="256.2" clip-path="url(#breeze-testing-tests-line-83)">version&#160;specified&#160;by&#160;</text><text class="breeze-testing-tests-r4" x="1024.8" y="2045.2" textLength="256.2" clip-path="url(#breeze-testing-tests-line-83)">--use-airflow-version</text><text class="breeze-testing-tests-r [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2069.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-84)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2069.6" textLength="329.4" clip-path="url(#breeze-testing-tests-line-84)">--force-lowest-dependencies</text><text class="breeze-testing-tests-r1" x="768.6" y="2069.6" textLength="671" clip-path="url(#breeze-testing-tests-line-84)">Run&#160;tests&#160;for&#160;the&#160;lowest&#160;direct&#160;dependencies&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2094" textLength="12.2" clip-path="url(#breeze-testing-tests-line-85)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2094" textLength="671" clip-path="url(#breeze-testing-tests-line-85)">or&#160;selected&#160;provider&#160;if&#160;`Provider[PROVIDER_ID]`&#160;is&#160;used</text><text class="breeze-testing-tests-r5" x="1451.8" y="2094" textLength="12.2" clip-path="url(#breeze-testing-tests-line-85)">│</text><text class="br [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2118.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-86)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2118.4" textLength="671" clip-path="url(#breeze-testing-tests-line-86)">as&#160;test&#160;type.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;& [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2142.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-87)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2142.8" textLength="231.8" clip-path="url(#breeze-testing-tests-line-87)">--github-repository</text><text class="breeze-testing-tests-r6" x="719.8" y="2142.8" textLength="24.4" clip-path="url(#breeze-testing-tests-line-87)">-g</text><text class="breeze-testing-tests-r1" x="768.6" y="2142.8" textLength="585 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2167.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-88)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2167.2" textLength="585.6" clip-path="url(#breeze-testing-tests-line-88)">[default:&#160;apache/airflow]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2167. [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2191.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-89)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2191.6" textLength="134.2" clip-path="url(#breeze-testing-tests-line-89)">--image-tag</text><text class="breeze-testing-tests-r1" x="768.6" y="2191.6" textLength="671" clip-path="url(#breeze-testing-tests-line-89)">Tag&#160;of&#160;the&#160;image&#160;which&#160;is&#160;used&#160;to&#160;run&#160;the&#160; [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2216" textLength="12.2" clip-path="url(#breeze-testing-tests-line-90)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2216" textLength="109.8" clip-path="url(#breeze-testing-tests-line-90)">(implies&#160;</text><text class="breeze-testing-tests-r4" x="878.4" y="2216" textLength="183" clip-path="url(#breeze-testing-tests-line-90)">--mount-sources</text><text class="breeze-testing-tests-r1" x="1061.4" y="2216" textLength="37 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2240.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-91)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2240.4" textLength="671" clip-path="url(#breeze-testing-tests-line-91)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2264.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-92)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2264.8" textLength="671" clip-path="url(#breeze-testing-tests-line-92)">[default:&#160;latest]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-93)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2289.2" textLength="414.8" clip-path="url(#breeze-testing-tests-line-93)">--install-airflow-with-constraints</text><text class="breeze-testing-tests-r1" x="439.2" y="2289.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-93)">/</text><text class="breeze-testing-tests-r4" x="451.4" y="2289.2" t [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2313.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-94)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2313.6" textLength="671" clip-path="url(#breeze-testing-tests-line-94)">determined&#160;from&#160;package&#160;or&#160;airflow&#160;version.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2313.6" textLength="12.2" clip-path [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2338" textLength="12.2" clip-path="url(#breeze-testing-tests-line-95)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2338" textLength="671" clip-path="url(#breeze-testing-tests-line-95)">[default:&#160;no-install-airflow-with-constraints]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2338" textLength="12.2" clip-path="url(#breeze-testing-tests-line-95)">│</ [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2362.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-96)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2362.4" textLength="195.2" clip-path="url(#breeze-testing-tests-line-96)">--package-format</text><text class="breeze-testing-tests-r1" x="768.6" y="2362.4" textLength="231.8" clip-path="url(#breeze-testing-tests-line-96)">Format&#160;of&#160;packages.</text><text class="breeze-testing-tests-r7" x="1012.6"  [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-97)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2386.8" textLength="231.8" clip-path="url(#breeze-testing-tests-line-97)">[default:&#160;wheel]&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2386.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-97)">│</text><text class="breeze-testing-tests-r1" x="1464" y="238 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2411.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-98)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2411.2" textLength="390.4" clip-path="url(#breeze-testing-tests-line-98)">--providers-constraints-location</text><text class="breeze-testing-tests-r1" x="768.6" y="2411.2" textLength="671" clip-path="url(#breeze-testing-tests-line-98)">Location&#160;of&#160;providers&#160;constraints&#160;to&#160;use&#160; [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2435.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-99)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2435.6" textLength="671" clip-path="url(#breeze-testing-tests-line-99)">local&#160;context&#160;file).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2460" textLength="12.2" clip-path="url(#breeze-testing-tests-line-100)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2460" textLength="671" clip-path="url(#breeze-testing-tests-line-100)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2484.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-101)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2484.4" textLength="341.6" clip-path="url(#breeze-testing-tests-line-101)">--providers-skip-constraints</text><text class="breeze-testing-tests-r1" x="768.6" y="2484.4" textLength="597.8" clip-path="url(#breeze-testing-tests-line-101)">Do&#160;not&#160;use&#160;constraints&#160;when&#160;installing&#160;p [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2508.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-102)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2508.8" textLength="256.2" clip-path="url(#breeze-testing-tests-line-102)">--use-airflow-version</text><text class="breeze-testing-tests-r1" x="768.6" y="2508.8" textLength="671" clip-path="url(#breeze-testing-tests-line-102)">Use&#160;(reinstall&#160;at&#160;entry)&#160;Airflow&#160;version&#160;from&#16 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2533.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-103)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2533.2" textLength="671" clip-path="url(#breeze-testing-tests-line-103)">can&#160;also&#160;be&#160;version&#160;(to&#160;install&#160;from&#160;PyPI),&#160;`none`,&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2533.2" textLength="12.2" clip-path="url(#breeze-testing-t [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-104)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2557.6" textLength="671" clip-path="url(#breeze-testing-tests-line-104)">`wheel`,&#160;or&#160;`sdist`&#160;to&#160;install&#160;from&#160;`dist`&#160;folder,&#160;or&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2557.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line- [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2582" textLength="12.2" clip-path="url(#breeze-testing-tests-line-105)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2582" textLength="671" clip-path="url(#breeze-testing-tests-line-105)">VCS&#160;URL&#160;to&#160;install&#160;from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;< [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2606.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-106)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2606.4" textLength="671" clip-path="url(#breeze-testing-tests-line-106)">(https://pip.pypa.io/en/stable/topics/vcs-support/).&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2606.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-106)">│</text><text class="breeze-t [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2630.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-107)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2630.8" textLength="97.6" clip-path="url(#breeze-testing-tests-line-107)">Implies&#160;</text><text class="breeze-testing-tests-r4" x="866.2" y="2630.8" textLength="183" clip-path="url(#breeze-testing-tests-line-107)">--mount-sources</text><text class="breeze-testing-tests-r1" x="1049.2" y="2630.8" textL [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2655.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-108)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2655.2" textLength="671" clip-path="url(#breeze-testing-tests-line-108)">(none&#160;|&#160;wheel&#160;|&#160;sdist&#160;|&#160;&lt;airflow_version&gt;)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2655.2" textLengt [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2679.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-109)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2679.6" textLength="292.8" clip-path="url(#breeze-testing-tests-line-109)">--use-packages-from-dist</text><text class="breeze-testing-tests-r1" x="768.6" y="2679.6" textLength="341.6" clip-path="url(#breeze-testing-tests-line-109)">Install&#160;all&#160;found&#160;packages&#160;(</text><text class="breeze [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2704" textLength="12.2" clip-path="url(#breeze-testing-tests-line-110)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2704" textLength="671" clip-path="url(#breeze-testing-tests-line-110)">type)&#160;from&#160;&#x27;dist&#x27;&#160;folder&#160;when&#160;entering&#160;breeze.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2704" textLength="12.2" clip-path="ur [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2728.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-111)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2728.4" textLength="183" clip-path="url(#breeze-testing-tests-line-111)">--mount-sources</text><text class="breeze-testing-tests-r1" x="768.6" y="2728.4" textLength="671" clip-path="url(#breeze-testing-tests-line-111)">Choose&#160;scope&#160;of&#160;local&#160;sources&#160;that&#160;should&#160;be&#160;mo [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2752.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-112)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2752.8" textLength="671" clip-path="url(#breeze-testing-tests-line-112)">skipped,&#160;or&#160;removed&#160;(default&#160;=&#160;selected).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="2752.8" textLength="12. [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2777.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-113)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2777.2" textLength="671" clip-path="url(#breeze-testing-tests-line-113)">(selected&#160;|&#160;all&#160;|&#160;skip&#160;|&#160;remove&#160;|&#160;tests&#160;|&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="breeze-testing-tests-r5" x="1451.8" y="277 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2801.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-114)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2801.6" textLength="671" clip-path="url(#breeze-testing-tests-line-114)">providers-and-tests)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</ [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2826" textLength="12.2" clip-path="url(#breeze-testing-tests-line-115)">│</text><text class="breeze-testing-tests-r5" x="768.6" y="2826" textLength="671" clip-path="url(#breeze-testing-tests-line-115)">[default:&#160;selected]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&# [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2850.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-116)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2850.4" textLength="317.2" clip-path="url(#breeze-testing-tests-line-116)">--skip-docker-compose-down</text><text class="breeze-testing-tests-r1" x="768.6" y="2850.4" textLength="549" clip-path="url(#breeze-testing-tests-line-116)">Skips&#160;running&#160;docker-compose&#160;down&#160;after&#160;tests</te [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2874.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-117)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2874.8" textLength="195.2" clip-path="url(#breeze-testing-tests-line-117)">--skip-providers</text><text class="breeze-testing-tests-r1" x="768.6" y="2874.8" textLength="671" clip-path="url(#breeze-testing-tests-line-117)">Space-separated&#160;list&#160;of&#160;provider&#160;ids&#160;to&#160;skip&#160;when [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2899.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-118)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2899.2" textLength="671" clip-path="url(#breeze-testing-tests-line-118)">running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2923.6" textLength="12.2" clip-path="url(#breeze-testing-tests-line-119)">│</text><text class="breeze-testing-tests-r7" x="768.6" y="2923.6" textLength="671" clip-path="url(#breeze-testing-tests-line-119)">(TEXT)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2948" textLength="12.2" clip-path="url(#breeze-testing-tests-line-120)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2948" textLength="244" clip-path="url(#breeze-testing-tests-line-120)">--keep-env-variables</text><text class="breeze-testing-tests-r1" x="768.6" y="2948" textLength="671" clip-path="url(#breeze-testing-tests-line-120)">Do&#160;not&#160;clear&#160;environment&#160;variables&#160;that&#160;might&#160;have&#1 [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2972.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-121)">│</text><text class="breeze-testing-tests-r1" x="768.6" y="2972.4" textLength="671" clip-path="url(#breeze-testing-tests-line-121)">effect&#160;while&#160;running&#160;tests&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text clas [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="2996.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-122)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="2996.8" textLength="183" clip-path="url(#breeze-testing-tests-line-122)">--no-db-cleanup</text><text class="breeze-testing-tests-r1" x="768.6" y="2996.8" textLength="597.8" clip-path="url(#breeze-testing-tests-line-122)">Do&#160;not&#160;clear&#160;the&#160;database&#160;before&#160;each&#160;test&#160;mo [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="3021.2" textLength="1464" clip-path="url(#breeze-testing-tests-line-123)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="3021.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-123)">
+</text><text class="breeze-testing-tests-r5" x="0" y="3045.6" textLength="24.4" clip-path="url(#breeze-testing-tests-line-124)">╭─</text><text class="breeze-testing-tests-r5" x="24.4" y="3045.6" textLength="195.2" clip-path="url(#breeze-testing-tests-line-124)">&#160;Common&#160;options&#160;</text><text class="breeze-testing-tests-r5" x="219.6" y="3045.6" textLength="1220" clip-path="url(#breeze-testing-tests-line-124)">─────────────────────────────────────────────────────────────────── [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="3070" textLength="12.2" clip-path="url(#breeze-testing-tests-line-125)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3070" textLength="109.8" clip-path="url(#breeze-testing-tests-line-125)">--dry-run</text><text class="breeze-testing-tests-r6" x="158.6" y="3070" textLength="24.4" clip-path="url(#breeze-testing-tests-line-125)">-D</text><text class="breeze-testing-tests-r1" x="207.4" y="3070" textLength="719.8" clip-path=" [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="3094.4" textLength="12.2" clip-path="url(#breeze-testing-tests-line-126)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3094.4" textLength="109.8" clip-path="url(#breeze-testing-tests-line-126)">--verbose</text><text class="breeze-testing-tests-r6" x="158.6" y="3094.4" textLength="24.4" clip-path="url(#breeze-testing-tests-line-126)">-v</text><text class="breeze-testing-tests-r1" x="207.4" y="3094.4" textLength="585.6" cli [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="3118.8" textLength="12.2" clip-path="url(#breeze-testing-tests-line-127)">│</text><text class="breeze-testing-tests-r4" x="24.4" y="3118.8" textLength="73.2" clip-path="url(#breeze-testing-tests-line-127)">--help</text><text class="breeze-testing-tests-r6" x="158.6" y="3118.8" textLength="24.4" clip-path="url(#breeze-testing-tests-line-127)">-h</text><text class="breeze-testing-tests-r1" x="207.4" y="3118.8" textLength="329.4" clip-pa [...]
+</text><text class="breeze-testing-tests-r5" x="0" y="3143.2" textLength="1464" clip-path="url(#breeze-testing-tests-line-128)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-testing-tests-r1" x="1464" y="3143.2" textLength="12.2" clip-path="url(#breeze-testing-tests-line-128)">
 </text>
     </g>
     </g>
diff --git a/dev/breeze/doc/images/output_testing_tests.txt b/dev/breeze/doc/images/output_testing_tests.txt
index 226ce07013..63747a5754 100644
--- a/dev/breeze/doc/images/output_testing_tests.txt
+++ b/dev/breeze/doc/images/output_testing_tests.txt
@@ -1 +1 @@
-9156856b589d49e49c75bf78869a971b
+e0efccc2852183c918b59129c6e4d883
diff --git a/dev/breeze/src/airflow_breeze/commands/common_options.py b/dev/breeze/src/airflow_breeze/commands/common_options.py
index a6ab6855c2..f9a33d29cb 100644
--- a/dev/breeze/src/airflow_breeze/commands/common_options.py
+++ b/dev/breeze/src/airflow_breeze/commands/common_options.py
@@ -29,7 +29,6 @@ from airflow_breeze.global_constants import (
     ALLOWED_MOUNT_OPTIONS,
     ALLOWED_MYSQL_VERSIONS,
     ALLOWED_POSTGRES_VERSIONS,
-    ALLOWED_PYDANTIC_VERSIONS,
     ALLOWED_PYTHON_MAJOR_MINOR_VERSIONS,
     ALLOWED_USE_AIRFLOW_VERSIONS,
     APACHE_AIRFLOW_GITHUB_REPOSITORY,
@@ -388,14 +387,6 @@ option_uv_http_timeout = click.option(
     show_default=True,
     envvar="UV_HTTP_TIMEOUT",
 )
-option_pydantic = click.option(
-    "--pydantic",
-    help="Determines which pydantic should be used during tests.",
-    type=BetterChoice(ALLOWED_PYDANTIC_VERSIONS),
-    show_default=True,
-    default=ALLOWED_PYDANTIC_VERSIONS[0],
-    envvar="PYDANTIC",
-)
 option_use_airflow_version = click.option(
     "--use-airflow-version",
     help="Use (reinstall at entry) Airflow version from PyPI. It can also be version (to install from PyPI), "
diff --git a/dev/breeze/src/airflow_breeze/commands/developer_commands.py b/dev/breeze/src/airflow_breeze/commands/developer_commands.py
index 6fead47738..90a91dd55c 100644
--- a/dev/breeze/src/airflow_breeze/commands/developer_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/developer_commands.py
@@ -57,7 +57,6 @@ from airflow_breeze.commands.common_options import (
     option_no_db_cleanup,
     option_postgres_version,
     option_project_name,
-    option_pydantic,
     option_python,
     option_run_db_tests_only,
     option_skip_db_tests,
@@ -288,7 +287,6 @@ option_install_airflow_with_constraints_default_true = click.option(
 @option_mount_sources
 @option_mysql_version
 @option_no_db_cleanup
-@option_pydantic
 @option_platform_single
 @option_postgres_version
 @option_project_name
@@ -351,7 +349,6 @@ def shell(
     providers_constraints_mode: str,
     providers_constraints_reference: str,
     providers_skip_constraints: bool,
-    pydantic: str,
     python: str,
     quiet: bool,
     restart: bool,
@@ -419,7 +416,6 @@ def shell(
         providers_constraints_mode=providers_constraints_mode,
         providers_constraints_reference=providers_constraints_reference,
         providers_skip_constraints=providers_skip_constraints,
-        pydantic=pydantic,
         python=python,
         quiet=quiet,
         restart=restart,
diff --git a/dev/breeze/src/airflow_breeze/commands/developer_commands_config.py b/dev/breeze/src/airflow_breeze/commands/developer_commands_config.py
index 1570e66851..7b6eb73dde 100644
--- a/dev/breeze/src/airflow_breeze/commands/developer_commands_config.py
+++ b/dev/breeze/src/airflow_breeze/commands/developer_commands_config.py
@@ -167,7 +167,6 @@ DEVELOPER_PARAMETERS: dict[str, list[dict[str, str | list[str]]]] = {
                 "--upgrade-boto",
                 "--downgrade-sqlalchemy",
                 "--downgrade-pendulum",
-                "--pydantic",
             ],
         },
         {
diff --git a/dev/breeze/src/airflow_breeze/commands/testing_commands.py b/dev/breeze/src/airflow_breeze/commands/testing_commands.py
index 0a8976ce63..24cb8a273f 100644
--- a/dev/breeze/src/airflow_breeze/commands/testing_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/testing_commands.py
@@ -47,7 +47,6 @@ from airflow_breeze.commands.common_options import (
     option_no_db_cleanup,
     option_parallelism,
     option_postgres_version,
-    option_pydantic,
     option_python,
     option_run_db_tests_only,
     option_run_in_parallel,
@@ -533,7 +532,6 @@ option_force_sa_warnings = click.option(
 @option_postgres_version
 @option_providers_constraints_location
 @option_providers_skip_constraints
-@option_pydantic
 @option_python
 @option_remove_arm_packages
 @option_run_db_tests_only
@@ -592,7 +590,6 @@ def command_for_tests(**kwargs):
 @option_postgres_version
 @option_providers_constraints_location
 @option_providers_skip_constraints
-@option_pydantic
 @option_python
 @option_remove_arm_packages
 @option_skip_cleanup
@@ -652,7 +649,6 @@ def command_for_db_tests(**kwargs):
 @option_parallelism
 @option_providers_constraints_location
 @option_providers_skip_constraints
-@option_pydantic
 @option_python
 @option_remove_arm_packages
 @option_skip_cleanup
@@ -711,7 +707,6 @@ def _run_test_command(
     package_format: str,
     providers_constraints_location: str,
     providers_skip_constraints: bool,
-    pydantic: str,
     python: str,
     remove_arm_packages: bool,
     run_db_tests_only: bool,
@@ -768,7 +763,6 @@ def _run_test_command(
         postgres_version=postgres_version,
         providers_constraints_location=providers_constraints_location,
         providers_skip_constraints=providers_skip_constraints,
-        pydantic=pydantic,
         python=python,
         remove_arm_packages=remove_arm_packages,
         run_db_tests_only=run_db_tests_only,
@@ -786,11 +780,6 @@ def _run_test_command(
     fix_ownership_using_docker()
     cleanup_python_generated_files()
     perform_environment_checks()
-    if pydantic != "v2":
-        # Avoid edge cases when there are no available tests, e.g. No-Pydantic for Weaviate provider.
-        # https://docs.pytest.org/en/stable/reference/exit-codes.html
-        # https://github.com/apache/airflow/pull/38402#issuecomment-2014938950
-        extra_pytest_args = (*extra_pytest_args, "--suppress-no-test-exit-code")
     if skip_providers:
         ignored_path_list = [
             f"--ignore=tests/providers/{provider_id.replace('.','/')}"
diff --git a/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py b/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
index f0127dbd3f..4f4c3a14c1 100644
--- a/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
+++ b/dev/breeze/src/airflow_breeze/commands/testing_commands_config.py
@@ -77,7 +77,6 @@ TESTING_PARAMETERS: dict[str, list[dict[str, str | list[str]]]] = {
                 "--upgrade-boto",
                 "--downgrade-sqlalchemy",
                 "--downgrade-pendulum",
-                "--pydantic",
                 "--remove-arm-packages",
             ],
         },
@@ -143,7 +142,6 @@ TESTING_PARAMETERS: dict[str, list[dict[str, str | list[str]]]] = {
                 "--upgrade-boto",
                 "--downgrade-sqlalchemy",
                 "--downgrade-pendulum",
-                "--pydantic",
                 "--remove-arm-packages",
             ],
         },
@@ -213,7 +211,6 @@ TESTING_PARAMETERS: dict[str, list[dict[str, str | list[str]]]] = {
                 "--upgrade-boto",
                 "--downgrade-sqlalchemy",
                 "--downgrade-pendulum",
-                "--pydantic",
                 "--remove-arm-packages",
             ],
         },
diff --git a/dev/breeze/src/airflow_breeze/global_constants.py b/dev/breeze/src/airflow_breeze/global_constants.py
index 46b0c3d521..47f14c818d 100644
--- a/dev/breeze/src/airflow_breeze/global_constants.py
+++ b/dev/breeze/src/airflow_breeze/global_constants.py
@@ -228,7 +228,6 @@ SINGLE_PLATFORMS = ["linux/amd64", "linux/arm64"]
 ALLOWED_PLATFORMS = [*SINGLE_PLATFORMS, MULTI_PLATFORM]
 
 ALLOWED_USE_AIRFLOW_VERSIONS = ["none", "wheel", "sdist"]
-ALLOWED_PYDANTIC_VERSIONS = ["v2", "v1", "none"]
 
 ALL_HISTORICAL_PYTHON_VERSIONS = ["3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
 
diff --git a/dev/breeze/src/airflow_breeze/params/shell_params.py b/dev/breeze/src/airflow_breeze/params/shell_params.py
index 0b55fc0986..11f12d4a1f 100644
--- a/dev/breeze/src/airflow_breeze/params/shell_params.py
+++ b/dev/breeze/src/airflow_breeze/params/shell_params.py
@@ -32,7 +32,6 @@ from airflow_breeze.global_constants import (
     ALLOWED_INSTALLATION_PACKAGE_FORMATS,
     ALLOWED_MYSQL_VERSIONS,
     ALLOWED_POSTGRES_VERSIONS,
-    ALLOWED_PYDANTIC_VERSIONS,
     ALLOWED_PYTHON_MAJOR_MINOR_VERSIONS,
     APACHE_AIRFLOW_GITHUB_REPOSITORY,
     CELERY_BROKER_URLS_MAP,
@@ -183,7 +182,6 @@ class ShellParams:
     providers_constraints_mode: str = ALLOWED_CONSTRAINTS_MODES_CI[0]
     providers_constraints_reference: str = ""
     providers_skip_constraints: bool = False
-    pydantic: str = ALLOWED_PYDANTIC_VERSIONS[0]
     python: str = ALLOWED_PYTHON_MAJOR_MINOR_VERSIONS[0]
     quiet: bool = False
     regenerate_missing_docs: bool = False
@@ -566,7 +564,6 @@ class ShellParams:
         _set_var(_env, "SYSTEM_TESTS_ENV_ID", None, "")
         _set_var(_env, "TEST_TYPE", self.test_type, "")
         _set_var(_env, "UPGRADE_BOTO", self.upgrade_boto)
-        _set_var(_env, "PYDANTIC", self.pydantic)
         _set_var(_env, "USE_AIRFLOW_VERSION", self.use_airflow_version, "")
         _set_var(_env, "USE_PACKAGES_FROM_DIST", self.use_packages_from_dist)
         _set_var(_env, "USE_UV", self.use_uv)
diff --git a/hatch_build.py b/hatch_build.py
index fd4dba6cbc..08f47731f2 100644
--- a/hatch_build.py
+++ b/hatch_build.py
@@ -116,9 +116,6 @@ CORE_EXTRAS: dict[str, list[str]] = {
         "bcrypt>=2.0.0",
         "flask-bcrypt>=0.7.1",
     ],
-    "pydantic": [
-        "pydantic>=2.3.0",
-    ],
     "rabbitmq": [
         "amqp",
     ],
@@ -431,6 +428,7 @@ DEPENDENCIES = [
     "cryptography>=41.0.0",
     "deprecated>=1.2.13",
     "dill>=0.2.2",
+    "fastapi[standard]>=0.112.2",
     "flask-caching>=2.0.0",
     # Flask-Session 0.6 add new arguments into the SqlAlchemySessionInterface constructor as well as
     # all parameters now are mandatory which make AirflowDatabaseSessionInterface incopatible with this version.
@@ -468,6 +466,7 @@ DEPENDENCIES = [
     'pendulum>=3.0.0,<4.0;python_version>="3.12"',
     "pluggy>=1.5.0",
     "psutil>=5.8.0",
+    "pydantic>=2.3.0",
     "pygments>=2.0.1",
     "pyjwt>=2.0.0",
     "python-daemon>=3.0.0",
diff --git a/newsfragments/41857.significant.rst b/newsfragments/41857.significant.rst
new file mode 100644
index 0000000000..df3c85853e
--- /dev/null
+++ b/newsfragments/41857.significant.rst
@@ -0,0 +1,3 @@
+**Breaking Change**
+
+Airflow core now depends on ``pydantic>=2.3.0``. If you have Pydantic v1 installed, please upgrade.
diff --git a/pyproject.toml b/pyproject.toml
index 22fbfc0143..5b6a75445e 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -79,8 +79,8 @@ dynamic = ["version", "optional-dependencies", "dependencies"]
 # START CORE EXTRAS HERE
 #
 # aiobotocore, apache-atlas, apache-webhdfs, async, cgroups, cloudpickle, github-enterprise, google-
-# auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, pydantic, rabbitmq, s3fs, saml,
-# sentry, statsd, uv, virtualenv
+# auth, graphviz, kerberos, ldap, leveldb, otel, pandas, password, rabbitmq, s3fs, saml, sentry,
+# statsd, uv, virtualenv
 #
 # END CORE EXTRAS HERE
 #
diff --git a/scripts/ci/docker-compose/devcontainer.env b/scripts/ci/docker-compose/devcontainer.env
index 2b7cddb47e..f6c7e2e022 100644
--- a/scripts/ci/docker-compose/devcontainer.env
+++ b/scripts/ci/docker-compose/devcontainer.env
@@ -59,7 +59,6 @@ NUM_RUNS=
 ONLY_MIN_VERSION_UPDATE="false"
 PACKAGE_FORMAT=
 POSTGRES_VERSION=10
-PYDANTIC="v2"
 PYTHONDONTWRITEBYTECODE="true"
 REMOVE_ARM_PACKAGES="false"
 RUN_TESTS="false"
diff --git a/scripts/docker/entrypoint_ci.sh b/scripts/docker/entrypoint_ci.sh
index b1d6f4cf70..1f0a431579 100755
--- a/scripts/docker/entrypoint_ci.sh
+++ b/scripts/docker/entrypoint_ci.sh
@@ -269,47 +269,6 @@ function check_boto_upgrade() {
     pip check
 }
 
-# Remove or reinstall pydantic if needed
-function check_pydantic() {
-    if [[ ${PYDANTIC=} == "none" ]]; then
-        echo
-        echo "${COLOR_YELLOW}Reinstalling airflow from local sources to account for pyproject.toml changes${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} -e .
-        echo
-        echo "${COLOR_YELLOW}Remove pydantic and 3rd party libraries that depend on it${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} uninstall ${EXTRA_UNINSTALL_FLAGS} pydantic aws-sam-translator openai \
-           pyiceberg qdrant-client cfn-lint weaviate-client google-cloud-aiplatform
-        pip check
-    elif [[ ${PYDANTIC=} == "v1" ]]; then
-        echo
-        echo "${COLOR_YELLOW}Reinstalling airflow from local sources to account for pyproject.toml changes${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} -e .
-        echo
-        echo "${COLOR_YELLOW}Uninstalling dependencies which are not compatible with Pydantic 1${COLOR_RESET}"
-        echo
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} uninstall ${EXTRA_UNINSTALL_FLAGS} pyiceberg weaviate-client
-        echo
-        echo "${COLOR_YELLOW}Downgrading Pydantic to < 2${COLOR_RESET}"
-        echo
-        # Pydantic 1.10.17/1.10.15 conflicts with aws-sam-translator so we need to exclude it
-        # shellcheck disable=SC2086
-        ${PACKAGING_TOOL_CMD} install ${EXTRA_INSTALL_FLAGS} --upgrade "pydantic<2.0.0,!=1.10.17,!=1.10.15"
-        pip check
-    else
-        echo
-        echo "${COLOR_BLUE}Leaving default pydantic v2${COLOR_RESET}"
-        echo
-    fi
-}
-
-
 # Download minimum supported version of sqlalchemy to run tests with it
 function check_downgrade_sqlalchemy() {
     if [[ ${DOWNGRADE_SQLALCHEMY=} != "true" ]]; then
@@ -422,7 +381,6 @@ function check_force_lowest_dependencies() {
 determine_airflow_to_use
 environment_initialization
 check_boto_upgrade
-check_pydantic
 check_downgrade_sqlalchemy
 check_downgrade_pendulum
 check_force_lowest_dependencies
diff --git a/tests/always/test_example_dags.py b/tests/always/test_example_dags.py
index b9e45647ec..12ff4c0f38 100644
--- a/tests/always/test_example_dags.py
+++ b/tests/always/test_example_dags.py
@@ -65,12 +65,6 @@ IGNORE_AIRFLOW_PROVIDER_DEPRECATION_WARNING: tuple[str, ...] = (
 )
 
 
-if os.environ.get("PYDANTIC", "v2") != "v2":
-    pytest.skip(
-        "The test is skipped because we are running in limited Pydantic environment", allow_module_level=True
-    )
-
-
 def match_optional_dependencies(distribution_name: str, specifier: str | None) -> tuple[bool, str]:
     try:
         package_version = Version(importlib_metadata.version(distribution_name))
diff --git a/tests/operators/test_python.py b/tests/operators/test_python.py
index 0f52f16b87..3a3eaa6840 100644
--- a/tests/operators/test_python.py
+++ b/tests/operators/test_python.py
@@ -63,7 +63,6 @@ from airflow.operators.python import (
 from airflow.settings import _ENABLE_AIP_44
 from airflow.utils import timezone
 from airflow.utils.context import AirflowContextDeprecationWarning, Context
-from airflow.utils.pydantic import is_pydantic_2_installed
 from airflow.utils.python_virtualenv import prepare_virtualenv
 from airflow.utils.session import create_session
 from airflow.utils.state import DagRunState, State, TaskInstanceState
@@ -88,10 +87,7 @@ DILL_MARKER = pytest.mark.skipif(not DILL_INSTALLED, reason="`dill` is not insta
 CLOUDPICKLE_INSTALLED = find_spec("cloudpickle") is not None
 CLOUDPICKLE_MARKER = pytest.mark.skipif(not CLOUDPICKLE_INSTALLED, reason="`cloudpickle` is not installed")
 
-HAS_PYDANTIC_2 = is_pydantic_2_installed()
-USE_AIRFLOW_CONTEXT_MARKER = pytest.mark.skipif(
-    not HAS_PYDANTIC_2 or not _ENABLE_AIP_44, reason="`pydantic<2` or AIP-44 is not enabled"
-)
+USE_AIRFLOW_CONTEXT_MARKER = pytest.mark.skipif(not _ENABLE_AIP_44, reason="AIP-44 is not enabled")
 
 
 class BasePythonTest:
@@ -1085,18 +1081,6 @@ class BaseTestPythonVirtualenvOperator(BasePythonTest):
         ti = self.run_as_task(f, return_ti=True, multiple_outputs=False, use_airflow_context=True)
         assert ti.state == TaskInstanceState.SUCCESS
 
-    @pytest.mark.skipif(HAS_PYDANTIC_2, reason="`pydantic>=2` is installed")
-    def test_use_airflow_context_without_pydantic_v2_error(self):
-        def f():
-            from airflow.operators.python import get_current_context
-
-            get_current_context()
-            return []
-
-        error_msg = "`get_current_context()` needs to be used with Pydantic 2 and AIP-44 enabled."
-        with pytest.raises(AirflowException, match=re.escape(error_msg)):
-            self.run_as_task(f, return_ti=True, multiple_outputs=False, use_airflow_context=True)
-
     @pytest.mark.skipif(_ENABLE_AIP_44, reason="AIP-44 is enabled")
     def test_use_airflow_context_without_aip_44_error(self):
         def f():
@@ -1105,7 +1089,7 @@ class BaseTestPythonVirtualenvOperator(BasePythonTest):
             get_current_context()
             return []
 
-        error_msg = "`get_current_context()` needs to be used with Pydantic 2 and AIP-44 enabled."
+        error_msg = "`get_current_context()` needs to be used with AIP-44 enabled."
         with pytest.raises(AirflowException, match=re.escape(error_msg)):
             self.run_as_task(f, return_ti=True, multiple_outputs=False, use_airflow_context=True)
 
diff --git a/tests/serialization/test_serde.py b/tests/serialization/test_serde.py
index 2d03aa0a7b..cc50e77224 100644
--- a/tests/serialization/test_serde.py
+++ b/tests/serialization/test_serde.py
@@ -26,6 +26,7 @@ from typing import ClassVar
 
 import attr
 import pytest
+from pydantic import BaseModel
 
 from airflow.datasets import Dataset
 from airflow.serialization.serde import (
@@ -42,7 +43,6 @@ from airflow.serialization.serde import (
     serialize,
 )
 from airflow.utils.module_loading import import_string, iter_namespace, qualname
-from airflow.utils.pydantic import BaseModel
 from tests.test_utils.config import conf_vars
 
 
diff --git a/tests/serialization/test_serialized_objects.py b/tests/serialization/test_serialized_objects.py
index 624da24d26..20ed3954e1 100644
--- a/tests/serialization/test_serialized_objects.py
+++ b/tests/serialization/test_serialized_objects.py
@@ -29,6 +29,7 @@ import pytest
 from dateutil import relativedelta
 from kubernetes.client import models as k8s
 from pendulum.tz.timezone import Timezone
+from pydantic import BaseModel
 
 from airflow.datasets import Dataset, DatasetAlias, DatasetAliasEvent
 from airflow.exceptions import (
@@ -63,7 +64,6 @@ from airflow.utils import timezone
 from airflow.utils.context import OutletEventAccessor, OutletEventAccessors
 from airflow.utils.db import LazySelectSequence
 from airflow.utils.operator_resources import Resources
-from airflow.utils.pydantic import BaseModel
 from airflow.utils.state import DagRunState, State
 from airflow.utils.task_group import TaskGroup
 from airflow.utils.types import DagRunType