-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
feat: create standalone project-service, tsconfig-utils packages #11182
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
base: main
Are you sure you want to change the base?
feat: create standalone project-service, tsconfig-utils packages #11182
Conversation
Thanks for the PR, @JoshuaKGoldberg! typescript-eslint is a 100% community driven project, and we are incredibly grateful that you are contributing to that community. The core maintainers work on this in their personal time, so please understand that it may not be possible for them to review your work immediately. Thanks again! 🙏 Please, if you or your company is finding typescript-eslint valuable, help us sustain the project by sponsoring it transparently on https://opencollective.com/typescript-eslint. |
✅ Deploy Preview for typescript-eslint ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
View your CI Pipeline Execution ↗ for commit 9364664.
☁️ Nx Cloud last updated this comment at |
) { | ||
const options = typeof optionsRaw === 'object' ? optionsRaw : {}; | ||
|
||
validateDefaultProjectForFilesGlob(options.allowDefaultProject); |
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 created this populateProjectService
function here so that it could be what runs validateDefaultProjectForFilesGlob
, instead of createProjectService
. This way we don't need to also move validateDefaultProjectForFilesGlob
into the new @typescript-eslint/project-service
package.
In other words: validating default project globs is not a part of the new package. That's still specific to typescript-estree.
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #11182 +/- ##
==========================================
- Coverage 90.92% 90.91% -0.01%
==========================================
Files 499 501 +2
Lines 50845 50867 +22
Branches 8384 8382 -2
==========================================
+ Hits 46231 46246 +15
- Misses 4599 4606 +7
Partials 15 15
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
b32a113
to
caa57bb
Compare
PR Checklist
@typescript-eslint/project-service
package #11181Overview
Creates two new packages:
@typescript-eslint/project-service
: with thecreateProjectService
function used by@typescript-eslint/typescript-estree
within@typescript-eslint/parser
@typescript-eslint/tsconfig-utils
: with thegetParsedConfigFile
function used in both the newly movedcreateProjectService
and not-moveduseProvidedPrograms
functionNeither have any runtime dependencies on any ESLint or other typescript-eslint packages. The only internal production package dependency is
project-service
relying on@typescript-eslint/types
for the sharedProjectServiceOptions
interface.Notably does not change the
@typescript-eslint/types
package, even though that's whereProjectServiceOptions
is declared right now. Moving that interface into the new@typescript-eslint/project-service
package would meanParserOptions
would have a dependency on a package with runtime code. No go.💖