-
Notifications
You must be signed in to change notification settings - Fork 51
Refactor client cli command parameters #2012
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dlachaume
approved these changes
Oct 17, 2024
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.
LGTM 🚀
jpraynaud
approved these changes
Oct 17, 2024
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.
LGTM 👍
…ents Only apply to `--json` but allow to easily add more if needed.
Similar but simpler than the one used by config, this will allow to reduce confusion in our commands by only using the locally defined ConfigParameters.
Using crate defined `ConfigParameters`.
Instead of passing only config parameters, this design allow to add other shared dependencies such as a common logger.
Allowing subcommands to check it if needed.
* mithril-client-cli from `0.9.15` to `0.9.16`
a643ee7 to
13e97a9
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Content
This PR change how parameters are passed to client-cli commands: Instead of providing a
ConfigBuilderfrom the config crate aCommandContextnew struct is passed so we can provide more than just configuration parameters to sub-commands.This change is needed in order to remove
slog_scopeso we can share the main logger defined in the binmain.Two others changes are included:
SharedArgsstruct so to define in one place arguments shared between all commands (only the--jsonoption for now). It's flattened so this doesn't change the api.ConfigParameters. Using both crate to fetch the same thing (parameters) was quite confusing, this is changed so config is only used for its capacity of reading multiple files formats and to provide the initial hasmap of parameters.Pre-submit checklist