Configuration¶
config ¶
Assembly: Fonky
Filename: config.py
Author: Terry D. Eppler
Created: 05-31-2022
Last Modified By: Terry D. Eppler
Last Modified On: 05-01-2025
config.py
Copyright © 2026 Terry Eppler
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
You can contact me at: terryeppler@gmail.com or eppler.terry@epa.gov
throw_if ¶
Raise a ValueError when a required value is empty.
Purpose
Provides a small, consistent guard for required arguments and configuration values. The
function treats falsy values as invalid and raises a ValueError containing the
caller-supplied argument or setting name.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Name of the argument or configuration value being validated. |
required |
value
|
object
|
Value to validate. |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
Raised when |
Source code in config.py
get_bool ¶
Read a Boolean environment variable.
Purpose
Converts environment-variable text into a deterministic Boolean value. Missing
variables return the caller-provided default. Values of 1, true, yes,
y, and on are treated as True; all other defined values are treated as
False.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Environment variable name. |
required |
default
|
bool
|
Default value used when the environment variable is not defined. |
False
|
Returns:
| Type | Description |
|---|---|
bool
|
Parsed Boolean value, or the original default value when parsing fails. |
Source code in config.py
get_int ¶
Read an integer environment variable.
Purpose
Parses an optional environment variable as an integer while preserving a safe default when the variable is missing, empty, or invalid. This keeps module import safe even when deployment configuration is incomplete.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Environment variable name. |
required |
default
|
int
|
Default integer value used when parsing is not possible. |
required |
Returns:
| Type | Description |
|---|---|
int
|
Parsed integer value or the supplied default value. |
Source code in config.py
get_float ¶
Read a floating-point environment variable.
Purpose
Parses an optional environment variable as a float while preserving a safe default when the variable is missing, empty, or invalid. This helper supports numeric configuration without making module import dependent on perfect environment state.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Environment variable name. |
required |
default
|
float
|
Default floating-point value used when parsing is not possible. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Parsed floating-point value or the supplied default value. |
Source code in config.py
get_path ¶
Read a path environment variable.
Purpose
Resolves optional filesystem configuration from the environment. Missing variables return the resolved default path, and invalid values fall back to the resolved default path rather than interrupting module import.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Environment variable name. |
required |
default
|
Path
|
Default path used when the environment variable is not defined. |
required |
Returns:
| Type | Description |
|---|---|
Path
|
Resolved path value or the resolved default path. |
Source code in config.py
get_text ¶
Read a text environment variable.
Purpose
Returns an environment variable as text while preserving the supplied default when the variable is missing or empty. This keeps optional configuration centralized and stable for callers that import the module early in application startup.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Environment variable name. |
required |
default
|
str
|
Default text value. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Environment value or supplied default. |