This is an automated email from the ASF dual-hosted git repository. ephraimanierobi pushed a commit to branch v3-1-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit 87e4033613bf95a82c4f61028e4e8c553fbbb0aa Author: Jens Scheffler <[email protected]> AuthorDate: Sun Dec 7 17:34:18 2025 +0100 [v3-1-test] Breeze exit on incompatible arguments (#59148) (#59157) * Breeze exit on incompatible arguments * Apply suggestion from @choo121600 * Nit fix --------- (cherry picked from commit 236dab6406e55f88b879f69154e54f2763ce5d3b) Co-authored-by: Kunal Bhattacharya <[email protected]> Co-authored-by: Yeonguk Choo <[email protected]> --- dev/breeze/doc/images/output_start-airflow.svg | 2 +- dev/breeze/doc/images/output_start-airflow.txt | 2 +- dev/breeze/src/airflow_breeze/commands/developer_commands.py | 10 +++++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/dev/breeze/doc/images/output_start-airflow.svg b/dev/breeze/doc/images/output_start-airflow.svg index 286eefb8fe5..66757b5b0ca 100644 --- a/dev/breeze/doc/images/output_start-airflow.svg +++ b/dev/breeze/doc/images/output_start-airflow.svg @@ -582,7 +582,7 @@ </text><text class="breeze-start-airflow-r5" x="0" y="1557.2" textLength="12.2" clip-path="url(#breeze-start-airflow-line-63)">│</text><text class="breeze-start-airflow-r4" x="24.4" y="1557.2" textLength="305" clip-path="url(#breeze-start-airflow-line-63)">--skip-assets-compilation</text><text class="breeze-start-airflow-r1" x="378.2" y="1557.2" textLength="1061.4" clip-path="url(#breeze-start-airflow-line-63)">Skips compilation of assets when starting airfl [...] </text><text class="breeze-start-airflow-r5" x="0" y="1581.6" textLength="12.2" clip-path="url(#breeze-start-airflow-line-64)">│</text><text class="breeze-start-airflow-r1" x="378.2" y="1581.6" textLength="305" clip-path="url(#breeze-start-airflow-line-64)">(mutually exclusive with </text><text class="breeze-start-airflow-r4" x="683.2" y="1581.6" textLength="122" clip-path="url(#breeze-start-airflow-line-64)">--dev-mode</text><text class="breeze-start-airflow-r1" x="805.2" [...] </text><text class="breeze-start-airflow-r5" x="0" y="1606" textLength="12.2" clip-path="url(#breeze-start-airflow-line-65)">│</text><text class="breeze-start-airflow-r4" x="24.4" y="1606" textLength="122" clip-path="url(#breeze-start-airflow-line-65)">--dev-mode</text><text class="breeze-start-airflow-r1" x="378.2" y="1606" textLength="1061.4" clip-path="url(#breeze-start-airflow-line-65)">Starts api-server in dev mode (assets are always recompile [...] -</text><text class="breeze-start-airflow-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-start-airflow-line-66)">│</text><text class="breeze-start-airflow-r1" x="378.2" y="1630.4" textLength="305" clip-path="url(#breeze-start-airflow-line-66)">(mutually exclusive with </text><text class="breeze-start-airflow-r4" x="683.2" y="1630.4" textLength="305" clip-path="url(#breeze-start-airflow-line-66)">--skip-assets-compilation</text><text class="breeze-start-airflo [...] +</text><text class="breeze-start-airflow-r5" x="0" y="1630.4" textLength="12.2" clip-path="url(#breeze-start-airflow-line-66)">│</text><text class="breeze-start-airflow-r1" x="378.2" y="1630.4" textLength="305" clip-path="url(#breeze-start-airflow-line-66)">(mutually exclusive with </text><text class="breeze-start-airflow-r4" x="683.2" y="1630.4" textLength="305" clip-path="url(#breeze-start-airflow-line-66)">--skip-assets-compilation</text><text class="breeze-start-airflo [...] </text><text class="breeze-start-airflow-r5" x="0" y="1654.8" textLength="1464" clip-path="url(#breeze-start-airflow-line-67)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text class="breeze-start-airflow-r1" x="1464" y="1654.8" textLength="12.2" clip-path="url(#breeze-start-airflow-line-67)"> </text><text class="breeze-start-airflow-r5" x="0" y="1679.2" textLength="24.4" clip-path="url(#breeze-start-airflow-line-68)">╭─</text><text class="breeze-start-airflow-r5" x="24.4" y="1679.2" textLength="488" clip-path="url(#breeze-start-airflow-line-68)"> Build CI image (before entering shell) </text><text class="breeze-start-airflow-r5" x="512.4" y="1679.2" textLength="927.2" clip-path="url(#breeze-start-airflow-line-68)">─────────────────────────── [...] </text><text class="breeze-start-airflow-r5" x="0" y="1703.6" textLength="12.2" clip-path="url(#breeze-start-airflow-line-69)">│</text><text class="breeze-start-airflow-r4" x="24.4" y="1703.6" textLength="158.6" clip-path="url(#breeze-start-airflow-line-69)">--force-build</text><text class="breeze-start-airflow-r1" x="341.6" y="1703.6" textLength="707.6" clip-path="url(#breeze-start-airflow-line-69)">Force image build no matter if it is determined& [...] diff --git a/dev/breeze/doc/images/output_start-airflow.txt b/dev/breeze/doc/images/output_start-airflow.txt index b20c774a1b1..2eabe2c3e6f 100644 --- a/dev/breeze/doc/images/output_start-airflow.txt +++ b/dev/breeze/doc/images/output_start-airflow.txt @@ -1 +1 @@ -0e0e91f58cc936fdc0c2f2621f23fb3e +6de827b3ac600a7b488313a094d227a0 diff --git a/dev/breeze/src/airflow_breeze/commands/developer_commands.py b/dev/breeze/src/airflow_breeze/commands/developer_commands.py index 71ab14516b6..a32cf74ec2a 100644 --- a/dev/breeze/src/airflow_breeze/commands/developer_commands.py +++ b/dev/breeze/src/airflow_breeze/commands/developer_commands.py @@ -515,7 +515,7 @@ option_executor_start_airflow = click.option( @click.option( "--dev-mode", help="Starts api-server in dev mode (assets are always recompiled in this case when starting) " - "(mutually exclusive with --skip-assets-compilation).", + "(mutually exclusive with --skip-assets-compilation and --use-airflow-version).", is_flag=True, ) @click.option( @@ -628,6 +628,14 @@ def start_airflow( ) skip_assets_compilation = True + if dev_mode and use_airflow_version: + get_console().print( + "[error]You cannot set Airflow version in dev mode! Consider switching to the respective " + "version branch if you need to use --dev-mode on a different Airflow version! \nExiting!!" + ) + + sys.exit(1) + # Automatically enable file polling for hot reloading under WSL if dev_mode and is_wsl(): os.environ["CHOKIDAR_USEPOLLING"] = "true"
