Tree: Update to cleanup globals

Use the module singleton pattern to share global state. This can also
be a modified version of the Global Object Pattern. The main reason
this pattern is used is for ease of use when handling global state
rather than adding extra dependencies for a DI parameter.

Signed-off-by: kingbri <bdashore3@proton.me>
This commit is contained in:
kingbri
2024-03-09 22:31:47 -05:00
committed by Brian Dashore
parent b373b25235
commit 5a2de30066
7 changed files with 68 additions and 82 deletions

View File

@@ -6,15 +6,15 @@ from loguru import logger
from typing import Dict, Optional
class LogPreferences(BaseModel):
class GenLogPreferences(BaseModel):
"""Logging preference config."""
prompt: bool = False
generation_params: bool = False
# Global reference to logging preferences
PREFERENCES = LogPreferences()
# Global logging preferences constant
PREFERENCES = GenLogPreferences()
def update_from_dict(options_dict: Dict[str, bool]):
@@ -26,7 +26,7 @@ def update_from_dict(options_dict: Dict[str, bool]):
if value is None:
value = False
PREFERENCES = LogPreferences.model_validate(options_dict)
PREFERENCES = GenLogPreferences.model_validate(options_dict)
def broadcast_status():