Fix # isort: split comment detection in nested blocks (#4584)

This commit is contained in:
Charlie Marsh
2023-05-22 12:31:59 -04:00
committed by GitHub
parent daadd24bde
commit b613460fe5
3 changed files with 50 additions and 2 deletions

View File

@@ -6,7 +6,16 @@ import f
import c
import d
# isort: split
# isort: split
import a
import b
if True:
import C
import A
# isort: split
import D
import B

View File

@@ -121,7 +121,7 @@ where
fn visit_stmt(&mut self, stmt: &'b Stmt) {
// Track manual splits.
for (index, split) in self.splits.iter().enumerate() {
if stmt.end() >= *split {
if stmt.start() >= *split {
self.finalize(self.trailer_for(stmt));
self.splits = &self.splits[index + 1..];
} else {

View File

@@ -1,4 +1,43 @@
---
source: crates/ruff/src/rules/isort/mod.rs
---
split.py:15:1: I001 [*] Import block is un-sorted or un-formatted
|
15 | if True:
16 | / import C
17 | | import A
18 | |
| |_^ I001
19 | # isort: split
|
= help: Organize imports
Suggested fix
12 12 | import b
13 13 |
14 14 | if True:
15 |+ import A
15 16 | import C
16 |- import A
17 17 |
18 18 | # isort: split
19 19 |
split.py:20:1: I001 [*] Import block is un-sorted or un-formatted
|
20 | # isort: split
21 |
22 | / import D
23 | | import B
|
= help: Organize imports
Suggested fix
17 17 |
18 18 | # isort: split
19 19 |
20 |+ import B
20 21 | import D
21 |- import B