refactor(linter): refactor LintBuilder to prep for nested configs#8034
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
73d39ed to
f6523f6
Compare
ae07fda to
42adf86
Compare
|
Thanks for taking a look at this, I'll review this as soon as possible. I had a draft of the nested config work on my laptop but wasn't happy with it so far. |
ah sorry! i didn't realize you had already started implementing this. |
f6523f6 to
0487198
Compare
30c712c to
0eeb0e0
Compare
|
You may merge after fixing the compile error. |
0eeb0e0 to
e46b6e7
Compare
0487198 to
952d7e4
Compare
e46b6e7 to
263abe6
Compare
263abe6 to
5c25148
Compare
CodSpeed Performance ReportMerging #8034 will not alter performanceComparing Summary
|
5c25148 to
ad6ab1d
Compare
|
@camc314 I pushed some changes to fix errors where we were using |
Merge activity
|
…8034) More simplification/preparations for nested configurations: 1. renames `LinterBuilder` to `ConfigStoreBuilder` 2. moves the `options` logic out of `LintBuilder` 3. make `ConfigStoreBuilder::build()` return a result (currently always returns OK, but it will return errors when nested config is implemented The next steps to implement nested config which i hope to do in the next week are: 1. refactor the `from_oxlintrc` to accept a file path 2. introduce a new method on `ConfigStoreBuilder` (name TBC) that walks all child directories, collecting `.oxlintrc` files. these will be put into `ConfigStore` as a hash map of path > config.
ad6ab1d to
3c534ae
Compare
## [0.15.6] - 2025-01-13 ### Features - 457aa31 linter: Implement `no-lone-blocks` rule (#8145) (Yuichiro Yamashita) ### Refactor - aea9551 ast: Simplify `get_identifier_reference` of `TSType` and `TSTypeName` (#8273) (Dunqing) - 43ed3e1 linter: Add output formatter (#8436) (Alexander S.) - 4e05e66 linter: Remove glob for windows (#8390) (Alexander S.) - b19d809 linter: Split `unicorn/prefer-spread` and `eslint/prefer-spread` into own rules (#8329) (Alexander S.) - 3c534ae linter: Refactor `LintBuilder` to prep for nested configs (#8034) (camc314) - 2f9fab9 linter: Remove remapping for plugin name in diagnostics (#8223) (Alexander S.) ### Testing - b6c1546 linter: Use plugin name instead of category for finding rule (#8353) (Alexander S.) Co-authored-by: Boshen <[email protected]>

More simplification/preparations for nested configurations:
LinterBuildertoConfigStoreBuilderoptionslogic out ofLintBuilderConfigStoreBuilder::build()return a result (currently always returns OK, but it will return errors when nested config is implementedThe next steps to implement nested config which i hope to do in the next week are:
from_oxlintrcto accept a file pathConfigStoreBuilder(name TBC) that walks all child directories, collecting.oxlintrcfiles. these will be put intoConfigStoreas a hash map of path > config.