-
Notifications
You must be signed in to change notification settings - Fork 217
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
refactor: unify TypeScript project #4404
Conversation
Is typechecking still included in |
What is the advantage to moving the |
I've split that out to #4416
One is that we can now do
I think there can still be overrides in sub-directories. I share the desire to have some packages go stricter sooner. microsoft/TypeScript#28306 talks about this and here's an example of making nested configs work: microsoft/TypeScript#28306 (comment) Though we might be better off on a per-file than per-package basis: |
I'm also a little concerned this might hide some ambient style issues, were a package on its own might not be valid, but taken in combination with other packages would be fine.
If the sub directory configs are automatically picked up and create a scope, that might be sufficient. I think I still don't quite understand the motivation. I'd like to be able to run |
Noting this other motivation: to support refactoring. If we had a root project that others inherit from I think @warner wouldn't have run into the problem with |
How would type checking a single package work with a root config? This is actually something I'm slightly frustrated at with the prettier change, that I cannot check the formatting when in |
Each package config inherits the root config but still defines its own. So I don't think it would change the
I had assumed that only CI would want to check Prettier and people would want to fix Prettier (since it's automatic and safe). If it's worth having a per-package check for it we can add that back. Personally I just have my IDE format to pretty on save. |
New command, lint:all-types, that does a typecheck over the whole repo at once. On my machine it takes 7s, versus minutes for typechecking within each package. We want both to continue working so this leaves those alone and adds new command that runs in the toplevel. This isn't yet in CI.
ab8aad4
to
1fd37a3
Compare
"better-sqlite3": "^8.2.0", | ||
"better-sqlite3": "^9.1.1", |
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.
I see discussion of some pretty fine details about sqlite among kernel devs. @gibson042 are you confident that this upgrade is OK? Or should it get review by others?
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.
The major version bump was just to drop Node.js 16, so I'd be surprised if this affects anything not covered by unit tests. @warner gets deeper on this than I do, though.
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.
runtime change so pulled out to #8590
severely bitrotted |
Description
I was trying to create a type coverage report and along the way it was easiest to unify the type checking into one TypeScript project. With this the checker can be more comprehensive and it turns out there are over a thousand type errors that were masked by the earlier config.
EDIT: having a single TypeScript project will solve OOM in eslint
https://github.com/typescript-eslint/typescript-eslint/issues/1192#issuecomment-1153418862
Security Considerations
Documentation Considerations
Testing Considerations