diff options
| author | Anthony Sottile <asottile@umich.edu> | 2021-12-07 15:28:58 -0800 |
|---|---|---|
| committer | Anthony Sottile <asottile@umich.edu> | 2021-12-07 15:28:58 -0800 |
| commit | 3fa044ca4b0862126e7718698aa72d1cc1ca890d (patch) | |
| tree | d343580fb09b9e3c7907a4d4a76c2971d44df09a | |
| parent | 1587936e2a1448710f3e44877cb5d44dcad7c6ac (diff) | |
| download | flake8-3fa044ca4b0862126e7718698aa72d1cc1ca890d.tar.gz | |
return an argparser instead of side-effects
| -rw-r--r-- | src/flake8/main/application.py | 3 | ||||
| -rw-r--r-- | src/flake8/main/options.py | 16 |
2 files changed, 10 insertions, 9 deletions
diff --git a/src/flake8/main/application.py b/src/flake8/main/application.py index 77f25d4..9d4ff27 100644 --- a/src/flake8/main/application.py +++ b/src/flake8/main/application.py @@ -55,8 +55,7 @@ class Application: self.version = version #: The prelimary argument parser for handling options required for #: obtaining and parsing the configuration file. - self.prelim_arg_parser = argparse.ArgumentParser(add_help=False) - options.register_preliminary_options(self.prelim_arg_parser) + self.prelim_arg_parser = options.stage1_arg_parser() #: The instance of :class:`flake8.options.manager.OptionManager` used #: to parse and handle the options and arguments passed by the user self.option_manager = manager.OptionManager( diff --git a/src/flake8/main/options.py b/src/flake8/main/options.py index a73a9ee..9c23d64 100644 --- a/src/flake8/main/options.py +++ b/src/flake8/main/options.py @@ -5,7 +5,7 @@ from flake8 import defaults from flake8.options.manager import OptionManager -def register_preliminary_options(parser: argparse.ArgumentParser) -> None: +def stage1_arg_parser() -> argparse.ArgumentParser: """Register the preliminary options on our OptionManager. The preliminary options include: @@ -16,9 +16,9 @@ def register_preliminary_options(parser: argparse.ArgumentParser) -> None: - ``--config`` - ``--isolated`` """ - add_argument = parser.add_argument + parser = argparse.ArgumentParser(add_help=False) - add_argument( + parser.add_argument( "-v", "--verbose", default=0, @@ -28,13 +28,13 @@ def register_preliminary_options(parser: argparse.ArgumentParser) -> None: "time it is repeated.", ) - add_argument( + parser.add_argument( "--output-file", default=None, help="Redirect report to a file." ) # Config file options - add_argument( + parser.add_argument( "--append-config", action="append", default=[], @@ -44,7 +44,7 @@ def register_preliminary_options(parser: argparse.ArgumentParser) -> None: "provide the same option.", ) - add_argument( + parser.add_argument( "--config", default=None, help="Path to the config file that will be the authoritative config " @@ -52,13 +52,15 @@ def register_preliminary_options(parser: argparse.ArgumentParser) -> None: "configuration files.", ) - add_argument( + parser.add_argument( "--isolated", default=False, action="store_true", help="Ignore all configuration files.", ) + return parser + class JobsArgument: """Type callback for the --jobs argument.""" |
