-
Notifications
You must be signed in to change notification settings - Fork 13
Stack configs #231
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
base: dev
Are you sure you want to change the base?
Stack configs #231
Conversation
`edflow.util.merge` allows for slimmer config definitions.
pesser
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great stuff! A couple of suggestions:
Let's try to ensure we use the same behavior everywhere. For example
edflow/edflow/eval/pipeline.py
Line 748 in 36a24ea
| config.update(other_config) |
Line 133 in 36a24ea
| config.update(yaml.full_load(f)) |
any other places? I think it would be best to move
load_config (edflow/edflow l. 24) to utils and rely on that function in all other places.I would also really like either an option or a dedicated command that just prints a final config resulting from a combination of
-b <configs..> and --key/path value command line arguments --- one can then easily check that the config looks as intended and pipe the resulting config to a file to put it under version control and reuse it.
I will put up a seperate pull request for unified behavior. This should not be too hard but needs proper documentation, such that we can make it easy to add new entry points, which follow the same principles. The fully updated and final config is displayed richt before iteration starts. I think this should be the point where it is printed, as afterwards, we want it to be fixed. |
pesser
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
Agreed! Let's implement the unified entry point handling. Nevertheless I think, we should enhance this PR to solve #255 and not start a new PR, as I am certain, that we would simply reinvent some features that this PR introduces (especially update and merge). What do you think? |
|
ping. Can we get this done soon so that we can make a new release version? |
This solves #216 partly. The stacking behavior is as described in the issue: Configs are merged using
edflow.util.mergewhich in turn usesedflow.util.updatein the background. Both of these functions are now properly documented, but there is no proper high level documentation.