[phase 4] Viper Framework #11788
Labels
Component: CLI
Component: General
Changes throughout the code base
Type: Feature
Type: RFC
Request For Comment
This issue tracks the laying out of a standard framework of using viper within the Vitess codebase.
Motivation
Vitess is a huge codebase with lots of different areas and conventions and ways of doing things. Configuration is one of the few aspects that really, truly benefits from a consistency of expectations for both developers ("I need to add a new flag/option, where/how do I put it" and "I need to change a default value / mark something as deprecated, what's the Right Way ™️ ") and users ("I need to change/set a timeout/threshold/whatever, how can I do that" and "how do I see all the possible options").
Standardizing on some framework helps to satisfy both sides of this equation, while hopefully minimizing the costs introduced (namely: friction for net-new work; problems are harder to google ("is it the underlying viper code or the framework that's buggy"); and the full feature set of the underlying library the framework sits in front of is usually limited/hampered in some way).
Goals
The text was updated successfully, but these errors were encountered: