Rename `runtime-evaluated-baseclasses` to `runtime-evaluated-base-classes` (#3379)

This commit is contained in:
Charlie Marsh 2023-03-07 09:51:12 -05:00 committed by GitHub
parent 10e252e2fb
commit bced58ce40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 16 additions and 16 deletions

View File

@ -2090,7 +2090,7 @@ where
let baseclasses = &self let baseclasses = &self
.settings .settings
.flake8_type_checking .flake8_type_checking
.runtime_evaluated_baseclasses; .runtime_evaluated_base_classes;
let decorators = &self let decorators = &self
.settings .settings
.flake8_type_checking .flake8_type_checking

View File

@ -63,7 +63,7 @@ pub fn runtime_evaluated(
decorators: &[String], decorators: &[String],
) -> bool { ) -> bool {
if !base_classes.is_empty() { if !base_classes.is_empty() {
if runtime_evaluated_baseclass(context, base_classes) { if runtime_evaluated_base_class(context, base_classes) {
return true; return true;
} }
} }
@ -75,7 +75,7 @@ pub fn runtime_evaluated(
false false
} }
fn runtime_evaluated_baseclass(context: &Context, base_classes: &[String]) -> bool { fn runtime_evaluated_base_class(context: &Context, base_classes: &[String]) -> bool {
if let ScopeKind::Class(class_def) = &context.current_scope().kind { if let ScopeKind::Class(class_def) = &context.current_scope().kind {
for base in class_def.bases.iter() { for base in class_def.bases.iter() {
if let Some(call_path) = context.resolve_call_path(base) { if let Some(call_path) = context.resolve_call_path(base) {

View File

@ -77,16 +77,16 @@ mod tests {
Ok(()) Ok(())
} }
#[test_case(Rule::RuntimeImportInTypeCheckingBlock, Path::new("runtime_evaluated_baseclasses_1.py"); "runtime_evaluated_baseclasses_1")] #[test_case(Rule::RuntimeImportInTypeCheckingBlock, Path::new("runtime_evaluated_base_classes_1.py"); "runtime_evaluated_base_classes_1")]
#[test_case(Rule::TypingOnlyThirdPartyImport, Path::new("runtime_evaluated_baseclasses_2.py"); "runtime_evaluated_baseclasses_2")] #[test_case(Rule::TypingOnlyThirdPartyImport, Path::new("runtime_evaluated_base_classes_2.py"); "runtime_evaluated_base_classes_2")]
#[test_case(Rule::TypingOnlyStandardLibraryImport, Path::new("runtime_evaluated_baseclasses_3.py"); "runtime_evaluated_baseclasses_3")] #[test_case(Rule::TypingOnlyStandardLibraryImport, Path::new("runtime_evaluated_base_classes_3.py"); "runtime_evaluated_base_classes_3")]
fn runtime_evaluated_baseclasses(rule_code: Rule, path: &Path) -> Result<()> { fn runtime_evaluated_base_classes(rule_code: Rule, path: &Path) -> Result<()> {
let snapshot = format!("{}_{}", rule_code.as_ref(), path.to_string_lossy()); let snapshot = format!("{}_{}", rule_code.as_ref(), path.to_string_lossy());
let diagnostics = test_path( let diagnostics = test_path(
Path::new("flake8_type_checking").join(path).as_path(), Path::new("flake8_type_checking").join(path).as_path(),
&settings::Settings { &settings::Settings {
flake8_type_checking: super::settings::Settings { flake8_type_checking: super::settings::Settings {
runtime_evaluated_baseclasses: vec!["pydantic.BaseModel".to_string()], runtime_evaluated_base_classes: vec!["pydantic.BaseModel".to_string()],
..Default::default() ..Default::default()
}, },
..settings::Settings::for_rule(rule_code) ..settings::Settings::for_rule(rule_code)

View File

@ -38,12 +38,12 @@ pub struct Options {
default = "[]", default = "[]",
value_type = "list[str]", value_type = "list[str]",
example = r#" example = r#"
runtime-evaluated-baseclasses = ["pydantic.BaseModel"] runtime-evaluated-base-classes = ["pydantic.BaseModel"]
"# "#
)] )]
/// Exempt classes that list any of the enumerated classes as a base class /// Exempt classes that list any of the enumerated classes as a base class
/// from needing to be moved into type-checking blocks. /// from needing to be moved into type-checking blocks.
pub runtime_evaluated_baseclasses: Option<Vec<String>>, pub runtime_evaluated_base_classes: Option<Vec<String>>,
#[option( #[option(
default = "[]", default = "[]",
value_type = "list[str]", value_type = "list[str]",
@ -60,7 +60,7 @@ pub struct Options {
pub struct Settings { pub struct Settings {
pub strict: bool, pub strict: bool,
pub exempt_modules: Vec<String>, pub exempt_modules: Vec<String>,
pub runtime_evaluated_baseclasses: Vec<String>, pub runtime_evaluated_base_classes: Vec<String>,
pub runtime_evaluated_decorators: Vec<String>, pub runtime_evaluated_decorators: Vec<String>,
} }
@ -69,7 +69,7 @@ impl Default for Settings {
Self { Self {
strict: false, strict: false,
exempt_modules: vec!["typing".to_string()], exempt_modules: vec!["typing".to_string()],
runtime_evaluated_baseclasses: vec![], runtime_evaluated_base_classes: vec![],
runtime_evaluated_decorators: vec![], runtime_evaluated_decorators: vec![],
} }
} }
@ -82,8 +82,8 @@ impl From<Options> for Settings {
exempt_modules: options exempt_modules: options
.exempt_modules .exempt_modules
.unwrap_or_else(|| vec!["typing".to_string()]), .unwrap_or_else(|| vec!["typing".to_string()]),
runtime_evaluated_baseclasses: options runtime_evaluated_base_classes: options
.runtime_evaluated_baseclasses .runtime_evaluated_base_classes
.unwrap_or_default(), .unwrap_or_default(),
runtime_evaluated_decorators: options.runtime_evaluated_decorators.unwrap_or_default(), runtime_evaluated_decorators: options.runtime_evaluated_decorators.unwrap_or_default(),
} }
@ -95,7 +95,7 @@ impl From<Settings> for Options {
Self { Self {
strict: Some(settings.strict), strict: Some(settings.strict),
exempt_modules: Some(settings.exempt_modules), exempt_modules: Some(settings.exempt_modules),
runtime_evaluated_baseclasses: Some(settings.runtime_evaluated_baseclasses), runtime_evaluated_base_classes: Some(settings.runtime_evaluated_base_classes),
runtime_evaluated_decorators: Some(settings.runtime_evaluated_decorators), runtime_evaluated_decorators: Some(settings.runtime_evaluated_decorators),
} }
} }

2
ruff.schema.json generated
View File

@ -908,7 +908,7 @@
"type": "string" "type": "string"
} }
}, },
"runtime-evaluated-baseclasses": { "runtime-evaluated-base-classes": {
"description": "Exempt classes that list any of the enumerated classes as a base class from needing to be moved into type-checking blocks.", "description": "Exempt classes that list any of the enumerated classes as a base class from needing to be moved into type-checking blocks.",
"type": [ "type": [
"array", "array",