Milestone 2 (#14826) is now complete.
- Pretty much the whole of ESLint's plugin API surface is supported by Oxlint.
- Conformance tests show very high pass rate (99.5%+ on popular plugins).
Next milestone has multiple areas of focus:
- Support framework plugins (Vue, Svelte etc)
- Fill in small gaps in API
- Fix out-of-memory errors on Windows
- Improve performance
- Fix TS types
- Fix small bugs/oddities
Framework plugins
We should now support linting JS/TS sections of multi-part files, but there are no tests. We need to add some.
Supporting custom template syntax (Vue, Svelte etc) is more difficult. First step is to research and scope out what's required.
API gaps
Fix Windows OOM
We have problems with memory exhaustion on Windows in some cases due to the large allocations required by raw transfer. We have mitigated it, but not managed to completely remove the problem.
See #19395 and #19480.
Fixing this will require overhauling our arena allocator.
Performance
TS types
We should improve our TS type defs, so they work for plugins written in TS. They are mostly correct, but some oddities remain.
Small bugs/oddities
Milestone 2 (#14826) is now complete.
Next milestone has multiple areas of focus:
Framework plugins
We should now support linting JS/TS sections of multi-part files, but there are no tests. We need to add some.
Supporting custom template syntax (Vue, Svelte etc) is more difficult. First step is to research and scope out what's required.
API gaps
context.languageOptions.parserLinter plugins: SupportlanguageOptions.parser#20373RuleTesterLinter plugins: Add new options toRuleTester#19916RuleTestercheck output validity Linter plugins:RuleTestercheck output is valid after applying fixes/suggestions #19917Fix Windows OOM
We have problems with memory exhaustion on Windows in some cases due to the large allocations required by raw transfer. We have mitigated it, but not managed to completely remove the problem.
See #19395 and #19480.
Fixing this will require overhauling our arena allocator.
Performance
globalsLinter plugins: Improve perf of passingglobalsto JS plugins #16359TS types
We should improve our TS type defs, so they work for plugins written in TS. They are mostly correct, but some oddities remain.
Plugin. Some properties are likely missing.Rule. Some properties are likely missing.createRule()seem incorrect #18154Small bugs/oddities