Merge branch 'bug/122' into 'master'

Correct usage config_file StyleGuide parameter

Previously, we passed the location for our user config file to the
StyleGuide. This was intended to be a way to tell pep8's StyleGuide
to use that as a user config file, but instead that became the default
for the --config command-line option. This caused that to have higher
priority than the project configuration file.

Closes #122

See merge request !53
This commit is contained in:
Ian Cordasco 2016-03-28 15:22:01 +00:00
commit 40f1a1e337
2 changed files with 11 additions and 14 deletions

View file

@ -14,7 +14,6 @@ except ImportError: # Python 2
from flake8 import compat
from flake8.engine import get_parser, get_style_guide
from flake8.main import DEFAULT_CONFIG
def git_hook(complexity=-1, strict=False, ignore=None, lazy=False):
@ -51,8 +50,7 @@ def git_hook(complexity=-1, strict=False, ignore=None, lazy=False):
tmpdir = tempfile.mkdtemp()
flake8_style = get_style_guide(config_file=DEFAULT_CONFIG, paths=['.'],
**options)
flake8_style = get_style_guide(paths=['.'], **options)
filepatterns = flake8_style.options.filename
# Copy staged versions to temporary directory
@ -102,7 +100,7 @@ def hg_hook(ui, repo, **kwargs):
complexity = ui.config('flake8', 'complexity', default=-1)
strict = ui.configbool('flake8', 'strict', default=True)
ignore = ui.config('flake8', 'ignore', default=None)
config = ui.config('flake8', 'config', default=DEFAULT_CONFIG)
config = ui.config('flake8', 'config', default=None)
paths = _get_files(repo, **kwargs)

View file

@ -3,26 +3,29 @@ import os
import re
import sys
import pep8
import setuptools
from flake8.engine import get_parser, get_style_guide
from flake8.util import option_normalizer
if sys.platform.startswith('win'):
DEFAULT_CONFIG = os.path.expanduser(r'~\.flake8')
USER_CONFIG = os.path.expanduser(r'~\.flake8')
else:
DEFAULT_CONFIG = os.path.join(
USER_CONFIG = os.path.join(
os.getenv('XDG_CONFIG_HOME') or os.path.expanduser('~/.config'),
'flake8'
)
pep8.USER_CONFIG = USER_CONFIG
EXTRA_IGNORE = []
def main():
"""Parse options and run checks on Python source."""
# Prepare
flake8_style = get_style_guide(parse_argv=True, config_file=DEFAULT_CONFIG)
flake8_style = get_style_guide(parse_argv=True)
options = flake8_style.options
if options.install_hook:
@ -61,8 +64,7 @@ def check_file(path, ignore=(), complexity=-1):
:param int complexity: (optional), enables the mccabe check for values > 0
"""
ignore = set(ignore).union(EXTRA_IGNORE)
flake8_style = get_style_guide(
config_file=DEFAULT_CONFIG, ignore=ignore, max_complexity=complexity)
flake8_style = get_style_guide(ignore=ignore, max_complexity=complexity)
return flake8_style.input_file(path)
@ -74,8 +76,7 @@ def check_code(code, ignore=(), complexity=-1):
:param int complexity: (optional), enables the mccabe check for values > 0
"""
ignore = set(ignore).union(EXTRA_IGNORE)
flake8_style = get_style_guide(
config_file=DEFAULT_CONFIG, ignore=ignore, max_complexity=complexity)
flake8_style = get_style_guide(ignore=ignore, max_complexity=complexity)
return flake8_style.input_file(None, lines=code.splitlines(True))
@ -131,9 +132,7 @@ class Flake8Command(setuptools.Command):
def run(self):
# Prepare
paths = list(self.distribution_files())
flake8_style = get_style_guide(config_file=DEFAULT_CONFIG,
paths=paths,
**self.options_dict)
flake8_style = get_style_guide(paths=paths, **self.options_dict)
# Run the checkers
report = flake8_style.check_files()