Skip to content

Commit

Permalink
Remove the deprecated E999 rule code
Browse files Browse the repository at this point in the history
  • Loading branch information
MichaReiser committed Nov 19, 2024
1 parent 5532cc0 commit c532214
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 38 deletions.
23 changes: 1 addition & 22 deletions crates/ruff/tests/integration_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -840,7 +840,7 @@ fn stdin_multiple_parse_error() {

#[test]
fn parse_error_not_included() {
// Select any rule except for `E999`, syntax error should still be shown.
// Parse errors are always shown
let mut cmd = RuffCheck::default().args(["--select=I"]).build();
assert_cmd_snapshot!(cmd
.pass_stdin("foo =\n"), @r"
Expand All @@ -859,27 +859,6 @@ fn parse_error_not_included() {
");
}

#[test]
fn deprecated_parse_error_selection() {
let mut cmd = RuffCheck::default().args(["--select=E999"]).build();
assert_cmd_snapshot!(cmd
.pass_stdin("foo =\n"), @r"
success: false
exit_code: 1
----- stdout -----
-:1:6: SyntaxError: Expected an expression
|
1 | foo =
| ^
|
Found 1 error.
----- stderr -----
warning: Rule `E999` is deprecated and will be removed in a future release. Syntax errors will always be shown regardless of whether this rule is selected or not.
");
}

#[test]
fn full_output_preview() {
let mut cmd = RuffCheck::default().args(["--preview"]).build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ linter.rules.enabled = [
ambiguous-class-name (E742),
ambiguous-function-name (E743),
io-error (E902),
syntax-error (E999),
unused-import (F401),
import-shadowed-by-loop-var (F402),
undefined-local-with-import-star (F403),
Expand Down Expand Up @@ -150,7 +149,6 @@ linter.rules.should_fix = [
ambiguous-class-name (E742),
ambiguous-function-name (E743),
io-error (E902),
syntax-error (E999),
unused-import (F401),
import-shadowed-by-loop-var (F402),
undefined-local-with-import-star (F403),
Expand Down
2 changes: 1 addition & 1 deletion crates/ruff_linter/src/codes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ pub fn code_to_rule(linter: Linter, code: &str) -> Option<(RuleGroup, Rule)> {
(Pycodestyle, "E742") => (RuleGroup::Stable, rules::pycodestyle::rules::AmbiguousClassName),
(Pycodestyle, "E743") => (RuleGroup::Stable, rules::pycodestyle::rules::AmbiguousFunctionName),
(Pycodestyle, "E902") => (RuleGroup::Stable, rules::pycodestyle::rules::IOError),
(Pycodestyle, "E999") => (RuleGroup::Deprecated, rules::pycodestyle::rules::SyntaxError),
(Pycodestyle, "E999") => (RuleGroup::Removed, rules::pycodestyle::rules::SyntaxError),

// pycodestyle warnings
(Pycodestyle, "W191") => (RuleGroup::Stable, rules::pycodestyle::rules::TabIndentation),
Expand Down
8 changes: 5 additions & 3 deletions crates/ruff_linter/src/rules/pycodestyle/rules/errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,11 @@ pub struct SyntaxError {
}

impl Violation for SyntaxError {
#[derive_message_formats]
fn message(&self) -> String {
let SyntaxError { message } = self;
format!("SyntaxError: {message}")
unreachable!("E999 has been removed")
}

fn message_formats() -> &'static [&'static str] {
&["SyntaxError"]
}
}
11 changes: 3 additions & 8 deletions crates/ruff_workspace/src/configuration.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1000,13 +1000,9 @@ impl LintConfiguration {
if preview.mode.is_disabled() {
for selection in deprecated_selectors.iter().sorted() {
let (prefix, code) = selection.prefix_and_code();
let rule = format!("{prefix}{code}");
let mut message =
format!("Rule `{rule}` is deprecated and will be removed in a future release.");
if matches!(rule.as_str(), "E999") {
message.push_str(" Syntax errors will always be shown regardless of whether this rule is selected or not.");
}
warn_user_once_by_message!("{message}");
warn_user_once_by_message!(
"Rule `{prefix}{code}` is deprecated and will be removed in a future release."
);
}
} else {
let deprecated_selectors = deprecated_selectors.iter().sorted().collect::<Vec<_>>();
Expand Down Expand Up @@ -1632,7 +1628,6 @@ mod tests {
Rule::AmbiguousClassName,
Rule::AmbiguousFunctionName,
Rule::IOError,
Rule::SyntaxError,
Rule::TabIndentation,
Rule::TrailingWhitespace,
Rule::MissingNewlineAtEndOfFile,
Expand Down
2 changes: 0 additions & 2 deletions ruff.schema.json

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

0 comments on commit c532214

Please sign in to comment.