Uh oh!
There was an error while loading. Please reload this page.
feat: load login infos from configuration file - #4
Conversation
There was a problem hiding this comment.
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/ refactorDSLoginInfoto Pydantic models, with YAMLload_from_file()and default-pathload()discovery/merge. - Extend
DSLoginBuilderto optionally pre-populate logins from configuration by server name; switch failure output fromprintto 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.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
No description provided.