Skip to content

Commit 7a6ff76

Browse files
erikwrightPCManticore
authored andcommitted
Optimize effect of disabling ungrouped-imports.
Disabling 'ungrouped-imports' for a single line now prevents that line from triggering violations on subsequent lines.
1 parent 4f5d227 commit 7a6ff76

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

ChangeLog

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,9 @@ Release date: 2017-04-13
7272

7373
Close #1342
7474

75-
* Disabling 'wrong-import-order' or 'wrong-import-position' for a single line now
76-
prevents that line from triggering violations on subsequent lines.
75+
* Disabling 'wrong-import-order', 'wrong-import-position', or
76+
'ungrouped-imports' for a single line now prevents that line from
77+
triggering violations on subsequent lines.
7778

7879
Close #1336
7980

pylint/checkers/imports.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,8 @@ def leave_module(self, node):
433433
met = set()
434434
current_package = None
435435
for import_node, import_name in std_imports + ext_imports + loc_imports:
436+
if not self.linter.is_message_enabled('ungrouped-imports', import_node.fromlineno):
437+
continue
436438
package, _, _ = import_name.partition('.')
437439
if current_package and current_package != package and package in met:
438440
self.add_message('ungrouped-imports', node=import_node,
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
"""Checks that disabling 'ungrouped-imports' on an import prevents subsequent
2+
imports from being considered ungrouped in respect to it."""
3+
# pylint: disable=unused-import,relative-import,wrong-import-position,wrong-import-order,using-constant-test
4+
# pylint: disable=import-error
5+
import os
6+
import logging.config # pylint: disable=ungrouped-imports
7+
import os.path
8+
import logging
9+
from os.path import join # [ungrouped-imports]
10+
import logging.handlers # [ungrouped-imports]
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ungrouped-imports:9::Imports from package os are not grouped
2+
ungrouped-imports:10::Imports from package logging are not grouped

0 commit comments

Comments
 (0)