diff options
author | Henrique Joaquim <henriquecjoaquim@gmail.com> | 2024-04-29 11:52:38 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-29 10:52:38 +0000 |
commit | a502766d0180c8bb43f05725a6dca8fbea0c4ac6 (patch) | |
tree | b35d350b62a8ae401f176c5d29b69dd175a6b8ff | |
parent | efe77be527ee2c530ec492b6d89a475d5090d434 (diff) |
provider parameters were being removed bc not in signature (#6348)
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
-rw-r--r-- | openbb_terminal/openbb_terminal/argparse_translator/argparse_translator.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/openbb_terminal/openbb_terminal/argparse_translator/argparse_translator.py b/openbb_terminal/openbb_terminal/argparse_translator/argparse_translator.py index b08ebfa2845..45fa4ce5d6b 100644 --- a/openbb_terminal/openbb_terminal/argparse_translator/argparse_translator.py +++ b/openbb_terminal/openbb_terminal/argparse_translator/argparse_translator.py @@ -200,6 +200,7 @@ class ArgparseTranslator: self.func = func self.signature = inspect.signature(func) self.type_hints = get_type_hints(func) + self.provider_parameters = [] self._parser = argparse.ArgumentParser( prog=func.__name__, @@ -221,6 +222,7 @@ class ArgparseTranslator: # If the argument is already in use, we can't repeat it if f"--{argument.name}" not in self._parser_arguments(): argparse_group.add_argument(f"--{argument.name}", **kwargs) + self.provider_parameters.append(argument.name) def _parser_arguments(self) -> List[str]: """Get all the arguments from all groups currently defined on the parser.""" @@ -495,11 +497,11 @@ class ArgparseTranslator: kwargs = self._unflatten_args(vars(parsed_args)) kwargs = self._update_with_custom_types(kwargs) - # remove kwargs that doesn't match the signature + # remove kwargs that doesn't match the signature or provider parameters kwargs = { key: value for key, value in kwargs.items() - if key in self.signature.parameters + if key in self.signature.parameters or key in self.provider_parameters } return self.func(**kwargs) |