Before the change to commander, the CLI used oclif for defining commands and specifying flags. oclif allowed for mutually exclusive flags when running commands—for example, when running deploy with --prod, the user shouldn't also be able to use --prodIfUnlocked. Initially, commander did not allow for mutually exclusive flags, but later implemented support for it. This PR re-implements the feature as it existed prior to moving to commander. We identified the conflicting flags by pulling in a commit that is chronologically prior to the issue this PR addresses.
For us to review and ship your PR efficiently, please perform the following steps:
[ ] Open a bug/issue before writing your code 🧑💻. This ensures we can discuss the changes and get feedback from everyone that should be involved. If you`re fixing a typo or something that`s on fire 🔥 (e.g. incident related), you can skip this step.
[ ] Read the contribution guidelines 📖. This ensures your code follows our style guide and
passes our tests.
[ ] Update or add tests (if any source code was changed or added) 🧪
[ ] Update or add documentation (if features were changed or added) 📝
[ ] Make sure the status checks below are successful ✅
A picture of a cute animal (not mandatory, but encouraged)
Implemented feature from
commander
to prevent mutually exclusive flags from being run in the same command.🎉 Thanks for submitting a pull request! 🎉
Summary
Fixes #3978
Before the change to
commander
, the CLI usedoclif
for defining commands and specifying flags.oclif
allowed for mutually exclusive flags when running commands—for example, when runningdeploy
with--prod
, the user shouldn't also be able to use--prodIfUnlocked
. Initially,commander
did not allow for mutually exclusive flags, but later implemented support for it. This PR re-implements the feature as it existed prior to moving tocommander
. We identified the conflicting flags by pulling in a commit that is chronologically prior to the issue this PR addresses.For us to review and ship your PR efficiently, please perform the following steps:
A picture of a cute animal (not mandatory, but encouraged)