mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-29 13:25:17 +00:00
[Ruff 0.5] Stabilise 11 FURB
rules (#12043)
This commit is contained in:
parent
c7b2f2b788
commit
bd845812c7
5 changed files with 25 additions and 32 deletions
|
@ -1014,15 +1014,15 @@ pub fn code_to_rule(linter: Linter, code: &str) -> Option<(RuleGroup, Rule)> {
|
|||
// refurb
|
||||
(Refurb, "101") => (RuleGroup::Preview, rules::refurb::rules::ReadWholeFile),
|
||||
(Refurb, "103") => (RuleGroup::Preview, rules::refurb::rules::WriteWholeFile),
|
||||
(Refurb, "105") => (RuleGroup::Preview, rules::refurb::rules::PrintEmptyString),
|
||||
(Refurb, "105") => (RuleGroup::Stable, rules::refurb::rules::PrintEmptyString),
|
||||
(Refurb, "110") => (RuleGroup::Preview, rules::refurb::rules::IfExpInsteadOfOrOperator),
|
||||
(Refurb, "113") => (RuleGroup::Preview, rules::refurb::rules::RepeatedAppend),
|
||||
(Refurb, "116") => (RuleGroup::Preview, rules::refurb::rules::FStringNumberFormat),
|
||||
(Refurb, "118") => (RuleGroup::Preview, rules::refurb::rules::ReimplementedOperator),
|
||||
(Refurb, "129") => (RuleGroup::Preview, rules::refurb::rules::ReadlinesInFor),
|
||||
(Refurb, "129") => (RuleGroup::Stable, rules::refurb::rules::ReadlinesInFor),
|
||||
(Refurb, "131") => (RuleGroup::Preview, rules::refurb::rules::DeleteFullSlice),
|
||||
(Refurb, "132") => (RuleGroup::Preview, rules::refurb::rules::CheckAndRemoveFromSet),
|
||||
(Refurb, "136") => (RuleGroup::Preview, rules::refurb::rules::IfExprMinMax),
|
||||
(Refurb, "136") => (RuleGroup::Stable, rules::refurb::rules::IfExprMinMax),
|
||||
(Refurb, "140") => (RuleGroup::Preview, rules::refurb::rules::ReimplementedStarmap),
|
||||
(Refurb, "142") => (RuleGroup::Preview, rules::refurb::rules::ForLoopSetMutations),
|
||||
(Refurb, "145") => (RuleGroup::Preview, rules::refurb::rules::SliceCopy),
|
||||
|
@ -1030,18 +1030,18 @@ pub fn code_to_rule(linter: Linter, code: &str) -> Option<(RuleGroup, Rule)> {
|
|||
(Refurb, "152") => (RuleGroup::Preview, rules::refurb::rules::MathConstant),
|
||||
(Refurb, "154") => (RuleGroup::Preview, rules::refurb::rules::RepeatedGlobal),
|
||||
(Refurb, "157") => (RuleGroup::Preview, rules::refurb::rules::VerboseDecimalConstructor),
|
||||
(Refurb, "161") => (RuleGroup::Preview, rules::refurb::rules::BitCount),
|
||||
(Refurb, "163") => (RuleGroup::Preview, rules::refurb::rules::RedundantLogBase),
|
||||
(Refurb, "161") => (RuleGroup::Stable, rules::refurb::rules::BitCount),
|
||||
(Refurb, "163") => (RuleGroup::Stable, rules::refurb::rules::RedundantLogBase),
|
||||
(Refurb, "164") => (RuleGroup::Preview, rules::refurb::rules::UnnecessaryFromFloat),
|
||||
(Refurb, "166") => (RuleGroup::Preview, rules::refurb::rules::IntOnSlicedStr),
|
||||
(Refurb, "167") => (RuleGroup::Preview, rules::refurb::rules::RegexFlagAlias),
|
||||
(Refurb, "168") => (RuleGroup::Preview, rules::refurb::rules::IsinstanceTypeNone),
|
||||
(Refurb, "169") => (RuleGroup::Preview, rules::refurb::rules::TypeNoneComparison),
|
||||
(Refurb, "167") => (RuleGroup::Stable, rules::refurb::rules::RegexFlagAlias),
|
||||
(Refurb, "168") => (RuleGroup::Stable, rules::refurb::rules::IsinstanceTypeNone),
|
||||
(Refurb, "169") => (RuleGroup::Stable, rules::refurb::rules::TypeNoneComparison),
|
||||
(Refurb, "171") => (RuleGroup::Preview, rules::refurb::rules::SingleItemMembershipTest),
|
||||
(Refurb, "177") => (RuleGroup::Preview, rules::refurb::rules::ImplicitCwd),
|
||||
(Refurb, "177") => (RuleGroup::Stable, rules::refurb::rules::ImplicitCwd),
|
||||
(Refurb, "180") => (RuleGroup::Preview, rules::refurb::rules::MetaClassABCMeta),
|
||||
(Refurb, "181") => (RuleGroup::Preview, rules::refurb::rules::HashlibDigestHex),
|
||||
(Refurb, "187") => (RuleGroup::Preview, rules::refurb::rules::ListReverseCopy),
|
||||
(Refurb, "181") => (RuleGroup::Stable, rules::refurb::rules::HashlibDigestHex),
|
||||
(Refurb, "187") => (RuleGroup::Stable, rules::refurb::rules::ListReverseCopy),
|
||||
(Refurb, "192") => (RuleGroup::Preview, rules::refurb::rules::SortedMinMax),
|
||||
|
||||
// flake8-logging
|
||||
|
|
|
@ -156,14 +156,16 @@ enum MinMax {
|
|||
}
|
||||
|
||||
impl MinMax {
|
||||
fn reverse(self) -> Self {
|
||||
#[must_use]
|
||||
const fn reverse(self) -> Self {
|
||||
match self {
|
||||
Self::Min => Self::Max,
|
||||
Self::Max => Self::Min,
|
||||
}
|
||||
}
|
||||
|
||||
fn as_str(self) -> &'static str {
|
||||
#[must_use]
|
||||
const fn as_str(self) -> &'static str {
|
||||
match self {
|
||||
Self::Min => "min",
|
||||
Self::Max => "max",
|
||||
|
|
|
@ -77,7 +77,6 @@ pub(crate) fn redundant_log_base(checker: &mut Checker, call: &ast::ExprCall) {
|
|||
if !checker
|
||||
.semantic()
|
||||
.resolve_qualified_name(&call.func)
|
||||
.as_ref()
|
||||
.is_some_and(|qualified_name| matches!(qualified_name.segments(), ["math", "log"]))
|
||||
{
|
||||
return;
|
||||
|
@ -90,7 +89,6 @@ pub(crate) fn redundant_log_base(checker: &mut Checker, call: &ast::ExprCall) {
|
|||
} else if checker
|
||||
.semantic()
|
||||
.resolve_qualified_name(base)
|
||||
.as_ref()
|
||||
.is_some_and(|qualified_name| matches!(qualified_name.segments(), ["math", "e"]))
|
||||
{
|
||||
Base::E
|
||||
|
|
|
@ -34,20 +34,19 @@ use crate::importer::ImportRequest;
|
|||
///
|
||||
#[violation]
|
||||
pub struct RegexFlagAlias {
|
||||
alias: &'static str,
|
||||
full_name: &'static str,
|
||||
flag: RegexFlag,
|
||||
}
|
||||
|
||||
impl AlwaysFixableViolation for RegexFlagAlias {
|
||||
#[derive_message_formats]
|
||||
fn message(&self) -> String {
|
||||
let RegexFlagAlias { alias, .. } = self;
|
||||
format!("Use of regular expression alias `re.{alias}`")
|
||||
let RegexFlagAlias { flag } = self;
|
||||
format!("Use of regular expression alias `re.{}`", flag.alias())
|
||||
}
|
||||
|
||||
fn fix_title(&self) -> String {
|
||||
let RegexFlagAlias { full_name, .. } = self;
|
||||
format!("Replace with `re.{full_name}`")
|
||||
let RegexFlagAlias { flag } = self;
|
||||
format!("Replace with `re.{}`", flag.full_name())
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -75,13 +74,7 @@ pub(crate) fn regex_flag_alias(checker: &mut Checker, expr: &Expr) {
|
|||
return;
|
||||
};
|
||||
|
||||
let mut diagnostic = Diagnostic::new(
|
||||
RegexFlagAlias {
|
||||
alias: flag.alias(),
|
||||
full_name: flag.full_name(),
|
||||
},
|
||||
expr.range(),
|
||||
);
|
||||
let mut diagnostic = Diagnostic::new(RegexFlagAlias { flag }, expr.range());
|
||||
diagnostic.try_set_fix(|| {
|
||||
let (edit, binding) = checker.importer().get_or_import_symbol(
|
||||
&ImportRequest::import("re", flag.full_name()),
|
||||
|
@ -109,7 +102,8 @@ enum RegexFlag {
|
|||
}
|
||||
|
||||
impl RegexFlag {
|
||||
fn alias(self) -> &'static str {
|
||||
#[must_use]
|
||||
const fn alias(self) -> &'static str {
|
||||
match self {
|
||||
Self::Ascii => "A",
|
||||
Self::IgnoreCase => "I",
|
||||
|
@ -122,7 +116,8 @@ impl RegexFlag {
|
|||
}
|
||||
}
|
||||
|
||||
fn full_name(self) -> &'static str {
|
||||
#[must_use]
|
||||
const fn full_name(self) -> &'static str {
|
||||
match self {
|
||||
Self::Ascii => "ASCII",
|
||||
Self::IgnoreCase => "IGNORECASE",
|
||||
|
|
|
@ -1484,8 +1484,6 @@ mod tests {
|
|||
use crate::options::PydocstyleOptions;
|
||||
|
||||
const PREVIEW_RULES: &[Rule] = &[
|
||||
Rule::IsinstanceTypeNone,
|
||||
Rule::IfExprMinMax,
|
||||
Rule::ReimplementedStarmap,
|
||||
Rule::SliceCopy,
|
||||
Rule::TooManyPublicMethods,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue