From 598549d24e63250d84dc27a415d8545f1357d5ff Mon Sep 17 00:00:00 2001 From: Charlie Marsh Date: Wed, 19 Jul 2023 15:57:05 -0400 Subject: [PATCH] Fix incorrect reference in `extend-immutable-calls` documentation (#5890) --- crates/ruff/src/checkers/ast/mod.rs | 2 +- ...t_default.rs => function_call_in_argument_default.rs} | 2 +- crates/ruff/src/rules/flake8_bugbear/rules/mod.rs | 4 ++-- crates/ruff/src/rules/flake8_bugbear/settings.rs | 9 ++++++--- crates/ruff/src/rules/pyflakes/settings.rs | 3 +++ ruff.schema.json | 4 ++-- 6 files changed, 15 insertions(+), 9 deletions(-) rename crates/ruff/src/rules/flake8_bugbear/rules/{function_call_argument_default.rs => function_call_in_argument_default.rs} (97%) diff --git a/crates/ruff/src/checkers/ast/mod.rs b/crates/ruff/src/checkers/ast/mod.rs index 45811ad6b2..a16229d35a 100644 --- a/crates/ruff/src/checkers/ast/mod.rs +++ b/crates/ruff/src/checkers/ast/mod.rs @@ -4112,7 +4112,7 @@ where flake8_bugbear::rules::mutable_argument_default(self, arguments); } if self.enabled(Rule::FunctionCallInDefaultArgument) { - flake8_bugbear::rules::function_call_argument_default(self, arguments); + flake8_bugbear::rules::function_call_in_argument_default(self, arguments); } if self.settings.rules.enabled(Rule::ImplicitOptional) { ruff::rules::implicit_optional(self, arguments); diff --git a/crates/ruff/src/rules/flake8_bugbear/rules/function_call_argument_default.rs b/crates/ruff/src/rules/flake8_bugbear/rules/function_call_in_argument_default.rs similarity index 97% rename from crates/ruff/src/rules/flake8_bugbear/rules/function_call_argument_default.rs rename to crates/ruff/src/rules/flake8_bugbear/rules/function_call_in_argument_default.rs index d85d0d19e5..0e50957ebe 100644 --- a/crates/ruff/src/rules/flake8_bugbear/rules/function_call_argument_default.rs +++ b/crates/ruff/src/rules/flake8_bugbear/rules/function_call_in_argument_default.rs @@ -103,7 +103,7 @@ where } /// B008 -pub(crate) fn function_call_argument_default(checker: &mut Checker, arguments: &Arguments) { +pub(crate) fn function_call_in_argument_default(checker: &mut Checker, arguments: &Arguments) { // Map immutable calls to (module, member) format. let extend_immutable_calls: Vec = checker .settings diff --git a/crates/ruff/src/rules/flake8_bugbear/rules/mod.rs b/crates/ruff/src/rules/flake8_bugbear/rules/mod.rs index 0cb4402221..3a1cfb474f 100644 --- a/crates/ruff/src/rules/flake8_bugbear/rules/mod.rs +++ b/crates/ruff/src/rules/flake8_bugbear/rules/mod.rs @@ -8,7 +8,7 @@ pub(crate) use duplicate_value::*; pub(crate) use except_with_empty_tuple::*; pub(crate) use except_with_non_exception_classes::*; pub(crate) use f_string_docstring::*; -pub(crate) use function_call_argument_default::*; +pub(crate) use function_call_in_argument_default::*; pub(crate) use function_uses_loop_variable::*; pub(crate) use getattr_with_constant::*; pub(crate) use jump_statement_in_finally::*; @@ -42,7 +42,7 @@ mod duplicate_value; mod except_with_empty_tuple; mod except_with_non_exception_classes; mod f_string_docstring; -mod function_call_argument_default; +mod function_call_in_argument_default; mod function_uses_loop_variable; mod getattr_with_constant; mod jump_statement_in_finally; diff --git a/crates/ruff/src/rules/flake8_bugbear/settings.rs b/crates/ruff/src/rules/flake8_bugbear/settings.rs index 4de75f4d78..ee73d38c53 100644 --- a/crates/ruff/src/rules/flake8_bugbear/settings.rs +++ b/crates/ruff/src/rules/flake8_bugbear/settings.rs @@ -22,9 +22,12 @@ pub struct Options { extend-immutable-calls = ["fastapi.Depends", "fastapi.Query"] "# )] - /// Additional callable functions to consider "immutable" when evaluating, - /// e.g., the `no-mutable-default-argument` rule (`B006`) or - /// `no-function-call-in-dataclass-defaults` rule (`RUF009`). + /// Additional callable functions to consider "immutable" when evaluating, e.g., the + /// `function-call-in-default-argument` rule (`B008`) or `function-call-in-dataclass-defaults` + /// rule (`RUF009`). + /// + /// Expects to receive a list of fully-qualified names (e.g., `fastapi.Query`, rather than + /// `Query`). pub extend_immutable_calls: Option>, } diff --git a/crates/ruff/src/rules/pyflakes/settings.rs b/crates/ruff/src/rules/pyflakes/settings.rs index edf6150b1c..3bd19654f3 100644 --- a/crates/ruff/src/rules/pyflakes/settings.rs +++ b/crates/ruff/src/rules/pyflakes/settings.rs @@ -22,6 +22,9 @@ pub struct Options { /// Additional functions or classes to consider generic, such that any /// subscripts should be treated as type annotation (e.g., `ForeignKey` in /// `django.db.models.ForeignKey["User"]`. + /// + /// Expects to receive a list of fully-qualified names (e.g., `django.db.models.ForeignKey`, + /// rather than `ForeignKey`). pub extend_generics: Option>, } diff --git a/ruff.schema.json b/ruff.schema.json index a20e05447c..ab0d7d247e 100644 --- a/ruff.schema.json +++ b/ruff.schema.json @@ -720,7 +720,7 @@ "type": "object", "properties": { "extend-immutable-calls": { - "description": "Additional callable functions to consider \"immutable\" when evaluating, e.g., the `no-mutable-default-argument` rule (`B006`) or `no-function-call-in-dataclass-defaults` rule (`RUF009`).", + "description": "Additional callable functions to consider \"immutable\" when evaluating, e.g., the `function-call-in-default-argument` rule (`B008`) or `function-call-in-dataclass-defaults` rule (`RUF009`).\n\nExpects to receive a list of fully-qualified names (e.g., `fastapi.Query`, rather than `Query`).", "type": [ "array", "null" @@ -1515,7 +1515,7 @@ "type": "object", "properties": { "extend-generics": { - "description": "Additional functions or classes to consider generic, such that any subscripts should be treated as type annotation (e.g., `ForeignKey` in `django.db.models.ForeignKey[\"User\"]`.", + "description": "Additional functions or classes to consider generic, such that any subscripts should be treated as type annotation (e.g., `ForeignKey` in `django.db.models.ForeignKey[\"User\"]`.\n\nExpects to receive a list of fully-qualified names (e.g., `django.db.models.ForeignKey`, rather than `ForeignKey`).", "type": [ "array", "null"