halconfigurer: Overhaul of configurer, see below for details#112
Open
halconfigurer: Overhaul of configurer, see below for details#112
Conversation
- .configure() method of internal HalConfigurer objects now defines a list of
option strings
- External callers should now instantiate a HalConfigurer object, and either
iterate through the options and call .ask(), or .validate() an option
- .ask() now takes a function argument for how to receive the value
Contributor
Author
|
Oh yeah, Travis builds are gonna be hella broken. Will fix the tests in a later commit |
mracine
reviewed
Oct 7, 2019
|
|
||
| if missing and not fill_default: | ||
| str = "Missing key" + ("s" if len(missing) > 1 else "") + ": " + ", ".join(missing) | ||
| raise KeyError(str) |
Contributor
There was a problem hiding this comment.
I think you need a return ret here?
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
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.
So this overhaul became a bit more of a mess than expected, but I'm liking so far how it is coming out.
I had two main objectives:
So far, both of these options probably should work, I will be updating this branch as I fix/tweak things.
Changelog (so far):
.configure()method of internal HalConfigurer objects now defines a list of option strings.ask(), or.validate()an option.ask()now takes a function argument for how to receive the valuedepends=optional parameter to options, since.configure()onHalConfigurerobjects no longer is the code that prompts users, therefore breaking conditional prompts like inircNOTE: I am unable to test any of these changes outside of the
main.pycli due to halibot-extra/irc#3, hooray