Skip to content

Commit e83ac4c

Browse files
authored
Refactor sources.py into a subpackage (#546) (#548)
1 parent a1710b2 commit e83ac4c

22 files changed

+2841
-2451
lines changed

pydantic_settings/__init__.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from .exceptions import SettingsError
12
from .main import BaseSettings, CliApp, SettingsConfigDict
23
from .sources import (
34
CLI_SUPPRESS,
@@ -18,40 +19,39 @@
1819
PydanticBaseSettingsSource,
1920
PyprojectTomlConfigSettingsSource,
2021
SecretsSettingsSource,
21-
SettingsError,
2222
TomlConfigSettingsSource,
2323
YamlConfigSettingsSource,
2424
get_subcommand,
2525
)
2626
from .version import VERSION
2727

2828
__all__ = (
29+
'CLI_SUPPRESS',
30+
'AzureKeyVaultSettingsSource',
2931
'BaseSettings',
30-
'DotEnvSettingsSource',
31-
'EnvSettingsSource',
3232
'CliApp',
33-
'CliSettingsSource',
34-
'CliSubCommand',
35-
'CliSuppress',
36-
'CLI_SUPPRESS',
37-
'CliPositionalArg',
3833
'CliExplicitFlag',
3934
'CliImplicitFlag',
4035
'CliMutuallyExclusiveGroup',
36+
'CliPositionalArg',
37+
'CliSettingsSource',
38+
'CliSubCommand',
39+
'CliSuppress',
40+
'DotEnvSettingsSource',
41+
'EnvSettingsSource',
42+
'ForceDecode',
4143
'InitSettingsSource',
4244
'JsonConfigSettingsSource',
4345
'NoDecode',
44-
'ForceDecode',
45-
'PyprojectTomlConfigSettingsSource',
4646
'PydanticBaseSettingsSource',
47+
'PyprojectTomlConfigSettingsSource',
4748
'SecretsSettingsSource',
4849
'SettingsConfigDict',
4950
'SettingsError',
5051
'TomlConfigSettingsSource',
5152
'YamlConfigSettingsSource',
52-
'AzureKeyVaultSettingsSource',
53-
'get_subcommand',
5453
'__version__',
54+
'get_subcommand',
5555
)
5656

5757
__version__ = VERSION

pydantic_settings/exceptions.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
class SettingsError(ValueError):
2+
"""Base exception for settings-related errors."""
3+
4+
pass

pydantic_settings/main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from pydantic.dataclasses import is_pydantic_dataclass
1515
from pydantic.main import BaseModel
1616

17+
from .exceptions import SettingsError
1718
from .sources import (
1819
ENV_FILE_SENTINEL,
1920
CliSettingsSource,
@@ -26,7 +27,6 @@
2627
PydanticBaseSettingsSource,
2728
PydanticModel,
2829
SecretsSettingsSource,
29-
SettingsError,
3030
get_subcommand,
3131
)
3232

0 commit comments

Comments
 (0)