浏览代码

Avoid `set_log_level` foot gun (#4422)

Masen Furer 5 月之前
父节点
当前提交
000938414f
共有 1 个文件被更改,包括 15 次插入0 次删除
  1. 15 0
      reflex/utils/console.py

+ 15 - 0
reflex/utils/console.py

@@ -26,7 +26,22 @@ def set_log_level(log_level: LogLevel):
 
     Args:
         log_level: The log level to set.
+
+    Raises:
+        ValueError: If the log level is invalid.
     """
+    if not isinstance(log_level, LogLevel):
+        deprecate(
+            feature_name="Passing a string to set_log_level",
+            reason="use reflex.constants.LogLevel enum instead",
+            deprecation_version="0.6.6",
+            removal_version="0.7.0",
+        )
+        try:
+            log_level = getattr(LogLevel, log_level.upper())
+        except AttributeError as ae:
+            raise ValueError(f"Invalid log level: {log_level}") from ae
+
     global _LOG_LEVEL
     _LOG_LEVEL = log_level