-
-
Notifications
You must be signed in to change notification settings - Fork 77
Open
Description
Differences to note in this page include:
- Some disable directive differences (cannot configure rules to use different config options via code comments, cannot adjust severity level via code comments).
- No flat file config support.
- Not all rules are supported natively yet, but many are and porting is continuing to happen pretty quickly.
- Glob differences, for how globs get resolved if there are rule config options that take glob arguments. Also impacts glob patterns for the
filesfield on overrides in the oxlint config. - Regex differences due to using Rust instead of JS. Some rules may have behavioral differences if they have regex config options and are configured with fairly complex regex patterns.
- CLI differences: passing globs for that should be linted cannot be done consistently as there's no support for passing a string glob for oxlint to evaluate currently.
- The glob pattern gets evaluated by your shell if you don't put it inside quotation marks, and so the resulting files that get linted may differ across platforms/shells.
- Ignore patterns should generally be specified in an ignore file or the Oxlint config, rather than specifying what files to lint via an allowlist glob pattern in the CLI command.
- Only supports linting JS/TS/JSX for now, limited support for Vue/Astro/etc. and only in <script> tags.
- For JS Plugins, see the dedicated JS Plugins page for any differences specific to JS Plugins.
- Type-aware lint rules only support projects that have been updated for compatibility with TS7, see the type-aware page for details.
- No bulk suppression support currently.
- There may be behavioral differences in the import plugin rules, depending on the way you have configured import resolution for the ESLint import plugin.
- Not all settings have been implemented for the native plugins. If you have settings that modify behavior for specific ESLint plugins/their rules, you may see differences in lint violations on your project. We'd like to support most settings from the original plugins, so please open an issue if any missing settings are important for you.
Metadata
Metadata
Assignees
Labels
No labels