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

(Unified) schema for the config file #302

Open
Tracked by #462
zain-sohail opened this issue Nov 24, 2023 · 2 comments
Open
Tracked by #462

(Unified) schema for the config file #302

zain-sohail opened this issue Nov 24, 2023 · 2 comments
Labels
core request for a core functionality enhancement New feature or request

Comments

@zain-sohail
Copy link
Member

Currently it's really hard for users and even developers to know what goes in the config file. Like which parameters are being used and which not.

Hence, we need to define a schema so that the available keys and their meanings can be understood.

In addition, if we can unify especially the common things in the loaders to similar keys, that'd be ideal. One example is the channel list (group names and keys) and aliases that differ in all loaders.

Once we have a schema, which we can define using jsonschema (or others), we can validate everytime during parsing config if it is valid.

Problems I see if we do this: The older config files might become unusable so a way has to be figured on how to work with that. Or maybe we just introduce the newer config file schema in v1.0.0

@zain-sohail zain-sohail added core request for a core functionality enhancement New feature or request labels Nov 24, 2023
@zain-sohail
Copy link
Member Author

#330 partly covers this. The old config files can still be used.

For MPES to use this config model, they'd need to adhere to the channels subsection currently in use by flash and sxp loader.

@zain-sohail zain-sohail mentioned this issue Jul 2, 2024
11 tasks
@zain-sohail
Copy link
Member Author

We would also like to document which functions make use of which config parameters. Not sure if it's possible to do with pydantic alone but should be looked into.

This is useful for new users to know what is possible to configure

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core request for a core functionality enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant