Repository navigation
Pass configured CAMS credentials through provider assembly; separate missing optional packages from broken imports - #42
Open
SpectraWorksVision wants to merge 2 commits into
Conversation
MarcYin
force-pushed
the
feat/refactor
branch
from
October 12, 2026 11:44
f53d740 to
65bde66
Compare
Owner
|
Thanks for this PR! A heads-up: I've moved further experimental code out of the v2 development branch, which meant rewriting the history of Could you rebase it onto the current git remote add upstream https://github.com/MarcYin/SIAC.git # if not already set
git fetch upstream feat/refactor
git rebase --onto upstream/feat/refactor ad2cdf2 feature/v2-provider-wiring
git push --force-with-lease origin feature/v2-provider-wiringSorry for the extra step, and thanks again! Generated by Claude Code |
SpectraWorksVision
force-pushed
the
feature/v2-provider-wiring
branch
from
October 14, 2026 21:37
89dc6fd to
457238d
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes we needed to run v2 on our data. Includes unit tests
When no auth object is passed in, _build_cams_provider and _resolve_bestpixel_anchor_atmo_source built the CAMSProvider with auth=None. A configured ADS key therefore never reached cdsapi, and CAMS downloads failed even though the key was set. Both now fall back to CredentialManager.from_config(config).
app/_assembly_providers.py, app/_assembly_surface.py
Test: tests/unit/test_cams_credentials.py
Several optional imports caught every ImportError and reported it as “package not installed”. When the package was installed but failed to import, for example a broken dependency inside earthaccess, the error said “install earthaccess”, which hides the real cause. Each site now only reports “not installed” when the ModuleNotFoundError is for that package itself. Any other import failure is raised as “installed but failed to import”, with the original error chained.
cdsapi (adapters/atmo/cams.py), earthaccess (adapters/data/earthaccess_source.py), pyhdf (adapters/earthdata_common.py), omnicloudmask (algorithms/cloud/providers/omnicloudmask.py), s3fs (algorithms/rt/lut/http_zip_store.py), and the shared optional-dependency loader in adapters/auth.py
Test: tests/unit/test_optional_import_errors.py
10 files, +202 / -12, most of it tests.