Skip to content

Comments

feat: load login infos from configuration file#4

Merged
ymarcon merged 2 commits intomasterfrom
feat/config
Feb 19, 2026
Merged

feat: load login infos from configuration file#4
ymarcon merged 2 commits intomasterfrom
feat/config

Conversation

@ymarcon
Copy link
Member

@ymarcon ymarcon commented Feb 18, 2026

No description provided.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces YAML-based configuration loading for DataSHIELD login information, moving login/config structures to Pydantic models and wiring config discovery into the login builder.

Changes:

  • Add DSConfig / refactor DSLoginInfo to Pydantic models, with YAML load_from_file() and default-path load() discovery/merge.
  • Extend DSLoginBuilder to optionally pre-populate logins from configuration by server name; switch failure output from print to logging.
  • Add pytest coverage for YAML parsing/validation and update docs + dependencies/version.

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
datashield/interface.py Adds Pydantic models and YAML config loading/merging via default config file search paths.
datashield/api.py Allows DSLoginBuilder to load named servers from config; uses logging for connection failure reporting.
tests/test_config.py New tests covering YAML config parsing and Pydantic validation behaviors.
README.md Documents config search paths, merge behavior, and YAML schema.
pyproject.toml Bumps version to 0.3.0 and adds pydantic + PyYAML dependencies.
uv.lock Updates lockfile to include new runtime dependencies.
datashield/__init__.py Exposes DSConfig from the package top-level.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ymarcon ymarcon merged commit 6f4a317 into master Feb 19, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant