From e9e50076e6439c660f4bae2c8c10f68b68346782 Mon Sep 17 00:00:00 2001 From: dirrao Date: Sat, 17 Aug 2024 10:21:40 +0530 Subject: [PATCH 1/5] airflow deprecated settings session_lifetime_days, force_log_out_after and policy removal --- airflow/settings.py | 30 +----------------------------- tests/core/test_settings.py | 18 ++++++------------ 2 files changed, 7 insertions(+), 41 deletions(-) diff --git a/airflow/settings.py b/airflow/settings.py index c780ccd6c5d0b..49385dcd0652c 100644 --- a/airflow/settings.py +++ b/airflow/settings.py @@ -36,7 +36,7 @@ from airflow import __version__ as airflow_version, policies from airflow.configuration import AIRFLOW_HOME, WEBSERVER_CONFIG, conf # noqa: F401 -from airflow.exceptions import AirflowInternalRuntimeError, RemovedInAirflow3Warning +from airflow.exceptions import AirflowInternalRuntimeError from airflow.executors import executor_constants from airflow.logging_config import configure_logging from airflow.utils.orm_event_handlers import setup_event_handlers @@ -671,25 +671,7 @@ def prepare_syspath(): def get_session_lifetime_config(): """Get session timeout configs and handle outdated configs gracefully.""" session_lifetime_minutes = conf.get("webserver", "session_lifetime_minutes", fallback=None) - session_lifetime_days = conf.get("webserver", "session_lifetime_days", fallback=None) - uses_deprecated_lifetime_configs = session_lifetime_days or conf.get( - "webserver", "force_log_out_after", fallback=None - ) - minutes_per_day = 24 * 60 - default_lifetime_minutes = "43200" - if uses_deprecated_lifetime_configs and session_lifetime_minutes == default_lifetime_minutes: - warnings.warn( - "`session_lifetime_days` option from `[webserver]` section has been " - "renamed to `session_lifetime_minutes`. The new option allows to configure " - "session lifetime in minutes. The `force_log_out_after` option has been removed " - "from `[webserver]` section. Please update your configuration.", - category=RemovedInAirflow3Warning, - stacklevel=2, - ) - if session_lifetime_days: - session_lifetime_minutes = minutes_per_day * int(session_lifetime_days) - if not session_lifetime_minutes: session_lifetime_days = 30 session_lifetime_minutes = minutes_per_day * session_lifetime_days @@ -721,16 +703,6 @@ def import_local_settings(): else: names = {n for n in airflow_local_settings.__dict__ if not n.startswith("__")} - if "policy" in names and "task_policy" not in names: - warnings.warn( - "Using `policy` in airflow_local_settings.py is deprecated. " - "Please rename your `policy` to `task_policy`.", - RemovedInAirflow3Warning, - stacklevel=2, - ) - setattr(airflow_local_settings, "task_policy", airflow_local_settings.policy) - names.remove("policy") - plugin_functions = policies.make_plugin_from_local_settings( POLICY_PLUGIN_MANAGER, airflow_local_settings, names ) diff --git a/tests/core/test_settings.py b/tests/core/test_settings.py index d05344bfa91d8..c463b77132a39 100644 --- a/tests/core/test_settings.py +++ b/tests/core/test_settings.py @@ -213,21 +213,15 @@ def test_custom_policy(self): class TestUpdatedConfigNames: - @conf_vars( - {("webserver", "session_lifetime_days"): "5", ("webserver", "session_lifetime_minutes"): "43200"} - ) - def test_updates_deprecated_session_timeout_config_val_when_new_config_val_is_default(self): + @conf_vars({("webserver", "session_lifetime_minutes"): "43200"}) + def test_config_val_is_default(self): from airflow import settings - with pytest.warns(DeprecationWarning): - session_lifetime_config = settings.get_session_lifetime_config() - minutes_in_five_days = 5 * 24 * 60 - assert session_lifetime_config == minutes_in_five_days + session_lifetime_config = settings.get_session_lifetime_config() + assert session_lifetime_config == 43200 - @conf_vars( - {("webserver", "session_lifetime_days"): "5", ("webserver", "session_lifetime_minutes"): "43201"} - ) - def test_uses_updated_session_timeout_config_when_val_is_not_default(self): + @conf_vars({("webserver", "session_lifetime_minutes"): "43201"}) + def test_config_val_is_not_default(self): from airflow import settings session_lifetime_config = settings.get_session_lifetime_config() From 67b197b56ea2c4311acd9d4e63589fc0853b6ce1 Mon Sep 17 00:00:00 2001 From: dirrao Date: Sat, 17 Aug 2024 10:59:13 +0530 Subject: [PATCH 2/5] news fragment added --- newsfragments/41550.significant.rst | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 newsfragments/41550.significant.rst diff --git a/newsfragments/41550.significant.rst b/newsfragments/41550.significant.rst new file mode 100644 index 0000000000000..fc88f493de279 --- /dev/null +++ b/newsfragments/41550.significant.rst @@ -0,0 +1,2 @@ +Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters from ```webserver` section. Please use ``session_lifetime_minutes``. +Removed deprecated ``policy`` parameter from ``airflow_local_settings``. Please use ``task_policy``. From 7138c3acec16d08ac361227918ee7a9f62bb176c Mon Sep 17 00:00:00 2001 From: dirrao Date: Sat, 17 Aug 2024 12:39:29 +0530 Subject: [PATCH 3/5] news fragment updated --- newsfragments/41550.significant.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/newsfragments/41550.significant.rst b/newsfragments/41550.significant.rst index fc88f493de279..acd683226dea9 100644 --- a/newsfragments/41550.significant.rst +++ b/newsfragments/41550.significant.rst @@ -1,2 +1,3 @@ -Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters from ```webserver` section. Please use ``session_lifetime_minutes``. +Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters +from ```webserver` section. Please use ``session_lifetime_minutes``. Removed deprecated ``policy`` parameter from ``airflow_local_settings``. Please use ``task_policy``. From 1e660d53e8a21b6c1eddfd120c6a9e129acb73e2 Mon Sep 17 00:00:00 2001 From: dirrao Date: Sat, 17 Aug 2024 14:15:06 +0530 Subject: [PATCH 4/5] news fragment updated --- newsfragments/41550.significant.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/newsfragments/41550.significant.rst b/newsfragments/41550.significant.rst index acd683226dea9..66c4c3dd5df63 100644 --- a/newsfragments/41550.significant.rst +++ b/newsfragments/41550.significant.rst @@ -1,3 +1,3 @@ -Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters -from ```webserver` section. Please use ``session_lifetime_minutes``. +Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters from ```webserver` section. Please use ``session_lifetime_minutes``. + Removed deprecated ``policy`` parameter from ``airflow_local_settings``. Please use ``task_policy``. From 1be834f31de834c6ddffe43285fa835cf524679d Mon Sep 17 00:00:00 2001 From: dirrao Date: Sat, 17 Aug 2024 15:03:59 +0530 Subject: [PATCH 5/5] news fragment updated --- newsfragments/41550.significant.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/newsfragments/41550.significant.rst b/newsfragments/41550.significant.rst index 66c4c3dd5df63..7589419f12275 100644 --- a/newsfragments/41550.significant.rst +++ b/newsfragments/41550.significant.rst @@ -1,3 +1,3 @@ -Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters from ```webserver` section. Please use ``session_lifetime_minutes``. +Removed deprecated ``session_lifetime_days`` and ``force_log_out_after`` configuration parameters from ``webserver`` section. Please use ``session_lifetime_minutes``. Removed deprecated ``policy`` parameter from ``airflow_local_settings``. Please use ``task_policy``.