Closed
Description
We want to support different sources of configuration.
These sources might be "sync" or "async" and should be abstracted via a trait mechanism.
What sources do we want to have?
Some "default" sources might be shipped with the crate:
- Filesystem (sync)
- Filesystem (async with tokio)
- Environment
These sources can be compiletime feature-gated.
What a source should support
A "conifguration value source" should support several things:
- Deserializing into an (internal, common) format
- Updating the already-fetched configuration values
- A human-readable description where the configuration values came from
- To be able to construct nice error messages if necessary
More?