Skip to content

Commit 55f6175

Browse files
committed
Avoid using Any in BaseSettings signature to avoid mypy errors
When `--disallow-any-explicit`, this raises a mypy error when using the plugin (which synthesizes the `__init__` method). Also use PEP 570 positional only argument for `self`.
1 parent 65929cd commit 55f6175

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

pydantic_settings/main.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,8 @@ class BaseSettings(BaseModel):
140140
"""
141141

142142
def __init__(
143-
__pydantic_self__,
143+
self,
144+
/,
144145
_case_sensitive: bool | None = None,
145146
_nested_model_default_partial_update: bool | None = None,
146147
_env_prefix: str | None = None,
@@ -152,7 +153,7 @@ def __init__(
152153
_env_parse_enums: bool | None = None,
153154
_cli_prog_name: str | None = None,
154155
_cli_parse_args: bool | list[str] | tuple[str, ...] | None = None,
155-
_cli_settings_source: CliSettingsSource[Any] | None = None,
156+
_cli_settings_source: CliSettingsSource[object] | None = None,
156157
_cli_parse_none_str: str | None = None,
157158
_cli_hide_none_type: bool | None = None,
158159
_cli_avoid_json: bool | None = None,
@@ -167,9 +168,8 @@ def __init__(
167168
_secrets_dir: PathType | None = None,
168169
**values: Any,
169170
) -> None:
170-
# Uses something other than `self` the first arg to allow "self" as a settable attribute
171171
super().__init__(
172-
**__pydantic_self__._settings_build_values(
172+
**self._settings_build_values(
173173
values,
174174
_case_sensitive=_case_sensitive,
175175
_nested_model_default_partial_update=_nested_model_default_partial_update,

0 commit comments

Comments
 (0)