-
Notifications
You must be signed in to change notification settings - Fork 995
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
chore(ts): tsify satellite modules #1596
Conversation
No longer rely on fs.readFileSync or path.dirname to throw on non-resolvable config.extends path (throw explicitely instead).
To remove false no-unused-vars positives with typescript. See: https://standardjs.com/#typescript
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
again, once we're a ways along with the conversion, I would be excited to see us drop eslint
for gts
, but this is looking awesome (and I appreciate the incremental approach).
Even though none of these changes are breaking, I would like to make TypeScript part of the next major of yargs (this will be a big announcement).
Do we really have to wait for yargs not to support node 8 anymore for this? Linting tools are only dev dependencies, so couldn't we just remove linting checks from node 8 tests? And move to gts 2.x for other node versions? |
@mleguen I would like to wait because many (probably thousands) of people using yargs are relying on |
@bcoe I agree with you on the fact that publishing our own types should be considered as a breaking change (this would impact me as a yargs user), but as long as we do not tsify So IMHO, this current PR should not be considered as a breaking change, nor switching to gts 2.x and disabling linting in node 8 test (which was what I was suggesting in my previous message). Would this be OK for you? |
@mleguen this makes sense to me, as long as we keep the Node 8 tests for the time being for the suite, and make it a breaking change once |
Part of the 2nd step of #1586: this PR tsifies all "satellite" modules of yargs, leaving all "core" modules still in js (yet).
Although it touches 21 files:
Points of attention, however:
apply-extends
. I added an explicit exception to cover this case (though it was already implicitely handled, as it madefs
throw a few lines below)