mirror of
https://github.com/oxc-project/oxc.git
synced 2026-09-14 19:36:11 +08:00
fe357a4487
Fix #17503 and #15927. This converts the NOT_SUPPORTED_RULE_NAMES list over to a JSON file, and implements a Rationale column to the markdown table rendered for each plugin issue. The JSON file conversion is done because I think it'd be useful to 1) reuse this file in Rust, and so this makes it much easier to parse in Rust, and 2) potentially also reuse it in oxlint-migrate. You can see the markdown output after this change here: https://gist.github.com/connorshea/2b6803c9e2045be9928d394d9112f0ae The content of the list should be identical (other than the rationale values I've added), with a few exceptions: - Added [`vue/jsx-uses-vars`](https://eslint.vuejs.org/rules/jsx-uses-vars.html#vue-jsx-uses-vars) as an unsupported rule with the rationale that it _should_ already be implemented via no-unused-vars, as it only applies to vue components using JSX. Though I'm not 100% sure if that is actually supported properly at present for Vue files. - I removed [`vue/define-macros-order`](https://eslint.vuejs.org/rules/define-macros-order.html#vue-define-macros-order) from the unsupported list, as it seems like it does not require template parsing and should be possible to implement? - Added `n/prefer-node-protocol`, `n/no-process-exit`, and `n/file-extension-in-import` to the unsupported rule list, as they are implemented by other rules in oxlint already. - Added `vue/no-unused-properties` and `vue/no-undef-properties` as they both require Vue template parsing. - Added `jest/no-unnecessary-assertion`, `jest/unbound-method`, `jest/no-error-equal`, `vitest/unbound-method`, and `vitest/prefer-vi-mocked` to unsupported rules with rationale that they require type information.
12 lines
208 B
JSON
12 lines
208 B
JSON
{
|
|
"compilerOptions": {
|
|
"checkJs": false,
|
|
"moduleResolution": "node16",
|
|
"module": "node20",
|
|
"lib": ["esnext"],
|
|
"target": "esnext",
|
|
"resolveJsonModule": true,
|
|
"strict": true
|
|
}
|
|
}
|