ruff/crates/ruff_python_semantic/src
Charlie Marsh b021ede481
Allow sys.path modifications between imports (#9047)
## Summary

It's common to interleave a `sys.path` modification between imports at
the top of a file. This is a frequent cause of `# noqa: E402` false
positives, as seen in the ecosystem checks. This PR modifies E402 to
omit such modifications when determining the "import boundary".

(We could consider linting against `sys.path` modifications, but that
should be a separate rule.)

Closes: https://github.com/astral-sh/ruff/issues/5557.
2023-12-07 13:35:55 -05:00
..
analyze Allow sys.path modifications between imports (#9047) 2023-12-07 13:35:55 -05:00
binding.rs Add a BindingKind for WithItem variables (#8594) 2023-11-09 22:44:49 -05:00
branches.rs Add branch detection to the semantic model (#6694) 2023-08-19 21:28:17 +00:00
context.rs Remove separate ReferenceContext enum (#4631) 2023-05-24 15:12:38 +00:00
definition.rs Add fix for future-required-type-annotation (#8711) 2023-11-16 03:08:02 +00:00
globals.rs Move Ranged into ruff_text_size (#6919) 2023-08-27 14:12:51 -04:00
lib.rs Use a single node hierarchy to track statements and expressions (#6709) 2023-08-21 21:32:57 -04:00
model.rs Rename semantic model flag LITERAL to TYPING_LITERAL (#8997) 2023-12-04 11:28:09 -06:00
nodes.rs Move {AnyNodeRef, AstNode} to ruff_python_ast crate root (#8030) 2023-10-18 00:01:18 +00:00
reference.rs Move Ranged into ruff_text_size (#6919) 2023-08-27 14:12:51 -04:00
scope.rs Remove async AST node variants for with, for, and def (#6369) 2023-08-07 16:36:02 +00:00
star_import.rs Move StarImport to its own module (#5186) 2023-06-20 13:12:46 -04:00