diff options
Diffstat (limited to 'pylint')
-rw-r--r-- | pylint/checkers/classes.py | 5 | ||||
-rw-r--r-- | pylint/checkers/exceptions.py | 4 | ||||
-rw-r--r-- | pylint/checkers/imports.py | 7 | ||||
-rw-r--r-- | pylint/checkers/logging.py | 3 | ||||
-rw-r--r-- | pylint/checkers/misc.py | 3 | ||||
-rw-r--r-- | pylint/checkers/similar.py | 6 | ||||
-rw-r--r-- | pylint/checkers/spelling.py | 18 | ||||
-rw-r--r-- | pylint/checkers/stdlib.py | 4 | ||||
-rw-r--r-- | pylint/checkers/strings.py | 7 | ||||
-rw-r--r-- | pylint/checkers/typecheck.py | 3 | ||||
-rw-r--r-- | pylint/checkers/utils.py | 5 | ||||
-rw-r--r-- | pylint/checkers/variables.py | 4 | ||||
-rwxr-xr-x | pylint/epylint.py | 2 | ||||
-rw-r--r-- | pylint/lint.py | 4 | ||||
-rw-r--r-- | pylint/test/functional/ungrouped_imports.py | 2 | ||||
-rw-r--r-- | pylint/test/functional/wrong_import_order.py | 3 | ||||
-rw-r--r-- | pylint/test/functional/wrong_import_order.txt | 1 | ||||
-rw-r--r-- | pylint/test/functional/wrong_import_position.py | 2 | ||||
-rw-r--r-- | pylint/testutils.py | 11 | ||||
-rw-r--r-- | pylint/utils.py | 2 |
20 files changed, 51 insertions, 45 deletions
diff --git a/pylint/checkers/classes.py b/pylint/checkers/classes.py index e79cf9724..3494d2b33 100644 --- a/pylint/checkers/classes.py +++ b/pylint/checkers/classes.py @@ -20,12 +20,13 @@ from __future__ import generators import sys from collections import defaultdict +import six + import astroid from astroid.bases import Generator, BUILTINS from astroid.exceptions import InconsistentMroError, DuplicateBasesError from astroid import objects from astroid.scoped_nodes import function_to_method - from pylint.interfaces import IAstroidChecker from pylint.checkers import BaseChecker from pylint.checkers.utils import ( @@ -36,7 +37,7 @@ from pylint.checkers.utils import ( decorated_with, class_is_abstract, safe_infer, has_known_bases) from pylint.utils import deprecated_option, get_global_option -import six + if sys.version_info >= (3, 0): NEXT_METHOD = '__next__' diff --git a/pylint/checkers/exceptions.py b/pylint/checkers/exceptions.py index b66ff8dce..4cf562923 100644 --- a/pylint/checkers/exceptions.py +++ b/pylint/checkers/exceptions.py @@ -17,10 +17,10 @@ import inspect import sys -import astroid -from six.moves import builtins import six +from six.moves import builtins +import astroid from pylint.checkers import BaseChecker from pylint.checkers.utils import ( is_raising, diff --git a/pylint/checkers/imports.py b/pylint/checkers/imports.py index dae9b8057..bc8efa1b3 100644 --- a/pylint/checkers/imports.py +++ b/pylint/checkers/imports.py @@ -397,6 +397,11 @@ given file (report RP0402 must not be disabled)'} extern_imports = [] local_imports = [] std_imports = [] + stdlib_paths = [sys.prefix, self.ext_lib_dir] + real_prefix = getattr(sys, 'real_prefix', None) + if real_prefix is not None: + stdlib_paths.append(real_prefix) + for node, modname in self._imports_stack: package = modname.split('.')[0] if is_standard_module(modname): @@ -417,7 +422,7 @@ given file (report RP0402 must not be disabled)'} local_imports.append((node, package)) continue filename = os.path.normcase(os.path.abspath(filename)) - if not filename.startswith(self.ext_lib_dir): + if not any(filename.startswith(path) for path in stdlib_paths): local_imports.append((node, package)) continue extern_imports.append((node, package)) diff --git a/pylint/checkers/logging.py b/pylint/checkers/logging.py index a5b1edf9a..d20ff3ed4 100644 --- a/pylint/checkers/logging.py +++ b/pylint/checkers/logging.py @@ -14,6 +14,8 @@ """checker for use of Python logging """ +import six + import astroid from pylint import checkers @@ -21,7 +23,6 @@ from pylint import interfaces from pylint.checkers import utils from pylint.checkers.utils import check_messages -import six MSGS = { diff --git a/pylint/checkers/misc.py b/pylint/checkers/misc.py index 7fbe70bf3..e01dfcb62 100644 --- a/pylint/checkers/misc.py +++ b/pylint/checkers/misc.py @@ -19,9 +19,10 @@ Check source code is ascii only or has an encoding declaration (PEP 263) import re +import six + from pylint.interfaces import IRawChecker from pylint.checkers import BaseChecker -import six MSGS = { diff --git a/pylint/checkers/similar.py b/pylint/checkers/similar.py index 859a04be1..fe0d90567 100644 --- a/pylint/checkers/similar.py +++ b/pylint/checkers/similar.py @@ -20,13 +20,13 @@ from __future__ import print_function import sys from collections import defaultdict +import six +from six.moves import zip + from pylint.interfaces import IRawChecker from pylint.checkers import BaseChecker, table_lines_from_stats from pylint.reporters.ureports.nodes import Table -import six -from six.moves import zip - class Similar(object): """finds copy-pasted lines of code in a project""" diff --git a/pylint/checkers/spelling.py b/pylint/checkers/spelling.py index 725f25aa5..9495f4d38 100644 --- a/pylint/checkers/spelling.py +++ b/pylint/checkers/spelling.py @@ -21,21 +21,20 @@ import tokenize import string import re +try: + import enchant +except ImportError: + enchant = None import six -if sys.version_info[0] >= 3: - maketrans = str.maketrans -else: - maketrans = string.maketrans - from pylint.interfaces import ITokenChecker, IAstroidChecker from pylint.checkers import BaseTokenChecker from pylint.checkers.utils import check_messages -try: - import enchant -except ImportError: - enchant = None +if sys.version_info[0] >= 3: + maketrans = str.maketrans +else: + maketrans = string.maketrans if enchant is not None: br = enchant.Broker() @@ -51,6 +50,7 @@ else: table = maketrans("", "") + class SpellingChecker(BaseTokenChecker): """Check spelling in comments and docstrings""" __implements__ = (ITokenChecker, IAstroidChecker) diff --git a/pylint/checkers/stdlib.py b/pylint/checkers/stdlib.py index 61df66043..afb45419a 100644 --- a/pylint/checkers/stdlib.py +++ b/pylint/checkers/stdlib.py @@ -15,12 +15,12 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. """Checkers for various standard library functions.""" -import six import sys +import six + import astroid from astroid.bases import Instance - from pylint.interfaces import IAstroidChecker from pylint.checkers import BaseChecker from pylint.checkers import utils diff --git a/pylint/checkers/strings.py b/pylint/checkers/strings.py index 31f025db5..8e5431843 100644 --- a/pylint/checkers/strings.py +++ b/pylint/checkers/strings.py @@ -23,15 +23,14 @@ import tokenize import string import numbers -import astroid +import six +import astroid from pylint.interfaces import ITokenChecker, IAstroidChecker, IRawChecker from pylint.checkers import BaseChecker, BaseTokenChecker from pylint.checkers import utils from pylint.checkers.utils import check_messages -import six - _PY3K = sys.version_info[:2] >= (3, 0) _PY27 = sys.version_info[:2] == (2, 7) @@ -119,7 +118,7 @@ OTHER_NODES = (astroid.Const, astroid.List, astroid.Repr, astroid.ListComp, astroid.SetComp, astroid.GeneratorExp) if _PY3K: - import _string + import _string # pylint: disable=wrong-import-position, wrong-import-order def split_format_field_names(format_string): return _string.formatter_field_name_split(format_string) diff --git a/pylint/checkers/typecheck.py b/pylint/checkers/typecheck.py index e5f60d607..43b0bde4d 100644 --- a/pylint/checkers/typecheck.py +++ b/pylint/checkers/typecheck.py @@ -22,13 +22,14 @@ import re import shlex import sys +import six + import astroid import astroid.context import astroid.arguments from astroid import exceptions from astroid import objects from astroid import bases -import six from pylint.interfaces import IAstroidChecker, INFERENCE, INFERENCE_FAILURE from pylint.checkers import BaseChecker diff --git a/pylint/checkers/utils.py b/pylint/checkers/utils.py index cfb20d798..035e59122 100644 --- a/pylint/checkers/utils.py +++ b/pylint/checkers/utils.py @@ -23,11 +23,12 @@ import sys import string import warnings -import astroid -from astroid import scoped_nodes import six from six.moves import map, builtins # pylint: disable=redefined-builtin +import astroid +from astroid import scoped_nodes + BUILTINS_NAME = builtins.__name__ COMP_NODE_TYPES = (astroid.ListComp, astroid.SetComp, astroid.DictComp, astroid.GeneratorExp) diff --git a/pylint/checkers/variables.py b/pylint/checkers/variables.py index cde66eb5f..7629a7bb7 100644 --- a/pylint/checkers/variables.py +++ b/pylint/checkers/variables.py @@ -20,9 +20,10 @@ import sys import re from copy import copy +import six + import astroid from astroid import modutils - from pylint.interfaces import IAstroidChecker, INFERENCE, INFERENCE_FAILURE, HIGH from pylint.utils import get_global_option from pylint.checkers import BaseChecker @@ -33,7 +34,6 @@ from pylint.checkers.utils import ( get_all_elements, has_known_bases, node_ignores_exception, is_inside_abstract_class, is_comprehension, is_iterable, safe_infer) -import six SPECIAL_OBJ = re.compile("^_{2}[a-z]+_{2}$") FUTURE = '__future__' diff --git a/pylint/epylint.py b/pylint/epylint.py index be2ec5f6d..12127e0cc 100755 --- a/pylint/epylint.py +++ b/pylint/epylint.py @@ -49,8 +49,8 @@ its output. from __future__ import print_function import os -import sys import os.path as osp +import sys from subprocess import Popen, PIPE def _get_env(): diff --git a/pylint/lint.py b/pylint/lint.py index d1e39b242..7d08a76ad 100644 --- a/pylint/lint.py +++ b/pylint/lint.py @@ -39,11 +39,11 @@ import sys import tokenize import warnings +import six + import astroid from astroid.__pkginfo__ import version as astroid_version from astroid import modutils -import six - from pylint import checkers from pylint import interfaces from pylint import reporters diff --git a/pylint/test/functional/ungrouped_imports.py b/pylint/test/functional/ungrouped_imports.py index 9626062e8..2204c8031 100644 --- a/pylint/test/functional/ungrouped_imports.py +++ b/pylint/test/functional/ungrouped_imports.py @@ -1,6 +1,6 @@ """Checks import order rule""" # pylint: disable=unused-import,relative-import,wrong-import-order,using-constant-test - +# pylint: disable=import-error import six import logging.config import os.path diff --git a/pylint/test/functional/wrong_import_order.py b/pylint/test/functional/wrong_import_order.py index 9fc3996cc..3e4f6a0e2 100644 --- a/pylint/test/functional/wrong_import_order.py +++ b/pylint/test/functional/wrong_import_order.py @@ -1,5 +1,5 @@ """Checks import order rule""" -# pylint: disable=unused-import,relative-import,ungrouped-imports +# pylint: disable=unused-import,relative-import,ungrouped-imports,import-error import six import os.path # [wrong-import-order] @@ -7,5 +7,4 @@ from astroid import are_exclusive import sys # [wrong-import-order] import datetime # [wrong-import-order] import unused_import -import scipy # [wrong-import-order] import astroid diff --git a/pylint/test/functional/wrong_import_order.txt b/pylint/test/functional/wrong_import_order.txt index 537355c2c..7505c6e70 100644 --- a/pylint/test/functional/wrong_import_order.txt +++ b/pylint/test/functional/wrong_import_order.txt @@ -1,4 +1,3 @@ wrong-import-order:5::standard import "import os.path" comes before "import six" wrong-import-order:7::standard import "import sys" comes before "import six" wrong-import-order:8::standard import "import datetime" comes before "import six" -wrong-import-order:10::external import "import scipy" comes before "from astroid import are_exclusive" diff --git a/pylint/test/functional/wrong_import_position.py b/pylint/test/functional/wrong_import_position.py index 32a83148a..1547ff21d 100644 --- a/pylint/test/functional/wrong_import_position.py +++ b/pylint/test/functional/wrong_import_position.py @@ -1,6 +1,6 @@ """Checks import order rule""" # pylint: disable=unused-import,relative-import,ungrouped-imports,wrong-import-order,using-constant-test - +# pylint: disable=import-error import os.path if True: from astroid import are_exclusive diff --git a/pylint/testutils.py b/pylint/testutils.py index ecb26ce50..551d0c8c8 100644 --- a/pylint/testutils.py +++ b/pylint/testutils.py @@ -19,27 +19,26 @@ from __future__ import print_function import collections import contextlib import functools +from glob import glob import os +from os import linesep, getcwd, sep +from os.path import abspath, basename, dirname, isdir, join, splitext import sys import re import unittest import tempfile import tokenize -from glob import glob -from os import linesep, getcwd, sep -from os.path import abspath, basename, dirname, isdir, join, splitext +import six +from six.moves import StringIO import astroid - from pylint import checkers from pylint.utils import PyLintASTWalker from pylint.reporters import BaseReporter from pylint.interfaces import IReporter from pylint.lint import PyLinter -import six -from six.moves import StringIO # Utils diff --git a/pylint/utils.py b/pylint/utils.py index 74903dee1..090b0a5cc 100644 --- a/pylint/utils.py +++ b/pylint/utils.py @@ -20,12 +20,12 @@ from __future__ import print_function import collections import os +from os.path import dirname, basename, splitext, exists, isdir, join, normpath import re import sys import tokenize import warnings import textwrap -from os.path import dirname, basename, splitext, exists, isdir, join, normpath import six from six.moves import zip # pylint: disable=redefined-builtin |