finm.data._credentials#
Credential handling utilities for data module.
Provides credential resolution with the following precedence:
CLI argument (highest priority)
Environment variable
.env file
Interactive prompt (if terminal available)
Module Contents#
Functions#
Get credentials with precedence: CLI arg > env var > .env file > interactive. |
|
Get data directory with precedence: argument > env var > .env > default. |
|
Validate that required credentials are present. |
API#
- finm.data._credentials.get_credentials(wrds_username: Optional[str] = None, env_file: Optional[pathlib.Path] = None, interactive: bool = True) dict[str, Optional[str]][source]#
Get credentials with precedence: CLI arg > env var > .env file > interactive.
Parameters
wrds_username : str, optional WRDS username from CLI argument (highest priority). env_file : Path, optional Path to .env file. Defaults to .env in current directory. interactive : bool, default True If True and credential not found, prompt user interactively.
Returns
dict Dictionary with credential keys and values.
- finm.data._credentials.get_data_dir(data_dir: Optional[str | pathlib.Path] = None, env_file: Optional[pathlib.Path] = None) pathlib.Path[source]#
Get data directory with precedence: argument > env var > .env > default.
Parameters
data_dir : str or Path, optional Data directory from argument (highest priority). env_file : Path, optional Path to .env file.
Returns
Path Resolved data directory path.
- finm.data._credentials.validate_credentials(required: list[str], credentials: dict[str, Optional[str]]) None[source]#
Validate that required credentials are present.
Parameters
required : list[str] List of required credential keys. credentials : dict Dictionary of credential key-value pairs.
Raises
ValueError If any required credential is missing.