diff --git a/cli/openbb_cli/controllers/utils.py b/cli/openbb_cli/controllers/utils.py index 0a1bac727b2..1bec8bad1fe 100644 --- a/cli/openbb_cli/controllers/utils.py +++ b/cli/openbb_cli/controllers/utils.py @@ -1,6 +1,7 @@ """Utils.""" import argparse +import ast import os import random import re @@ -920,13 +921,11 @@ def parse_unknown_args_to_dict(unknown_args: list[str] | None) -> dict[str, str] if arg.startswith("--"): if idx + 1 < len(unknown_args): try: - unknown_args_dict[arg.replace("--", "")] = ( - eval( # noqa: S307, E501 pylint: disable=eval-used - unknown_args[idx + 1] - ) + unknown_args_dict[arg.replace("--", "")] = ast.literal_eval( + unknown_args[idx + 1] ) - except Exception: - unknown_args_dict[arg] = unknown_args[idx + 1] + except (ValueError, SyntaxError): + unknown_args_dict[arg.replace("--", "")] = unknown_args[idx + 1] else: session.console.print( f"Missing value for argument {arg}. Skipping this argument."