Skip to content

Commit 92308e3

Browse files
committed
chore: typing / docstring cleanup
1 parent 5b57ca0 commit 92308e3

File tree

2 files changed

+13
-15
lines changed

2 files changed

+13
-15
lines changed

pydantic_ssm_settings/settings.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import logging
2-
from typing import Any, Tuple, Type
2+
from typing import Any, Optional, Tuple, Type
33

44
from pydantic_settings import (
55
BaseSettings,
@@ -26,7 +26,7 @@ class BaseSettingsSsmWrapper(BaseSettings):
2626
__pydantic_private__ exception
2727
"""
2828

29-
def __init__(self, *args, _ssm_prefix: str = None, **kwargs: Any) -> None:
29+
def __init__(self, *args, _ssm_prefix: Optional[str] = None, **kwargs: Any) -> None:
3030
"""
3131
Args:
3232
_ssm_prefix: Prefix for all ssm parameters. Must be an absolute path,

pydantic_ssm_settings/source.py

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import logging
44
import os
55
from pathlib import Path
6-
from typing import TYPE_CHECKING, Any
6+
from typing import TYPE_CHECKING, Any, Optional
77

88
import boto3
99
from botocore.client import Config
@@ -12,9 +12,7 @@
1212
from pydantic._internal._utils import lenient_issubclass
1313
from pydantic.fields import FieldInfo
1414
from pydantic_settings import BaseSettings
15-
from pydantic_settings.sources import (
16-
EnvSettingsSource,
17-
)
15+
from pydantic_settings.sources import EnvSettingsSource
1816

1917
if TYPE_CHECKING:
2018
from mypy_boto3_ssm.client import SSMClient
@@ -31,8 +29,8 @@ class AwsSsmSettingsSource(EnvSettingsSource):
3129
def __init__(
3230
self,
3331
settings_cls: type[BaseSettings],
34-
case_sensitive: bool = None,
35-
ssm_prefix: str = None,
32+
case_sensitive: Optional[bool] = None,
33+
ssm_prefix: Optional[str] = None,
3634
):
3735
# Ideally would retrieve ssm_prefix from self.config
3836
# but need the superclass to be initialized for that
@@ -62,9 +60,7 @@ def client_config(self) -> Config:
6260
def _load_env_vars(
6361
self,
6462
):
65-
"""
66-
Access env_prefix instead of ssm_prefix
67-
"""
63+
# NOTE: env_prefix represents the ssm_prefix
6864
if not Path(self.env_prefix).is_absolute():
6965
raise ValueError("SSM prefix must be absolute path")
7066

@@ -83,9 +79,11 @@ def _load_env_vars(
8379
Path(parameter["Name"]).relative_to(self.env_prefix).as_posix()
8480
)
8581
output[
86-
self.env_prefix + key
87-
if self.case_sensitive
88-
else self.env_prefix.lower() + key.lower()
82+
(
83+
self.env_prefix + key
84+
if self.case_sensitive
85+
else self.env_prefix.lower() + key.lower()
86+
)
8987
] = parameter["Value"]
9088

9189
except ClientError:
@@ -143,7 +141,7 @@ def __call__(self) -> dict[str, Any]:
143141
)
144142
except ValueError as e:
145143
raise SettingsError(
146-
f'error parsing value for field "{field_name}" from source "{self.__class__.__name__}"' # noqa
144+
f'error parsing value for field "{field_name}" from source "{self.__class__.__name__}"' # noqa
147145
) from e
148146

149147
if field_value is not None:

0 commit comments

Comments
 (0)