Files
OpenBB/openbb_terminal/config_terminal.py
Henrique Joaquim 13a91af400 Remove references to environment variables (#4633)
* removing references to test_mode as env variable

* removing references to os.getenv

* adding functions to change system properties

* removing references to env

* introducing set_system_variable and removing change_logging_suppress function

* removing change_test_mode and change_debug_mode

* removing change_log_collect

* adjusting config_terminal and generate_sdk

* generating the sdk

* removing unused imoports

* introducing DISABLE_STREAMLIT_WARNING

* removing load_env_vars

* test_print_help test

* sync tests

* rewrite tests

* setting the auth to True as default

---------

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
2023-04-03 16:22:41 +00:00

96 lines
2.6 KiB
Python

# IMPORTATION STANDARD
from pathlib import Path
# IMPORTATION THIRDPARTY
from typing import Optional
import i18n
# IMPORTATION INTERNAL
from openbb_terminal.base_helpers import load_env_files
from openbb_terminal.core.config.paths import I18N_DICT_LOCATION
from openbb_terminal.core.config.paths_helper import init_userdata
from openbb_terminal.core.plots.backend import plots_backend
from openbb_terminal.core.session.current_system import (
get_current_system,
set_system_variable,
)
from openbb_terminal.core.session.current_user import get_current_user
from .helper_classes import TerminalStyle as _TerminalStyle
def start_plot_backend():
"""Starts the plot backend"""
plots_backend().start(get_current_system().DEBUG_MODE)
def setup_i18n(i18n_path: Path = I18N_DICT_LOCATION):
"""Select the terminal translation language."""
i18n.load_path.append(i18n_path)
i18n.set("locale", get_current_user().preferences.USE_LANGUAGE)
i18n.set("filename_format", "{locale}.{format}")
def setup_version():
"""Setup the version of the terminal"""
def try_get_version_from_dist() -> Optional[str]:
def check_using_git():
try:
__import__("git")
except ImportError:
return False
return True
if not check_using_git():
try:
import pkg_resources # pylint:disable=import-outside-toplevel
return pkg_resources.get_distribution("OpenBB").version
except Exception:
pass
return None
version = try_get_version_from_dist()
if version:
set_system_variable("VERSION", version)
def setup_logging_app_name():
"""
Setup the logging app name of the terminal
- if there's a LOGGING_APP_NAME in the environment => use it
- if "site-packages" in __file__ => use "gst_packaged_pypi" (will override environment variable)
- if none of the above => use "gst" (which is the default value on the SystemModel)
"""
if "site-packages" in __file__:
set_system_variable("LOGGING_APP_NAME", "gst_packaged_pypi")
def setup_config_terminal(is_sdk: bool = False):
"""Setup the config terminal"""
load_env_files()
init_userdata()
# To avoid starting plots backend twice
if is_sdk:
start_plot_backend()
setup_i18n()
setup_version()
setup_logging_app_name()
# Terminal UX section
current_user = get_current_user()
theme = _TerminalStyle(
current_user.preferences.MPL_STYLE,
current_user.preferences.PMF_STYLE,
current_user.preferences.RICH_STYLE,
)