Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from __future__ import annotations

from typing import TypeVar


x: "int" | str # TCH010
x: ("int" | str) | "bool" # TCH010


def func():
x: "int" | str # OK


z: list[str, str | "int"] = [] # TCH010

type A = Value["int" | str] # OK

OldS = TypeVar('OldS', int | 'str', str) # TCH010
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
from typing import TypeVar


x: "int" | str # TCH010
x: ("int" | str) | "bool" # TCH010


def func():
x: "int" | str # OK


z: list[str, str | "int"] = [] # TCH010

type A = Value["int" | str] # OK

OldS = TypeVar('OldS', int | 'str', str) # TCH010
2 changes: 1 addition & 1 deletion crates/ruff_linter/src/codes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -841,7 +841,7 @@ pub fn code_to_rule(linter: Linter, code: &str) -> Option<(RuleGroup, Rule)> {
(Flake8TypeChecking, "003") => (RuleGroup::Stable, rules::flake8_type_checking::rules::TypingOnlyStandardLibraryImport),
(Flake8TypeChecking, "004") => (RuleGroup::Stable, rules::flake8_type_checking::rules::RuntimeImportInTypeCheckingBlock),
(Flake8TypeChecking, "005") => (RuleGroup::Stable, rules::flake8_type_checking::rules::EmptyTypeCheckingBlock),
(Flake8TypeChecking, "006") => (RuleGroup::Stable, rules::flake8_type_checking::rules::RuntimeStringUnion),
(Flake8TypeChecking, "010") => (RuleGroup::Stable, rules::flake8_type_checking::rules::RuntimeStringUnion),

// tryceratops
(Tryceratops, "002") => (RuleGroup::Stable, rules::tryceratops::rules::RaiseVanillaClass),
Expand Down
1 change: 1 addition & 0 deletions crates/ruff_linter/src/rule_redirects.rs
Original file line number Diff line number Diff line change
Expand Up @@ -99,5 +99,6 @@ static REDIRECTS: Lazy<HashMap<&'static str, &'static str>> = Lazy::new(|| {
("T003", "FIX003"),
("T004", "FIX004"),
("RUF011", "B035"),
("TCH006", "TCH010"),
])
});
4 changes: 2 additions & 2 deletions crates/ruff_linter/src/rules/flake8_type_checking/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ mod tests {
#[test_case(Rule::RuntimeImportInTypeCheckingBlock, Path::new("TCH004_8.py"))]
#[test_case(Rule::RuntimeImportInTypeCheckingBlock, Path::new("TCH004_9.py"))]
#[test_case(Rule::RuntimeImportInTypeCheckingBlock, Path::new("quote.py"))]
#[test_case(Rule::RuntimeStringUnion, Path::new("TCH006_1.py"))]
#[test_case(Rule::RuntimeStringUnion, Path::new("TCH006_2.py"))]
#[test_case(Rule::RuntimeStringUnion, Path::new("TCH010_1.py"))]
#[test_case(Rule::RuntimeStringUnion, Path::new("TCH010_2.py"))]
#[test_case(Rule::TypingOnlyFirstPartyImport, Path::new("TCH001.py"))]
#[test_case(Rule::TypingOnlyStandardLibraryImport, Path::new("TCH003.py"))]
#[test_case(Rule::TypingOnlyStandardLibraryImport, Path::new("init_var.py"))]
Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
source: crates/ruff_linter/src/rules/flake8_type_checking/mod.rs
---
TCH010_1.py:18:30: TCH010 Invalid string member in `X | Y`-style union type
|
16 | type A = Value["int" | str] # OK
17 |
18 | OldS = TypeVar('OldS', int | 'str', str) # TCH010
| ^^^^^ TCH010
|


Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
source: crates/ruff_linter/src/rules/flake8_type_checking/mod.rs
---
TCH010_2.py:4:4: TCH010 Invalid string member in `X | Y`-style union type
|
4 | x: "int" | str # TCH010
| ^^^^^ TCH010
5 | x: ("int" | str) | "bool" # TCH010
|

TCH010_2.py:5:5: TCH010 Invalid string member in `X | Y`-style union type
|
4 | x: "int" | str # TCH010
5 | x: ("int" | str) | "bool" # TCH010
| ^^^^^ TCH010
|

TCH010_2.py:5:20: TCH010 Invalid string member in `X | Y`-style union type
|
4 | x: "int" | str # TCH010
5 | x: ("int" | str) | "bool" # TCH010
| ^^^^^^ TCH010
|

TCH010_2.py:12:20: TCH010 Invalid string member in `X | Y`-style union type
|
12 | z: list[str, str | "int"] = [] # TCH010
| ^^^^^ TCH010
13 |
14 | type A = Value["int" | str] # OK
|

TCH010_2.py:16:30: TCH010 Invalid string member in `X | Y`-style union type
|
14 | type A = Value["int" | str] # OK
15 |
16 | OldS = TypeVar('OldS', int | 'str', str) # TCH010
| ^^^^^ TCH010
|


3 changes: 2 additions & 1 deletion ruff.schema.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.