Skip to content

Commit

Permalink
TD003: remove issue code length restriction (#15175)
Browse files Browse the repository at this point in the history
Co-authored-by: Micha Reiser <micha@reiser.io>
  • Loading branch information
mdbernard and MichaReiser authored Jan 3, 2025
1 parent 1218bc6 commit 0dbfa8d
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 28 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
# TODO: this comment has an issue
# TDO-3870

# TODO: the link has an issue code of the minimum length
# T-001

# TODO: the issue code can be arbitrarily long
# ABCDEFGHIJKLMNOPQRSTUVWXYZ-001

# TDO003 - errors
# TODO: this comment has no
# link after it
Expand Down
4 changes: 2 additions & 2 deletions crates/ruff_linter/src/rules/flake8_todos/rules/todos.rs
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ impl Violation for MissingTodoAuthor {
/// # TODO(charlie): this comment has a 3-digit issue code
/// # 003
///
/// # TODO(charlie): this comment has an issue code of (up to) 6 characters, then digits
/// # TODO(charlie): this comment has an issue code (matches the regex `[A-Z]+\-?\d+`)
/// # SIXCHR-003
/// ```
#[derive(ViolationMetadata)]
Expand Down Expand Up @@ -228,7 +228,7 @@ static ISSUE_LINK_REGEX_SET: LazyLock<RegexSet> = LazyLock::new(|| {
RegexSet::new([
r"^#\s*(http|https)://.*", // issue link
r"^#\s*\d+$", // issue code - like "003"
r"^#\s*[A-Z]{1,6}\-?\d+$", // issue code - like "TD003"
r"^#\s*[A-Z]+\-?\d+$", // issue code - like "TD003"
])
.unwrap()
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,48 +2,48 @@
source: crates/ruff_linter/src/rules/flake8_todos/mod.rs
snapshot_kind: text
---
TD003.py:9:3: TD003 Missing issue link on the line following this TODO
TD003.py:15:3: TD003 Missing issue link on the line following this TODO
|
8 | # TDO003 - errors
9 | # TODO: this comment has no
14 | # TDO003 - errors
15 | # TODO: this comment has no
| ^^^^ TD003
10 | # link after it
16 | # link after it
|

TD003.py:12:3: TD003 Missing issue link on the line following this TODO
TD003.py:18:3: TD003 Missing issue link on the line following this TODO
|
10 | # link after it
11 |
12 | # TODO: here's a TODO with no link after it
16 | # link after it
17 |
18 | # TODO: here's a TODO with no link after it
| ^^^^ TD003
13 | def foo(x):
14 | return x
19 | def foo(x):
20 | return x
|

TD003.py:25:3: TD003 Missing issue link on the line following this TODO
TD003.py:31:3: TD003 Missing issue link on the line following this TODO
|
23 | # TDO-3870
24 |
25 | # TODO: here's a TODO without an issue link
29 | # TDO-3870
30 |
31 | # TODO: here's a TODO without an issue link
| ^^^^ TD003
26 | # TODO: followed by a new TODO with an issue link
27 | # TDO-3870
32 | # TODO: followed by a new TODO with an issue link
33 | # TDO-3870
|

TD003.py:29:9: TD003 Missing issue link on the line following this TODO
TD003.py:35:9: TD003 Missing issue link on the line following this TODO
|
27 | # TDO-3870
28 |
29 | # foo # TODO: no link!
33 | # TDO-3870
34 |
35 | # foo # TODO: no link!
| ^^^^ TD003
30 |
31 | # TODO: here's a TODO on the last line with no link
36 |
37 | # TODO: here's a TODO on the last line with no link
|

TD003.py:31:3: TD003 Missing issue link on the line following this TODO
TD003.py:37:3: TD003 Missing issue link on the line following this TODO
|
29 | # foo # TODO: no link!
30 |
31 | # TODO: here's a TODO on the last line with no link
35 | # foo # TODO: no link!
36 |
37 | # TODO: here's a TODO on the last line with no link
| ^^^^ TD003
|

0 comments on commit 0dbfa8d

Please sign in to comment.