Skip to content

Commit

Permalink
Merge pull request #1845 from PyCQA/revert-1833-bug/do_not_skip_string
Browse files Browse the repository at this point in the history
Revert "only skip real comments"
  • Loading branch information
timothycrosley committed Nov 7, 2021
2 parents c154ecf + dcbf92f commit dbd1842
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 28 deletions.
13 changes: 7 additions & 6 deletions isort/core.py
Expand Up @@ -9,7 +9,7 @@
from . import output, parse
from .exceptions import FileSkipComment
from .format import format_natural, remove_whitespace
from .settings import FILE_SKIP_RE
from .settings import FILE_SKIP_COMMENTS

CIMPORT_IDENTIFIERS = ("cimport ", "cimport*", "from.cimport")
IMPORT_START_IDENTIFIERS = ("from ", "from.import", "import ", "import*") + CIMPORT_IDENTIFIERS
Expand Down Expand Up @@ -150,11 +150,12 @@ def process(
if stripped_line and not line_separator:
line_separator = line[len(line.rstrip()) :].replace(" ", "").replace("\t", "")

if FILE_SKIP_RE.match(line):
if raise_on_skip:
raise FileSkipComment("Passed in content")
isort_off = True
skip_file = True
for file_skip_comment in FILE_SKIP_COMMENTS:
if file_skip_comment in line:
if raise_on_skip:
raise FileSkipComment("Passed in content")
isort_off = True
skip_file = True

if not in_quote:
if stripped_line == "# isort: off":
Expand Down
5 changes: 4 additions & 1 deletion isort/settings.py
Expand Up @@ -54,7 +54,10 @@
CYTHON_EXTENSIONS = frozenset({"pyx", "pxd"})
SUPPORTED_EXTENSIONS = frozenset({"py", "pyi", *CYTHON_EXTENSIONS})
BLOCKED_EXTENSIONS = frozenset({"pex"})
FILE_SKIP_RE = re.compile(r"^#?\s?isort:\s?skip_file")
FILE_SKIP_COMMENTS: Tuple[str, ...] = (
"isort:" + "skip_file",
"isort: " + "skip_file",
) # Concatenated to avoid this file being skipped
MAX_CONFIG_SEARCH_DEPTH: int = 25 # The number of parent directories to for a config file within
STOP_CONFIG_SEARCH_ON_DIRS: Tuple[str, ...] = (".git", ".hg")
VALID_PY_TARGETS: Tuple[str, ...] = tuple(
Expand Down
21 changes: 0 additions & 21 deletions tests/unit/test_isort.py
Expand Up @@ -839,27 +839,6 @@ def test_skip_within_file() -> None:
isort.code(test_input, known_third_party=["django"])


def test_skip_comment_without_space_after_hash() -> None:
"""Ensure skipping a whole file works."""
test_input = "#isort: skip_file\nimport django\nimport myproject\n"
with pytest.raises(FileSkipped):
isort.code(test_input, known_third_party=["django"])


def test_skip_comment_with_multiline_comment() -> None:
"""Ensure skipping a whole file works."""
test_input = '"""some comment\n\nisort: skip_file\nimport django\nimport myproject\n"""'
with pytest.raises(FileSkipped):
isort.code(test_input, known_third_party=["django"])


def test_skip_comment_is_no_comment() -> None:
"""Ensure skipping a whole file works."""
test_input = 'content = "# isort:skip_file"'
test_output = isort.code(test_input)
assert test_output == test_input


def test_force_to_top() -> None:
"""Ensure forcing a single import to the top of its category works as expected."""
test_input = "import lib6\nimport lib2\nimport lib5\nimport lib1\n"
Expand Down

0 comments on commit dbd1842

Please sign in to comment.