-
Notifications
You must be signed in to change notification settings - Fork 13
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
Introduction of global and hiding flags and options #24
Conversation
Hello! I am the creator and the only maintainer of Optimus library and also the creator of the original repo that was later moved to this org. Due to different reasons, in the recent year, I was a bit too busy and somehow overlooked your PR 😓 However, I still support the library (https://github.com/savonarola/optimus) in another repo to which I have access. Also I update the corresponding package (https://hex.pm/packages/optimus/0.4.0) from it, and I have no plans to retire 😅 So if you would like to make a contribution, you may open a PR to https://github.com/savonarola/optimus, and I will try to integrate it into a new version of Optimus. |
Hi. Thanks for the information. I will try my best and hopefully create soon a PR. |
This PR should implement #11.
The current implementation merges global options/flags into all subcommands. On this way collisions can be detected (in case someone tries to redefine a property with the same short/long). In addition, every subcommand is a complete definition which makes parsing of global props easy.
Also I implemented hiding of properties in the same PR because it is used to hide global props in the subcommands. I know some CLI tools like kubectl that do not repeat global properties on the subcommands.