-
Notifications
You must be signed in to change notification settings - Fork 744
Config schema #4201
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 #4201
Conversation
Signed-off-by: Ben Sherman <[email protected]>
✅ Deploy Preview for nextflow-docs-staging canceled.
|
Signed-off-by: Ben Sherman <[email protected]>
81f7cb7 to
8a43489
Compare
|
This is a big work but I don't think it's worth of. The plan is to rely on an alternative configuration mechanism providing a built-in type system |
|
Agreed 👍 this PR will be a good reference for the config overhaul |
Signed-off-by: Ben Sherman <[email protected]>
Signed-off-by: Ben Sherman <[email protected]>
|
Rebooting this PR since we didn't go with the Micronaut config. Instead I am trying a custom annotation approach so that the config schema can be typed. I got it working for a few config scopes but there are currently two challenges:
Anyway, just wanted to get a basic prototype working. I think we can address these challenges if we decide to keep and improve the Nextflow config format rather than move to a new one. Micronaut config and picocli should be good sources of inspiration for any bells and whistles we might need. |
5a93547 to
27345a6
Compare
|
Closing in favor of #5816 Some of this code may be useful later if/when we want to unify the ConfigScope classes with existing config classes (CondaConfig, Manifest, etc). |
Close #4200
Adds a helper method to check a config scope for invalid options. Since config options are defined in a dynamic and distributed manner, this approach allows them to be validated in the same way.
Enabled with
NXF_ENABLE_STRICT_CONFIG. UseNXF_ENABLE_STRICTto turn the warning into an error.TODO:
docker,singularity, etcexecutormailnotificationwave