Skip to content

extract information from STAC extensions - #71

Open
keewis wants to merge 10 commits into
stac-utils:mainfrom
keewis:extensions
Open

keewis wants to merge 10 commits into
stac-utils:mainfrom
keewis:extensions

Conversation

@keewis

@keewis keewis commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

xpystac used to rely mainly on the xarray STAC extension to infer any additional parameters needed to open the data. That extension has been superseded by the storage and auth extensions, and additionally there are now additional extensions like the alternate extension with additional ways to describe metadata needed to open the data.

This mainly adds infrastructure to extract the metadata, there still needs to be a translation layer that converts to xarray options.

Checklist

  • Linting: Code is formatted and linted
  • Tests: Tests pass. I have included new tests for these changes where applicable.
  • Edge Cases: I have manually verified "unhappy paths" and edge cases beyond the basic success criteria (e.g., database connection timeouts, malformed input, strict mapping rejections).
  • Documentation: I have updated README.md to reflect any new environment variables, configuration changes, or breaking updates.
  • Accountability: I can explain the implementation logic for every line of code submitted.

AI tool usage

none, all hand-written.

@jsignell

Copy link
Copy Markdown
Member

Thanks for opening this @keewis! I like the separate modules a lot.

@jsignell

Copy link
Copy Markdown
Member

Having started looking through this a bit I'm wondering if this could be an opportunity to use pystac extension classes rather than parsing the json.

@keewis

keewis commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor Author

most likely. I had a look at this when I implemented this a couple of months ago but decided it was too complicated at the time: AFAIR a alternate asset extension didn't exist back then (I didn't check if it does now), and implementing it myself took more than the little mental capacity I had at the time.

Once that exists, though, I'd be happy to change the PR.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants