mirror of
https://github.com/astral-sh/ruff.git
synced 2025-08-04 10:48:32 +00:00
Remove the deprecated E999
rule code (#14428)
This commit is contained in:
parent
c400725713
commit
e9079e7d95
8 changed files with 18 additions and 47 deletions
|
@ -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"
|
||||
|
@ -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();
|
||||
|
|
|
@ -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),
|
||||
|
@ -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),
|
||||
|
|
|
@ -126,7 +126,8 @@ 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),
|
||||
#[allow(deprecated)]
|
||||
(Pycodestyle, "E999") => (RuleGroup::Removed, rules::pycodestyle::rules::SyntaxError),
|
||||
|
||||
// pycodestyle warnings
|
||||
(Pycodestyle, "W191") => (RuleGroup::Stable, rules::pycodestyle::rules::TabIndentation),
|
||||
|
|
|
@ -39,8 +39,8 @@ impl Violation for IOError {
|
|||
}
|
||||
}
|
||||
|
||||
/// ## Deprecated
|
||||
/// This rule has been deprecated and will be removed in a future release. Syntax errors will
|
||||
/// ## Removed
|
||||
/// This rule has been removed. Syntax errors will
|
||||
/// always be shown regardless of whether this rule is selected or not.
|
||||
///
|
||||
/// ## What it does
|
||||
|
@ -63,14 +63,16 @@ impl Violation for IOError {
|
|||
/// ## References
|
||||
/// - [Python documentation: Syntax Errors](https://docs.python.org/3/tutorial/errors.html#syntax-errors)
|
||||
#[violation]
|
||||
pub struct SyntaxError {
|
||||
pub message: String,
|
||||
}
|
||||
#[deprecated(note = "E999 has been removed")]
|
||||
pub struct SyntaxError;
|
||||
|
||||
#[allow(deprecated)]
|
||||
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"]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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<_>>();
|
||||
|
@ -1632,7 +1628,6 @@ mod tests {
|
|||
Rule::AmbiguousClassName,
|
||||
Rule::AmbiguousFunctionName,
|
||||
Rule::IOError,
|
||||
Rule::SyntaxError,
|
||||
Rule::TabIndentation,
|
||||
Rule::TrailingWhitespace,
|
||||
Rule::MissingNewlineAtEndOfFile,
|
||||
|
|
|
@ -34,8 +34,7 @@ DEFAULT_TARGETS = [
|
|||
repo=Repository(owner="bokeh", name="bokeh", ref="branch-3.3"),
|
||||
check_options=CheckOptions(select="ALL"),
|
||||
),
|
||||
# Disabled due to use of explicit `select` with `E999`, which is no longer
|
||||
# supported in `--preview`.
|
||||
# Disabled due to use of explicit `select` with `E999`, which has been removed.
|
||||
# See: https://github.com/astral-sh/ruff/pull/12129
|
||||
# Project(
|
||||
# repo=Repository(owner="demisto", name="content", ref="master"),
|
||||
|
|
2
ruff.schema.json
generated
2
ruff.schema.json
generated
|
@ -3108,8 +3108,6 @@
|
|||
"E9",
|
||||
"E90",
|
||||
"E902",
|
||||
"E99",
|
||||
"E999",
|
||||
"EM",
|
||||
"EM1",
|
||||
"EM10",
|
||||
|
|
|
@ -126,8 +126,7 @@ REPOSITORIES: list[Repository] = [
|
|||
Repository("binary-husky", "gpt_academic", "master"),
|
||||
Repository("bloomberg", "pytest-memray", "main"),
|
||||
Repository("bokeh", "bokeh", "branch-3.3", select="ALL"),
|
||||
# Disabled due to use of explicit `select` with `E999`, which is no longer
|
||||
# supported in `--preview`.
|
||||
# Disabled due to use of explicit `select` with `E999`, which has been removed.
|
||||
# See: https://github.com/astral-sh/ruff/pull/12129
|
||||
# Repository("demisto", "content", "master"),
|
||||
Repository("docker", "docker-py", "main"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue