diff --git a/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_default_value_positional_argument.rs b/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_default_value_positional_argument.rs index 760577848f661..5c838330409a7 100644 --- a/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_default_value_positional_argument.rs +++ b/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_default_value_positional_argument.rs @@ -106,6 +106,10 @@ pub(crate) fn boolean_default_value_positional_argument( decorator_list: &[Decorator], parameters: &Parameters, ) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } // Allow Boolean defaults in explicitly-allowed functions. if is_allowed_func_def(name) { return; diff --git a/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_type_hint_positional_argument.rs b/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_type_hint_positional_argument.rs index 1f7ec1b852a1f..6d756ec37b184 100644 --- a/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_type_hint_positional_argument.rs +++ b/crates/ruff_linter/src/rules/flake8_boolean_trap/rules/boolean_type_hint_positional_argument.rs @@ -115,6 +115,10 @@ pub(crate) fn boolean_type_hint_positional_argument( decorator_list: &[Decorator], parameters: &Parameters, ) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } // Allow Boolean type hints in explicitly-allowed functions. if is_allowed_func_def(name) { return; diff --git a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_namedtuple_subclass.rs b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_namedtuple_subclass.rs index dd84fd04dcfe5..6e8bcf50ce4a1 100644 --- a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_namedtuple_subclass.rs +++ b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_namedtuple_subclass.rs @@ -78,6 +78,10 @@ pub(crate) fn no_slots_in_namedtuple_subclass( stmt: &Stmt, class: &StmtClassDef, ) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let Some(Arguments { args: bases, .. }) = class.arguments.as_deref() else { return; }; diff --git a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_str_subclass.rs b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_str_subclass.rs index ea821ec352a17..7479dc7821e58 100644 --- a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_str_subclass.rs +++ b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_str_subclass.rs @@ -50,6 +50,10 @@ impl Violation for NoSlotsInStrSubclass { /// SLOT000 pub(crate) fn no_slots_in_str_subclass(checker: &mut Checker, stmt: &Stmt, class: &StmtClassDef) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let Some(Arguments { args: bases, .. }) = class.arguments.as_deref() else { return; }; diff --git a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_tuple_subclass.rs b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_tuple_subclass.rs index 4300d333ac622..5cf1dacb774d9 100644 --- a/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_tuple_subclass.rs +++ b/crates/ruff_linter/src/rules/flake8_slots/rules/no_slots_in_tuple_subclass.rs @@ -51,6 +51,10 @@ impl Violation for NoSlotsInTupleSubclass { /// SLOT001 pub(crate) fn no_slots_in_tuple_subclass(checker: &mut Checker, stmt: &Stmt, class: &StmtClassDef) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let Some(Arguments { args: bases, .. }) = class.arguments.as_deref() else { return; }; diff --git a/crates/ruff_linter/src/rules/pylint/rules/bad_dunder_method_name.rs b/crates/ruff_linter/src/rules/pylint/rules/bad_dunder_method_name.rs index 95dc16ab9cd6f..8e83c07cc1cdc 100644 --- a/crates/ruff_linter/src/rules/pylint/rules/bad_dunder_method_name.rs +++ b/crates/ruff_linter/src/rules/pylint/rules/bad_dunder_method_name.rs @@ -57,6 +57,10 @@ impl Violation for BadDunderMethodName { /// PLW3201 pub(crate) fn bad_dunder_method_name(checker: &mut Checker, method: &ast::StmtFunctionDef) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } // If the name isn't a dunder, skip it. if !method.name.starts_with('_') || !method.name.ends_with('_') { return; diff --git a/crates/ruff_linter/src/rules/pylint/rules/too_many_arguments.rs b/crates/ruff_linter/src/rules/pylint/rules/too_many_arguments.rs index 9b331571fb6cf..3b643abc353a7 100644 --- a/crates/ruff_linter/src/rules/pylint/rules/too_many_arguments.rs +++ b/crates/ruff_linter/src/rules/pylint/rules/too_many_arguments.rs @@ -59,6 +59,10 @@ impl Violation for TooManyArguments { /// PLR0913 pub(crate) fn too_many_arguments(checker: &mut Checker, function_def: &ast::StmtFunctionDef) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let semantic = checker.semantic(); let num_arguments = function_def diff --git a/crates/ruff_linter/src/rules/pylint/rules/too_many_positional_arguments.rs b/crates/ruff_linter/src/rules/pylint/rules/too_many_positional_arguments.rs index da30e224b806b..f0da07a6c0f0e 100644 --- a/crates/ruff_linter/src/rules/pylint/rules/too_many_positional_arguments.rs +++ b/crates/ruff_linter/src/rules/pylint/rules/too_many_positional_arguments.rs @@ -60,6 +60,10 @@ pub(crate) fn too_many_positional_arguments( checker: &mut Checker, function_def: &ast::StmtFunctionDef, ) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let semantic = checker.semantic(); // Count the number of positional arguments. diff --git a/crates/ruff_linter/src/rules/pylint/rules/too_many_public_methods.rs b/crates/ruff_linter/src/rules/pylint/rules/too_many_public_methods.rs index 26fca2d0786dc..5da094aacdd7c 100644 --- a/crates/ruff_linter/src/rules/pylint/rules/too_many_public_methods.rs +++ b/crates/ruff_linter/src/rules/pylint/rules/too_many_public_methods.rs @@ -105,6 +105,10 @@ pub(crate) fn too_many_public_methods( class_def: &ast::StmtClassDef, max_methods: usize, ) { + // https://github.com/astral-sh/ruff/issues/14535 + if checker.source_type.is_stub() { + return; + } let methods = class_def .body .iter()