diff options
| author | Ian Cordasco <graffatcolmingov@gmail.com> | 2016-07-29 00:43:07 +0000 |
|---|---|---|
| committer | Ian Cordasco <graffatcolmingov@gmail.com> | 2016-07-29 00:43:07 +0000 |
| commit | 530767d36d1a23b986d62567b8364c263f7270ae (patch) | |
| tree | fd4bee5179fd3c5cddbea2781e18d5d8ed4ed73e /src | |
| parent | c0e506657790babc7e5d3c560afb6e44e160b2f5 (diff) | |
| parent | c670217c24db25ad3cab699f6394372a94777379 (diff) | |
| download | flake8-530767d36d1a23b986d62567b8364c263f7270ae.tar.gz | |
Merge branch 'bug/195' into 'master'
Allow plugins that are on by default to be ignored
*Description of changes*
Previously, users were unable to ignore the error code of a plugin that was on by default. This adds a tiny bit of extra logic to re-enable that behaviour.
*Related to:* #195
See merge request !104
Diffstat (limited to 'src')
| -rw-r--r-- | src/flake8/options/aggregator.py | 6 | ||||
| -rw-r--r-- | src/flake8/style_guide.py | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/flake8/options/aggregator.py b/src/flake8/options/aggregator.py index a0ad535..4075dc9 100644 --- a/src/flake8/options/aggregator.py +++ b/src/flake8/options/aggregator.py @@ -53,14 +53,12 @@ def aggregate_options(manager, arglist=None, values=None): list(extended_default_ignore)) extended_default_ignore.update(default_values.ignore) default_values.ignore = list(extended_default_ignore) + LOG.debug('Merged default ignore list: %s', default_values.ignore) extended_default_select = manager.extended_default_select.copy() LOG.debug('Extended default select list: %s', list(extended_default_select)) - extended_default_select.update(default_values.select) - default_values.select = list(extended_default_select) - LOG.debug('Merged default ignore list: %s', default_values.ignore) - LOG.debug('Merged default select list: %s', default_values.select) + default_values.extended_default_select = extended_default_select # Merge values parsed from config onto the default values returned for config_name, value in parsed_config.items(): diff --git a/src/flake8/style_guide.py b/src/flake8/style_guide.py index 0cbab8f..a1ab473 100644 --- a/src/flake8/style_guide.py +++ b/src/flake8/style_guide.py @@ -63,6 +63,7 @@ class StyleGuide(object): self.formatter = formatter self.stats = statistics.Statistics() self._selected = tuple(options.select) + self._extended_selected = tuple(options.extended_default_select) self._ignored = tuple(options.ignore) self._decision_cache = {} self._parsed_diff = {} @@ -86,6 +87,13 @@ class StyleGuide(object): if code.startswith(self._selected): return Selected.Explicitly + # If it was not explicitly selected, it may have been implicitly + # selected because the check comes from a plugin that is enabled by + # default + if (self._extended_selected and + code.startswith(self._extended_selected)): + return Selected.Implicitly + return Ignored.Implicitly def is_user_ignored(self, code): |
