diff options
author | Pierre Sassoulas <pierre.sassoulas@gmail.com> | 2020-05-03 20:24:32 +0200 |
---|---|---|
committer | Pierre Sassoulas <pierre.sassoulas@gmail.com> | 2020-05-10 11:02:10 +0200 |
commit | 7831157f47800edc929be9b3c13f6d19f9a0645b (patch) | |
tree | d125b398b8d8aecfb4ba4b6fe92fceca7f2e3cdf | |
parent | 4756b3c611ef710c99b51d2fe5f04d72b28e75d6 (diff) | |
download | pylint-git-7831157f47800edc929be9b3c13f6d19f9a0645b.tar.gz |
The full version is a constant we can just import it
-rw-r--r-- | pylint/__pkginfo__.py | 1 | ||||
-rw-r--r-- | pylint/config/option_manager_mixin.py | 8 | ||||
-rw-r--r-- | pylint/config/option_parser.py | 5 | ||||
-rw-r--r-- | pylint/constants.py | 12 | ||||
-rw-r--r-- | pylint/lint/pylinter.py | 8 |
5 files changed, 21 insertions, 13 deletions
diff --git a/pylint/__pkginfo__.py b/pylint/__pkginfo__.py index 9bbd0ce31..f6660504f 100644 --- a/pylint/__pkginfo__.py +++ b/pylint/__pkginfo__.py @@ -25,6 +25,7 @@ # pylint: disable=redefined-builtin,invalid-name """pylint packaging information""" + from os.path import join # For an official release, use dev_version = None diff --git a/pylint/config/option_manager_mixin.py b/pylint/config/option_manager_mixin.py index 7ba99fa71..fafc3fd7d 100644 --- a/pylint/config/option_manager_mixin.py +++ b/pylint/config/option_manager_mixin.py @@ -55,9 +55,9 @@ def _patch_optparse(): class OptionsManagerMixIn: """Handle configuration from both a configuration file and command line options""" - def __init__(self, usage, config_file=None, version=None): + def __init__(self, usage, config_file=None): self.config_file = config_file - self.reset_parsers(usage, version=version) + self.reset_parsers(usage) # list of registered options providers self.options_providers = [] # dictionary associating option name to checker @@ -68,13 +68,13 @@ class OptionsManagerMixIn: # verbosity self._maxlevel = 0 - def reset_parsers(self, usage="", version=None): + def reset_parsers(self, usage=""): # configuration file parser self.cfgfile_parser = configparser.ConfigParser( inline_comment_prefixes=("#", ";") ) # command line parser - self.cmdline_parser = OptionParser(Option, usage=usage, version=version) + self.cmdline_parser = OptionParser(Option, usage=usage) self.cmdline_parser.options_manager = self self._optik_option_attrs = set(self.cmdline_parser.option_class.ATTRS) diff --git a/pylint/config/option_parser.py b/pylint/config/option_parser.py index 36ebbe5fa..266631403 100644 --- a/pylint/config/option_parser.py +++ b/pylint/config/option_parser.py @@ -4,6 +4,7 @@ import optparse from pylint.config.option import Option +from pylint.constants import full_version def _level_options(group, outputlevel): @@ -17,7 +18,9 @@ def _level_options(group, outputlevel): class OptionParser(optparse.OptionParser): def __init__(self, option_class, *args, **kwargs): - optparse.OptionParser.__init__(self, option_class=Option, *args, **kwargs) + optparse.OptionParser.__init__( + self, option_class=Option, *args, version=full_version, **kwargs + ) def format_option_help(self, formatter=None): if formatter is None: diff --git a/pylint/constants.py b/pylint/constants.py index 726643718..d3a0392df 100644 --- a/pylint/constants.py +++ b/pylint/constants.py @@ -2,6 +2,11 @@ # For details: https://github.com/PyCQA/pylint/blob/master/COPYING import re +import sys + +from astroid.__pkginfo__ import version as astroid_version + +from pylint.__pkginfo__ import version as pylint_version # Allow stopping after the first semicolon/hash encountered, # so that an option can be continued with the reasons @@ -39,3 +44,10 @@ MAIN_CHECKER_NAME = "master" class WarningScope: LINE = "line-based-msg" NODE = "node-based-msg" + + +full_version = "pylint %s\nastroid %s\nPython %s" % ( + pylint_version, + astroid_version, + sys.version, +) diff --git a/pylint/lint/pylinter.py b/pylint/lint/pylinter.py index eafd7216d..56eb93c42 100644 --- a/pylint/lint/pylinter.py +++ b/pylint/lint/pylinter.py @@ -14,11 +14,9 @@ from io import TextIOWrapper import astroid from astroid import modutils -from astroid.__pkginfo__ import version as astroid_version from astroid.builder import AstroidBuilder from pylint import checkers, config, exceptions, interfaces, reporters -from pylint.__pkginfo__ import version from pylint.constants import MAIN_CHECKER_NAME, MSG_TYPES from pylint.lint.check_parallel import check_parallel from pylint.lint.report_functions import ( @@ -448,16 +446,10 @@ class PyLinter( "disable-msg": self.disable, "enable-msg": self.enable, } - full_version = "pylint %s\nastroid %s\nPython %s" % ( - version, - astroid_version, - sys.version, - ) MessagesHandlerMixIn.__init__(self) reporters.ReportsHandlerMixIn.__init__(self) super().__init__( usage=__doc__, - version=full_version, config_file=pylintrc or next(config.find_default_config_files(), None), ) checkers.BaseTokenChecker.__init__(self) |