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

jedcunningham 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 260977b92c9 Remove unused webserver configs (#48066)
260977b92c9 is described below

commit 260977b92c92e841b0b2a007a1851fb096e59ef5
Author: Jed Cunningham <[email protected]>
AuthorDate: Sat Mar 22 07:59:18 2025 -0600

    Remove unused webserver configs (#48066)
    
    This is my first pass through them - these are all unused.
---
 .../logging-monitoring/index.rst                   |   2 -
 .../logging-monitoring/tracking-user-activity.rst  |  40 ----
 .../docs/administration-and-deployment/plugins.rst |  12 --
 airflow-core/docs/core-concepts/dag-run.rst        |  12 --
 airflow-core/docs/core-concepts/params.rst         |   4 -
 airflow-core/docs/faq.rst                          |   8 -
 airflow-core/docs/howto/run-behind-proxy.rst       |  19 --
 airflow-core/docs/img/example_passing_conf.png     | Bin 53383 -> 0 bytes
 airflow-core/docs/integration.rst                  |   1 -
 airflow-core/docs/ui.rst                           |   2 +-
 .../cli/commands/remote_commands/config_command.py | 112 ++++++++++
 .../src/airflow/config_templates/config.yml        | 231 ---------------------
 .../airflow_breeze/commands/kubernetes_commands.py |   2 +-
 newsfragments/48066.significant.rst                |  78 +++++++
 providers/fab/tests/unit/fab/utils.py              |   3 -
 15 files changed, 192 insertions(+), 334 deletions(-)

diff --git 
a/airflow-core/docs/administration-and-deployment/logging-monitoring/index.rst 
b/airflow-core/docs/administration-and-deployment/logging-monitoring/index.rst
index 519013bf487..c9bd8661591 100644
--- 
a/airflow-core/docs/administration-and-deployment/logging-monitoring/index.rst
+++ 
b/airflow-core/docs/administration-and-deployment/logging-monitoring/index.rst
@@ -37,5 +37,3 @@ In addition to the standard logging and metrics capabilities, 
Airflow supports t
 
     check-health
     errors
-
-    tracking-user-activity
diff --git 
a/airflow-core/docs/administration-and-deployment/logging-monitoring/tracking-user-activity.rst
 
b/airflow-core/docs/administration-and-deployment/logging-monitoring/tracking-user-activity.rst
deleted file mode 100644
index 28a7959544b..00000000000
--- 
a/airflow-core/docs/administration-and-deployment/logging-monitoring/tracking-user-activity.rst
+++ /dev/null
@@ -1,40 +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.
-
-Tracking User Activity
-======================
-
-You can configure Airflow to route anonymous data to
-`Google Analytics <https://analytics.google.com/>`_,
-`Segment <https://segment.com/>`_, `Metarouter <https://www.metarouter.io/>`_, 
or `Matomo <https://matomo.org/>`_.
-
-Edit ``airflow.cfg`` and set the ``webserver`` block to have an 
``analytics_tool`` and ``analytics_id`` (and ``analytics_url`` if you're using 
``matomo``):
-
-.. code-block:: ini
-
-  [webserver]
-  # Send anonymous user activity to Google Analytics, Segment, or Metarouter
-  analytics_tool = google_analytics # valid options: google_analytics, 
segment, metarouter, matomo
-  analytics_id = XXXXXXXXXXX
-  analytics_url = https://your-matomo-instance.example.com # only required for 
Matomo
-
-.. note:: You can see view injected tracker html within Airflow's source code 
at
-  ``airflow/www/templates/airflow/main.html``. The related global
-  variables are set in ``airflow/www/templates/app.py``.
-
-.. note::
-    For more information on setting the configuration, see 
:doc:`../../howto/set-config`
diff --git a/airflow-core/docs/administration-and-deployment/plugins.rst 
b/airflow-core/docs/administration-and-deployment/plugins.rst
index 904788f6b33..d2091c4936b 100644
--- a/airflow-core/docs/administration-and-deployment/plugins.rst
+++ b/airflow-core/docs/administration-and-deployment/plugins.rst
@@ -317,18 +317,6 @@ Then inside pyproject.toml:
     [project.entry-points."airflow.plugins"]
     my_plugin = "my_package.my_plugin:MyAirflowPlugin"
 
-Automatic reloading webserver
------------------------------
-
-To enable automatic reloading of the webserver, when changes in a directory 
with plugins has been detected,
-you should set ``reload_on_plugin_change`` option in ``[webserver]`` section 
to ``True``.
-
-.. note::
-    For more information on setting the configuration, see 
:doc:`/howto/set-config`
-
-.. note::
-    See :doc:`../administration-and-deployment/modules_management` for details 
on how Python and Airflow manage modules.
-
 Troubleshooting
 ---------------
 
diff --git a/airflow-core/docs/core-concepts/dag-run.rst 
b/airflow-core/docs/core-concepts/dag-run.rst
index 4742d47a77f..922b87ccb69 100644
--- a/airflow-core/docs/core-concepts/dag-run.rst
+++ b/airflow-core/docs/core-concepts/dag-run.rst
@@ -267,18 +267,6 @@ Using CLI
 
     airflow dags trigger --conf '{"conf1": "value1"}' example_parameterized_dag
 
-Using UI
-^^^^^^^^^^
-
-In the UI the parameters to trigger a DAG can be better represented via 
``params`` definition as described in
-:ref:`concepts:params` documentation. Via defined params a proper form for 
value entry is rendered.
-
-If the DAG does not define ``params`` the form is usually skipped, via the 
configuration option ``show_trigger_form_if_no_params``
-it is possible to force the display the classic form of a dict-only entry to 
pass configuration options.
-
-.. image:: ../img/example_passing_conf.png
-
-Please consider to convert such usage to ``params`` as this is the more 
convenient way and allows also validation of user input.
 
 To Keep in Mind
 ''''''''''''''''
diff --git a/airflow-core/docs/core-concepts/params.rst 
b/airflow-core/docs/core-concepts/params.rst
index 2f46588d6c8..5ac024f497f 100644
--- a/airflow-core/docs/core-concepts/params.rst
+++ b/airflow-core/docs/core-concepts/params.rst
@@ -400,10 +400,6 @@ Finally the fourth section shows advanced form elements.
 
 .. image:: ../img/trigger-dag-tutorial-form-4.png
 
-.. versionadded:: 2.7.0
-    The trigger form can also be forced to be displayed also if no params are 
defined using the configuration switch
-    ``webserver.show_trigger_form_if_no_params``.
-
 .. versionchanged:: 3.0.0
     By default custom HTML is not allowed to prevent injection of scripts or 
other malicious HTML code. The previous field named
     ``description_html`` is now super-seeded with the attribute 
``description_md``. ``description_html`` is not supported anymore.
diff --git a/airflow-core/docs/faq.rst b/airflow-core/docs/faq.rst
index 216afd285b4..16fb0c5b56d 100644
--- a/airflow-core/docs/faq.rst
+++ b/airflow-core/docs/faq.rst
@@ -464,14 +464,6 @@ How do I stop the sync perms happening multiple times per 
webserver?
 Set the value of ``[fab] update_fab_perms`` configuration in ``airflow.cfg`` 
to ``False``.
 
 
-How to reduce the airflow UI page load time?
-------------------------------------------------
-
-If your DAG takes long time to load, you could reduce the value of 
``default_dag_run_display_number`` configuration
-in ``airflow.cfg`` to a smaller value. This configurable controls the number 
of DAG runs to show in UI with default
-value ``25``.
-
-
 Why did the pause DAG toggle turn red?
 --------------------------------------
 
diff --git a/airflow-core/docs/howto/run-behind-proxy.rst 
b/airflow-core/docs/howto/run-behind-proxy.rst
index 1ef59d610a6..1e30b7152ee 100644
--- a/airflow-core/docs/howto/run-behind-proxy.rst
+++ b/airflow-core/docs/howto/run-behind-proxy.rst
@@ -63,22 +63,3 @@ Your reverse proxy (ex: nginx) should be configured as 
follow:
             proxy_set_header Connection "upgrade";
         }
       }
-
-To ensure that Airflow generates URLs with the correct scheme when
-running behind a TLS-terminating proxy, you should configure the proxy
-to set the ``X-Forwarded-Proto`` header, and enable the ``ProxyFix``
-middleware in your ``airflow.cfg``::
-
-    [webserver]
-    enable_proxy_fix = True
-
-If you need to configure the individual parameters to the ``ProxyFix`` 
middleware,
-you can set them individually in your ``airflow.cfg``::
-
-    [webserver]
-    proxy_fix_x_for = 1
-    proxy_fix_x_host = 3
-
-.. note::
-    You should only enable the ``ProxyFix`` middleware when running
-    Airflow behind a trusted proxy (AWS ELB, nginx, etc.).
diff --git a/airflow-core/docs/img/example_passing_conf.png 
b/airflow-core/docs/img/example_passing_conf.png
deleted file mode 100644
index f49be45852a..00000000000
Binary files a/airflow-core/docs/img/example_passing_conf.png and /dev/null 
differ
diff --git a/airflow-core/docs/integration.rst 
b/airflow-core/docs/integration.rst
index 968ba997e7f..4d27ea4158d 100644
--- a/airflow-core/docs/integration.rst
+++ b/airflow-core/docs/integration.rst
@@ -30,7 +30,6 @@ Airflow has a mechanism that allows you to expand its 
functionality and integrat
 * :doc:`Plugins </administration-and-deployment/plugins>`
 * :doc:`Listeners </administration-and-deployment/listeners>`
 * :doc:`Secrets backends </security/secrets/secrets-backend/index>`
-* :doc:`Tracking systems 
</administration-and-deployment/logging-monitoring/tracking-user-activity>`
 * :doc:`Web UI Authentication backends </security/api>`
 * :doc:`Serialization </authoring-and-scheduling/serializers>`
 
diff --git a/airflow-core/docs/ui.rst b/airflow-core/docs/ui.rst
index 5f8a60e50e1..b9ef8fb4616 100644
--- a/airflow-core/docs/ui.rst
+++ b/airflow-core/docs/ui.rst
@@ -29,7 +29,7 @@ Dags View
 
 List of the dags in your environment, and a set of shortcuts to useful pages.
 You can see exactly how many tasks succeeded, failed, or are currently
-running at a glance. To hide completed tasks set 
``show_recent_stats_for_completed_runs = False``
+running at a glance.
 
 In order to filter dags (e.g. by team), you can add tags in each DAG.
 The filter is saved in a cookie and can be reset by the reset button.
diff --git 
a/airflow-core/src/airflow/cli/commands/remote_commands/config_command.py 
b/airflow-core/src/airflow/cli/commands/remote_commands/config_command.py
index 63ccf561a51..667ee735b25 100644
--- a/airflow-core/src/airflow/cli/commands/remote_commands/config_command.py
+++ b/airflow-core/src/airflow/cli/commands/remote_commands/config_command.py
@@ -349,6 +349,118 @@ CONFIGS_CHANGES = [
         config=ConfigParameter("webserver", "access_logformat"),
         was_deprecated=False,
     ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "web_server_master_timeout"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "worker_refresh_batch_size"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "worker_refresh_interval"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "reload_on_plugin_change"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "worker_class"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "expose_stacktrace"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "log_fetch_delay_sec"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "log_auto_tailing_offset"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "log_animation_speed"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "default_dag_run_display_number"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "enable_proxy_fix"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "proxy_fix_x_for"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "proxy_fix_x_proto"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "proxy_fix_x_host"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "proxy_fix_x_port"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "proxy_fix_x_prefix"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "cookie_secure"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "analytics_tool"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "analytics_id"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "analytics_url"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", 
"show_recent_stats_for_completed_runs"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "run_internal_api"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "caching_hash_method"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "show_trigger_form_if_no_params"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", 
"num_recent_configurations_for_trigger"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "allowed_payload_size"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "max_form_memory_size"),
+        was_deprecated=False,
+    ),
+    ConfigChange(
+        config=ConfigParameter("webserver", "max_form_parts"),
+        was_deprecated=False,
+    ),
     # policy
     ConfigChange(
         config=ConfigParameter("policy", "airflow_local_settings"),
diff --git a/airflow-core/src/airflow/config_templates/config.yml 
b/airflow-core/src/airflow/config_templates/config.yml
index 4bc56d83e01..569c24adb2d 100644
--- a/airflow-core/src/airflow/config_templates/config.yml
+++ b/airflow-core/src/airflow/config_templates/config.yml
@@ -1720,38 +1720,6 @@ webserver:
       type: string
       example: securecookie
       default: database
-    web_server_master_timeout:
-      description: |
-        Number of seconds the webserver waits before killing gunicorn master 
that doesn't respond
-      version_added: ~
-      type: string
-      example: ~
-      default: "120"
-    worker_refresh_batch_size:
-      description: |
-        Number of workers to refresh at a time through Gunicorn's built-in 
worker management.
-        When set to 0, worker refresh is disabled. When nonzero, airflow 
periodically refreshes
-        webserver workers by bringing up new ones and killing old ones.
-      version_added: ~
-      type: string
-      example: ~
-      default: "1"
-    worker_refresh_interval:
-      description: |
-        Number of seconds to wait before refreshing a batch of workers.
-      version_added: ~
-      type: string
-      example: ~
-      default: "6000"
-    reload_on_plugin_change:
-      description: |
-        If set to ``True``, Airflow will track files in plugins_folder 
directory. When it detects changes,
-        then reload the gunicorn. If set to ``True``, gunicorn starts without 
preloading, which is slower,
-        uses more memory, and may cause race conditions. Avoid setting this to 
``True`` in production.
-      version_added: 1.10.11
-      type: boolean
-      example: ~
-      default: "False"
     secret_key:
       description: |
         Secret key used to run your flask app. It should be as random as 
possible. However, when running
@@ -1766,29 +1734,6 @@ webserver:
       sensitive: true
       example: ~
       default: "{SECRET_KEY}"
-    worker_class:
-      description: |
-        The worker class gunicorn should use. Choices include
-        ``sync`` (default), ``eventlet``, ``gevent``.
-
-        .. warning::
-
-            When using ``gevent`` you might also want to set the 
``_AIRFLOW_PATCH_GEVENT``
-            environment variable to ``"1"`` to make sure gevent patching is 
done as early as possible.
-
-            Be careful to set ``_AIRFLOW_PATCH_GEVENT`` only on the web server 
as gevent patching may
-            affect the scheduler behavior via the ``multiprocessing`` sockets 
module and cause crash.
-
-            See related Issues / PRs for more details:
-
-            * https://github.com/benoitc/gunicorn/issues/2796
-            * https://github.com/apache/airflow/issues/8212
-            * https://github.com/apache/airflow/pull/28283
-
-      version_added: ~
-      type: string
-      example: ~
-      default: "sync"
     expose_config:
       description: |
         Expose the configuration file in the web server. Set to 
``non-sensitive-only`` to show all values
@@ -1805,13 +1750,6 @@ webserver:
       type: string
       example: ~
       default: "False"
-    expose_stacktrace:
-      description: |
-        Expose stacktrace in the web server
-      version_added: 1.10.8
-      type: string
-      example: ~
-      default: "False"
     grid_view_sorting_order:
       description: |
         Sorting order in grid view. Valid values are: ``topological``, 
``hierarchical_alphabetical``
@@ -1827,27 +1765,6 @@ webserver:
       type: string
       example: ~
       default: "5"
-    log_fetch_delay_sec:
-      description: |
-        Time interval (in secs) to wait before next log fetching.
-      version_added: 1.10.8
-      type: integer
-      example: ~
-      default: "2"
-    log_auto_tailing_offset:
-      description: |
-        Distance away from page bottom to enable auto tailing.
-      version_added: 1.10.8
-      type: integer
-      example: ~
-      default: "30"
-    log_animation_speed:
-      description: |
-        Animation speed for auto tailing log display.
-      version_added: 1.10.8
-      type: integer
-      example: ~
-      default: "1000"
     hide_paused_dags_by_default:
       description: |
         By default, the webserver shows paused DAGs. Flip this to hide paused
@@ -1898,72 +1815,6 @@ webserver:
       type: string
       example: ~
       default: "#51504f"
-    default_dag_run_display_number:
-      description: |
-        Default dagrun to show in UI
-      version_added: ~
-      type: string
-      example: ~
-      default: "25"
-    enable_proxy_fix:
-      description: |
-        Enable werkzeug ``ProxyFix`` middleware for reverse proxy
-      version_added: 1.10.1
-      type: boolean
-      example: ~
-      default: "False"
-    proxy_fix_x_for:
-      description: |
-        Number of values to trust for ``X-Forwarded-For``.
-        See `Werkzeug: X-Forwarded-For Proxy Fix
-        
<https://werkzeug.palletsprojects.com/en/2.3.x/middleware/proxy_fix/>`__ for 
more details.
-      version_added: 1.10.7
-      type: integer
-      example: ~
-      default: "1"
-    proxy_fix_x_proto:
-      description: |
-        Number of values to trust for ``X-Forwarded-Proto``.
-        See `Werkzeug: X-Forwarded-For Proxy Fix
-        
<https://werkzeug.palletsprojects.com/en/2.3.x/middleware/proxy_fix/>`__ for 
more details.
-      version_added: 1.10.7
-      type: integer
-      example: ~
-      default: "1"
-    proxy_fix_x_host:
-      description: |
-        Number of values to trust for ``X-Forwarded-Host``.
-        See `Werkzeug: X-Forwarded-For Proxy Fix
-        
<https://werkzeug.palletsprojects.com/en/2.3.x/middleware/proxy_fix/>`__ for 
more details.
-      version_added: 1.10.7
-      type: integer
-      example: ~
-      default: "1"
-    proxy_fix_x_port:
-      description: |
-        Number of values to trust for ``X-Forwarded-Port``.
-        See `Werkzeug: X-Forwarded-For Proxy Fix
-        
<https://werkzeug.palletsprojects.com/en/2.3.x/middleware/proxy_fix/>`__ for 
more details.
-      version_added: 1.10.7
-      type: integer
-      example: ~
-      default: "1"
-    proxy_fix_x_prefix:
-      description: |
-        Number of values to trust for ``X-Forwarded-Prefix``.
-        See `Werkzeug: X-Forwarded-For Proxy Fix
-        
<https://werkzeug.palletsprojects.com/en/2.3.x/middleware/proxy_fix/>`__ for 
more details.
-      version_added: 1.10.7
-      type: integer
-      example: ~
-      default: "1"
-    cookie_secure:
-      description: |
-        Set secure flag on session cookie
-      version_added: 1.10.3
-      type: string
-      example: ~
-      default: "False"
     default_wrap:
       description: |
         Default setting for wrap toggle on DAG code and TI log views.
@@ -1978,35 +1829,6 @@ webserver:
       type: boolean
       example: ~
       default: "True"
-    analytics_tool:
-      description: |
-        Send anonymous user activity to your analytics tool
-        choose from ``google_analytics``, ``segment``, ``metarouter``, or 
``matomo``
-      version_added: ~
-      type: string
-      example: ~
-      default: ~
-    analytics_id:
-      description: |
-        Unique ID of your account in the analytics tool
-      version_added: 1.10.5
-      type: string
-      example: ~
-      default: ~
-    analytics_url:
-      description: |
-        Your instances url, only applicable to Matomo.
-      version_added: 2.9.0
-      type: string
-      example: https://your.matomo.instance.com/
-      default: ~
-    show_recent_stats_for_completed_runs:
-      description: |
-        'Recent Tasks' stats will show for old DagRuns if set
-      version_added: 2.0.0
-      type: boolean
-      example: ~
-      default: "True"
     session_lifetime_minutes:
       description: |
         The UI cookie lifetime in minutes. User will be logged out from UI 
after
@@ -2069,43 +1891,6 @@ webserver:
       type: boolean
       example: ~
       default: "True"
-    run_internal_api:
-      description: |
-        Boolean for running Internal API in the webserver.
-      version_added: 2.6.0
-      type: boolean
-      example: ~
-      default: "False"
-    caching_hash_method:
-      description: |
-        The caching algorithm used by the webserver. Must be a valid hashlib 
function name.
-      version_added: 2.6.0
-      type: string
-      example: "sha256"
-      default: "md5"
-    show_trigger_form_if_no_params:
-      description: |
-        Behavior of the trigger DAG run button for DAGs without params. 
``False`` to skip and trigger
-        without displaying a form to add a **dag_run.conf**, ``True`` to 
always display the form.
-        The form is displayed always if parameters are defined.
-      version_added: 2.7.0
-      type: boolean
-      example: ~
-      default: "False"
-    num_recent_configurations_for_trigger:
-      description: |
-        Number of recent DAG run configurations in the selector on the trigger 
web form.
-      version_added: 2.9.0
-      type: integer
-      example: "10"
-      default: "5"
-    allowed_payload_size:
-      description: |
-        The maximum size of the request payload (in MB) that can be sent.
-      version_added: 2.8.1
-      type: float
-      example: ~
-      default: "1.0"
     require_confirmation_dag_change:
       description: |
         Require confirmation when changing a DAG in the web UI. This is to 
prevent accidental changes
@@ -2116,22 +1901,6 @@ webserver:
       type: boolean
       example: ~
       default: "False"
-    max_form_memory_size:
-      description: |
-        The maximum size in bytes any non-file form field may be in a 
multipart/form-data body.
-        If this limit is exceeded, a 413 RequestEntityTooLarge error is raised 
by webserver.
-      version_added: 2.10.5
-      type: integer
-      example: ~
-      default: "500000"
-    max_form_parts:
-      description: |
-        The maximum number of fields that may be present in a 
multipart/form-data body.
-        If this limit is exceeded, a 413 RequestEntityTooLarge error is raised 
by webserver.
-      version_added: 2.10.5
-      type: integer
-      example: ~
-      default: "1000"
 email:
   description: |
     Configuration email backend and whether to
diff --git a/dev/breeze/src/airflow_breeze/commands/kubernetes_commands.py 
b/dev/breeze/src/airflow_breeze/commands/kubernetes_commands.py
index 2a573c8327d..c8685ed32db 100644
--- a/dev/breeze/src/airflow_breeze/commands/kubernetes_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/kubernetes_commands.py
@@ -603,7 +603,7 @@ COPY --chown=airflow:0 
airflow-core/src/airflow/example_dags/ /opt/airflow/dags/
 
 COPY --chown=airflow:0 
providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/kubernetes_executor_templates/
 /opt/airflow/pod_templates/
 
-ENV GUNICORN_CMD_ARGS='--preload' AIRFLOW__WEBSERVER__WORKER_REFRESH_INTERVAL=0
+ENV GUNICORN_CMD_ARGS='--preload'
 """
     image = f"{params.airflow_image_kubernetes}:latest"
     docker_build_result = run_command(
diff --git a/newsfragments/48066.significant.rst 
b/newsfragments/48066.significant.rst
new file mode 100644
index 00000000000..236b0437290
--- /dev/null
+++ b/newsfragments/48066.significant.rst
@@ -0,0 +1,78 @@
+Unused webserver configuration options have been removed
+
+The following configuration options are now unused and have been removed:
+
+- ``[webserver] web_server_master_timeout``
+- ``[webserver] worker_refresh_batch_size``
+- ``[webserver] worker_refresh_interval``
+- ``[webserver] reload_on_plugin_change``
+- ``[webserver] worker_class``
+- ``[webserver] expose_stacktrace``
+- ``[webserver] log_fetch_delay_sec``
+- ``[webserver] log_auto_tailing_offset``
+- ``[webserver] log_animation_speed``
+- ``[webserver] default_dag_run_display_number``
+- ``[webserver] enable_proxy_fix``
+- ``[webserver] proxy_fix_x_for``
+- ``[webserver] proxy_fix_x_proto``
+- ``[webserver] proxy_fix_x_host``
+- ``[webserver] proxy_fix_x_port``
+- ``[webserver] proxy_fix_x_prefix``
+- ``[webserver] cookie_secure``
+- ``[webserver] analytics_tool``
+- ``[webserver] analytics_id``
+- ``[webserver] analytics_url``
+- ``[webserver] show_recent_stats_for_completed_runs``
+- ``[webserver] run_internal_api``
+- ``[webserver] caching_hash_method``
+- ``[webserver] show_trigger_form_if_no_params``
+- ``[webserver] num_recent_configurations_for_trigger``
+- ``[webserver] allowed_payload_size``
+- ``[webserver] max_form_memory_size``
+- ``[webserver] max_form_parts``
+
+* Types of change
+
+  * [ ] Dag changes
+  * [x] Config changes
+  * [ ] API changes
+  * [ ] CLI changes
+  * [ ] Behaviour changes
+  * [ ] Plugin changes
+  * [ ] Dependency changes
+  * [ ] Code interface changes
+
+.. List the migration rules needed for this change (see 
https://github.com/apache/airflow/issues/41641)
+
+* Migration rules needed
+
+  * ``airflow config lint``
+
+    * [ ] Remove configuration option ``[webserver] web_server_master_timeout``
+    * [ ] Remove configuration option ``[webserver] worker_refresh_batch_size``
+    * [ ] Remove configuration option ``[webserver] worker_refresh_interval``
+    * [ ] Remove configuration option ``[webserver] reload_on_plugin_change``
+    * [ ] Remove configuration option ``[webserver] worker_class``
+    * [ ] Remove configuration option ``[webserver] expose_stacktrace``
+    * [ ] Remove configuration option ``[webserver] log_fetch_delay_sec``
+    * [ ] Remove configuration option ``[webserver] log_auto_tailing_offset``
+    * [ ] Remove configuration option ``[webserver] log_animation_speed``
+    * [ ] Remove configuration option ``[webserver] 
default_dag_run_display_number``
+    * [ ] Remove configuration option ``[webserver] enable_proxy_fix``
+    * [ ] Remove configuration option ``[webserver] proxy_fix_x_for``
+    * [ ] Remove configuration option ``[webserver] proxy_fix_x_proto``
+    * [ ] Remove configuration option ``[webserver] proxy_fix_x_host``
+    * [ ] Remove configuration option ``[webserver] proxy_fix_x_port``
+    * [ ] Remove configuration option ``[webserver] proxy_fix_x_prefix``
+    * [ ] Remove configuration option ``[webserver] cookie_secure``
+    * [ ] Remove configuration option ``[webserver] analytics_tool``
+    * [ ] Remove configuration option ``[webserver] analytics_id``
+    * [ ] Remove configuration option ``[webserver] analytics_url``
+    * [ ] Remove configuration option ``[webserver] 
show_recent_stats_for_completed_runs``
+    * [ ] Remove configuration option ``[webserver] run_internal_api``
+    * [ ] Remove configuration option ``[webserver] caching_hash_method``
+    * [ ] Remove configuration option ``[webserver] 
show_trigger_form_if_no_params``
+    * [ ] Remove configuration option ``[webserver] 
num_recent_configurations_for_trigger``
+    * [ ] Remove configuration option ``[webserver] allowed_payload_size``
+    * [ ] Remove configuration option ``[webserver] max_form_memory_size``
+    * [ ] Remove configuration option ``[webserver] max_form_parts``
diff --git a/providers/fab/tests/unit/fab/utils.py 
b/providers/fab/tests/unit/fab/utils.py
index ca78a5a4ab4..782bf23c276 100644
--- a/providers/fab/tests/unit/fab/utils.py
+++ b/providers/fab/tests/unit/fab/utils.py
@@ -219,9 +219,6 @@ class _TemplateWithContext(NamedTuple):
             "navbar_hover_color",
             "navbar_text_hover_color",
             "navbar_logo_text_color",
-            "log_fetch_delay_sec",
-            "log_auto_tailing_offset",
-            "log_animation_speed",
             "state_color_mapping",
             "airflow_version",
             "git_version",

Reply via email to