diff options
| author | Anthony Sottile <asottile@umich.edu> | 2019-08-31 04:15:30 +0000 |
|---|---|---|
| committer | Anthony Sottile <asottile@umich.edu> | 2019-08-31 04:15:30 +0000 |
| commit | 8cd1e0ecc7b137ce9d6aaf074a5f93024269174d (patch) | |
| tree | b8007cd8068739a67f84fbd6eb9d52d3916574dd /src | |
| parent | eee53d9440743a81a5e16b5f75da39832ee3e5ff (diff) | |
| parent | aadd09dd8bd91092b22b24b860d4ff2476313b1c (diff) | |
| download | flake8-8cd1e0ecc7b137ce9d6aaf074a5f93024269174d.tar.gz | |
Merge branch 'optmgr-parse-args-default-values' into 'master'
Set configuration file-provided values via ArgumentParser.set_defaults()
See merge request pycqa/flake8!350
Diffstat (limited to 'src')
| -rw-r--r-- | src/flake8/options/manager.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/flake8/options/manager.py b/src/flake8/options/manager.py index a5e5906..f745388 100644 --- a/src/flake8/options/manager.py +++ b/src/flake8/options/manager.py @@ -425,13 +425,23 @@ class OptionManager(object): plugin_version_format ) - def parse_args(self, args=None, values=None): + def parse_args( + self, + args=None, # type: Optional[List[str]] + values=None, # type: Optional[argparse.Namespace] + ): + # type: (...) -> Tuple[argparse.Namespace, List[str]] """Proxy to calling the OptionParser's parse_args method.""" self.generate_epilog() self.update_version_string() - args = self.parser.parse_args(args, values) + assert isinstance( # nosec (for bandit) + self.parser, argparse.ArgumentParser + ), self.parser + if values: + self.parser.set_defaults(**vars(values)) + parsed_args = self.parser.parse_args(args) # TODO: refactor callers to not need this - return args, args.filenames + return parsed_args, parsed_args.filenames def parse_known_args(self, args=None): # type: (Optional[List[str]]) -> Tuple[argparse.Namespace, List[str]] |
