Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Config schema #178

Open
novopl opened this issue Oct 16, 2018 · 0 comments
Open

Config schema #178

novopl opened this issue Oct 16, 2018 · 0 comments
Labels
Projects
Milestone

Comments

@novopl
Copy link
Owner

novopl commented Oct 16, 2018

What?

We should have a way to do some kind of config validation or at least the ability to print the whole config along with all the defaults.

Why?

  • Validation. Ability to validate config on startup can detect a lot of configuration problems very early on.
  • Config generation. Ability to generate much more complex config files. Those can be used as examples or scaffolds.
  • Exporting configuration. Ability to export the current configuration along with default values (those could theoretically change between versions).

How?

Dynamic schema definition across modules

The schema could be built dynamically in the same way as requirements are. Each module containing the CLI commands definition should also call conf.schema() at the top to define
what config values it uses.

Merging all schemas into one

This might be tricky if the definitions of fields differ. Some kind of reconciliation algorithm is needed so if we have multiple definitions for the same field we can either merge them into one or fail.

@novopl novopl added this to the 1.0 milestone Oct 16, 2018
@novopl novopl added this to Backlog in 1.0 via automation Oct 16, 2018
@novopl novopl moved this from Backlog to Could in 1.0 Oct 23, 2018
@novopl novopl moved this from Could to Capture in 1.0 Nov 4, 2018
@novopl novopl removed the idea label Nov 7, 2018
@novopl novopl moved this from Capture to Doing in 1.0 Nov 7, 2018
@novopl novopl moved this from Doing to Should in 1.0 Nov 9, 2018
@novopl novopl moved this from Should to Doing in 1.0 Nov 9, 2018
@novopl novopl moved this from Doing to Should in 1.0 Nov 9, 2018
@novopl novopl moved this from Should to Could in 1.0 Jan 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
1.0
  
Could
Development

No branches or pull requests

1 participant