-
-
Notifications
You must be signed in to change notification settings - Fork 514
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(linter): consolidate file loading logic #6130
refactor(linter): consolidate file loading logic #6130
Conversation
Your org has enabled the Graphite merge queue for merging into mainAdd the label “0-merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix. You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link. |
This stack of pull requests is managed by Graphite. Learn more about stacking. |
@Boshen I want to use |
21cfcae
to
185a594
Compare
CodSpeed Performance ReportMerging #6130 will not alter performanceComparing Summary
|
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.
so now .d.ts files (and the like) will be linted as well
We should never lint .d.ts
files from my experience, they are never hand written.
I heard that some companies write them by hand |
@Boshen this change (linting Now I need to go back and check that |
b61adda
to
e9c8675
Compare
Update: The LSP does not respect gitignores, so I've re-added the |
Merge activity
|
# Human Description Low on time, so this one is short. - consolidate source file and partial loader logic into `loader` module. I have more plans for this. - ~LSP no longer uses `VALID_EXTENSIONS`, so now `.d.ts` files (and the like) will be linted as well~ LSP does not respect `.gitignore` files, so this change was reverted. # AI Description ## Refactor Loader and Partial Loader This PR refactors the loader and partial loader functionality in the oxc_linter crate: * Introduce a new `Loader` struct with methods for checking if a file can be loaded and loading file contents * Move `partial_loader` module to `loader/partial_loader` * Rename `JavaScriptSource` to `source.rs` and move it to the `loader` module * Update `JavaScriptSource` to use `u32` for `start` offset instead of `usize` * Refactor `IsolatedLintHandler` to use the new `Loader` * Update imports and module references throughout the codebase This change improves the organization of the loader-related code and provides a more unified interface for loading different file types.
e9c8675
to
ea908f7
Compare
## [0.9.10] - 2024-10-07 ### Features - f272137 editors/vscode: Clear diagnostics on file deletion (#6326) (dalaoshu) - 1a5f293 editors/vscode: Update VSCode extention to use project's language server (#6132) (dalaoshu) - 376cc09 linter: Implement `no-throw-literal` (#6144) (dalaoshu) - 5957214 linter: Allow fixing in files with source offsets (#6197) (camchenry) - a089e19 linter: Eslint/no-else-return (#4305) (yoho) - 183739f linter: Implement prefer-await-to-callbacks (#6153) (dalaoshu) - ae539af linter: Implement no-return-assign (#6108) (Radu Baston) ### Bug Fixes - 9e9808b linter: Fix regression when parsing ts in vue files (#6336) (Boshen) - 93c6db6 linter: Improve docs and diagnostics message for no-else-return (#6327) (DonIsaac) - e0a3378 linter: Correct false positive in `unicorn/prefer-string-replace-all` (#6263) (H11) - ea28ee9 linter: Improve the fixer of `prefer-namespace-keyword` (#6230) (dalaoshu) - f6a3450 linter: Get correct source offsets for astro files (#6196) (camchenry) - be0030c linter: Allow whitespace control characters in `no-control-regex` (#6140) (camchenry) - e7e8ead linter: False positive in `no-return-assign` (#6128) (DonIsaac) ### Performance - ac0a82a linter: Reuse allocator when there are multiple source texts (#6337) (Boshen) - 50a0029 linter: Do not concat vec in `no-useless-length-check` (#6276) (camchenry) ### Documentation - 7ca70dd linter: Add docs for `ContextHost` and `LintContext` (#6272) (camchenry) - a949ecb linter: Improve docs for `eslint/getter-return` (#6229) (DonIsaac) - 14ba263 linter: Improve docs for `eslint-plugin-import` rules (#6131) (dalaoshu) ### Refactor - 642725c linter: Rename vars from `ast_node_id` to `node_id` (#6305) (overlookmotel) - 8413175 linter: Move shared function from utils to rule (#6127) (dalaoshu) - ba9c372 linter: Make jest/vitest rule mapping more clear (#6273) (camchenry) - 82b8f21 linter: Add schemars and serde traits to AllowWarnDeny and RuleCategories (#6119) (DonIsaac) - ea908f7 linter: Consolidate file loading logic (#6130) (DonIsaac) - db751f0 linter: Use regexp AST visitor in `no-control-regex` (#6129) (camchenry) - 3aa7e42 linter: Use RegExp AST visitor for `no-hex-escape` (#6117) (camchenry) - 9d5b44a linter: Use regex visitor in `no-regex-spaces` (#6063) (camchenry) - 0d44cf7 linter: Use regex visitor in `no-useless-escape` (#6062) (camchenry) - eeb8873 linter: Use regex visitor in `no-empty-character-class` (#6058) (camchenry) ### Testing - d883562 linter: Invalid `eslint/no-unused-vars` options (#6228) (DonIsaac) --------- Co-authored-by: Boshen <[email protected]> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Human Description
Low on time, so this one is short.
loader
module. I have more plans for this.LSP no longer usesLSP does not respectVALID_EXTENSIONS
, so now.d.ts
files (and the like) will be linted as well.gitignore
files, so this change was reverted.AI Description
Refactor Loader and Partial Loader
This PR refactors the loader and partial loader functionality in the oxc_linter crate:
Loader
struct with methods for checking if a file can be loaded and loading file contentspartial_loader
module toloader/partial_loader
JavaScriptSource
tosource.rs
and move it to theloader
moduleJavaScriptSource
to useu32
forstart
offset instead ofusize
IsolatedLintHandler
to use the newLoader
This change improves the organization of the loader-related code and provides a more unified interface for loading different file types.