This seems like a neat idea, but especially the dependency-cruise cli uses quite a lot of the functionality in commander (defaults, validation, negation, kebab-to-camel, help formatting), part of which we'd have to re-implement locally, which wouldn't add to the reliability or maintainability of our code.
Hence: closed without merging.
Description
uses parseArgs instead of commander for
[x] depcruise-baseline
[x] depcruise-fmt
[ ] dependency-cruise
Motivation and Context
Reduce dependencies on third party packages & reduce installed footprint.
Reduces the start-up time with ~10ms (on my admittedly slow machine) because the ~100kb of commander modules don't have to be loaded anymore.
B.t.w.
we can only get away with this replacement because dependency-cruiser's command line interface is relatively straightforward (just options & arguments, no sub-commands).
commander is still an excellent and easy to use command line parser
How Has This Been Tested?
[x] green ci
Types of changes
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Documentation only change
[x] Refactor (non-breaking change which fixes an issue without changing functionality)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
Checklist
[x] :book:
My change doesn't require a documentation update, or ...
it does and I have updated it
[x] :balance_scale:
The contribution will be subject to The MIT license, and I'm OK with that.
This seems like a neat idea, but especially the dependency-cruise cli uses quite a lot of the functionality in commander (defaults, validation, negation, kebab-to-camel, help formatting), part of which we'd have to re-implement locally, which wouldn't add to the reliability or maintainability of our code.
Hence: closed without merging.
Description
uses parseArgs instead of commander for
Motivation and Context
B.t.w.
How Has This Been Tested?
Types of changes
Checklist
[x] :book:
[x] :balance_scale: