Releases: oxc-project/oxc
Releases · oxc-project/oxc
oxlint v0.15.0
[0.15.0] - 2024-12-10
- 39b9c5d linter: [BREAKING] Remove unmaintained security plugin (#7773) (Boshen)
Features
- 065f7dc linter: Support
expectTypeOf
,assert
andassertType
invitest/expect-expect
(#7742) (Yuichiro Yamashita) - 3d5f0a1 linter/no_restricted_imports: Add the no_restricted_imports rules (#7629) (Guillaume Piedigrossi)
Bug Fixes
- ad27b20 linter: Only resolve esm files for import plugin (#7720) (Boshen)
- 5e6053f linter: False positive in
eslint/yoda
(#7719) (dalaoshu)
Refactor
- c6a19aa linter: Remove unused
serde
features (#7738) (Boshen) - b9a2b35 linter: Remove
aho-corasick
(#7718) (Boshen)
Testing
oxlint v0.14.1
[0.14.1] - 2024-12-06
Features
- fd0935c linter: Change
react/rules-of-hooks
category topedantic
(#7691) (Boshen) - e64fd95 linter: Map
.js
to.ts
when resolving with tsconfig.json (#7675) (Boshen) - bd9d38a linter: Implement eslint:yoda (#7559) (tbashiyy)
- a14e76a linter: Report identical logical expressions in const-comparisons (#7630) (camc314)
- afe1e9b linter: Enhance
const-comparisons
for more cases (#7628) (camc314) - 4eb87ea linter: RulesOfHooks from nursery to correctness (#7607) (Boshen)
- 275d625 linter: Output rules to json array (#7574) (camc314)
- b8dc333 syntax: Add
ExportEntry::is_type
(#7676) (Boshen)
Bug Fixes
- 9761e94 apps/oxlint: Incorrect matching in
.oxlintignore
(#7566) (dalaoshu) - 7cee065 linter: Panic in
yoda
(#7679) (camc314) - 6ae178e linter: Ignore type references in
no-undef
(#7670) (Boshen) - fcc2546 linter: Move
no-unused-expressions
from TS to eslint (#7624) (camc314) - 29db060 linter: Detect typescript eslint alias rules (#7622) (Alexander S.)
- e824501 linter: False positive in exhaustive-deps (#7626) (camc314)
- 8a68ef4 linter: Update reporting spans for exhaustive-deps (#7625) (camc314)
- 543df6e linter: Fix false positives in exhaustive-deps (#7615) (camc314)
- e80214c linter: Fix false positives in rules-of-hooks (#7606) (camc314)
- 3dc46a8 linter: No-unused-expressions false positive with arrow fn expressions (#7585) (Cameron)
- 810671a linter: Detect vitest jest alias rules (#7567) (Alexander S.)
- 4e3044e linter: Rules-of-hooks fix false positive with default export (#7570) (camc314)
Documentation
- f029090 linter: Update rule documentation (#7684) (camc314)
- 4e489bd linter: Update rule documentation (#7681) (camc314)
- 56fe5f8 linter: Update rule documentation (#7680) (Cameron)
Refactor
- a0973dc linter: Use
BigIntLiteral::raw
field (#7660) (overlookmotel) - 3711a8e linter: Rename
is_same_reference
tois_same_expression
(#7654) (camc314) - b445654 linter: Use
get_inner_expression
inconst-comparisons
(#7627) (camc314) - f0e7acc syntax: Change
ModuleRecord::not_esm
tohas_module_syntax
(#7579) (Boshen) - 18519de syntax: Remove
ModuleRecord::export_default
(#7578) (Boshen) - d476660 syntax: Remove
ModuleRecord::exported_bindings_duplicated
because it is a syntax error (#7577) (Boshen) - 17663f5 syntax: Remove
ModuleRecord::export_default_duplicated
because it is a syntax error (#7576) (Boshen) - 79014ff syntax: Clean up
ModuleRecord
(#7568) (Boshen)
Testing
oxlint v0.14.0
[0.14.0] - 2024-12-01
Features
- 32f860d linter: Add support for ignorePatterns property within config file (#7092) (Nicholas Rayburn)
- 053bc08 linter: Implement typescript/no-unused-expressions (#7498) (camc314)
- 60b28fc linter: Implement typescript/consistent-generic-constructors (#7497) (camc314)
- bd0693b linter: Allow lint rules with the same name (#7496) (camc314)
- 2ac9f96 linter: Typescript/no-inferrable-types (#7438) (camc314)
- 8d89fdc linter: Add eslint/prefer-spread (#7112) (tbashiyy)
Bug Fixes
- 123b5b7 linter: False positive in
typescript/consistent-type-definitions
(#7560) (dalaoshu) - cc078d6 linter: Add missing error message prefix to
eslint/no-const-assign
(Boshen) - 17c0dd8 linter: Fix
jsx_no_script_url
doc failed to build (Boshen)
Performance
- 6cc7a48 linter: Use
OsString
for module cache hash (#7558) (Boshen) - 6655345 linter: Use
FxDashMap
for module cache (#7522) (overlookmotel)
Documentation
Refactor
- 0f3f67a linter: Add capability of adding semantic data to module record (#7561) (Boshen)
- 8392177 linter: Clean up the runtime after the module record change (#7557) (Boshen)
- 823353a linter: Clean up APIs for
ModuleRecord
(#7556) (Boshen) - f847d0f linter: Call
str::ends_with
with array not slice (#7526) (overlookmotel) - 2077ff9 linter: Remove
once_cell
(#7510) (Boshen) - 169b8bf linter, syntax: Introduce type alias
FxDashMap
(#7520) (overlookmotel)
oxlint v0.13.2
[0.13.2] - 2024-11-26
- b04041d vscode: [BREAKING] Use
.oxlintrc.json
as default value foroxc.configPath
(#7442) (Alexander S.)
Features
- 7236d14 eslint/jsx_a11y: Implement anchor_ambiguous_text (#5729) (Jelle van der Waa)
- 79ab8cc lint-unicorn: Add rule prefer set has (#7075) (jordan boyer)
- 87c893f linter: Add the eslint/no_duplicate_imports rule (#7309) (Guillaume Piedigrossi)
- 0b9da38 linter: Implement
unicorn/prefer-negative-index
(#6920) (Brian Liu) - f0643c4 linter: Implement
jsx-no-script-url
(#6995) (Radu Baston) - 00060ca linter: Implement eslint/no-object-constructor (#7345) (Naoya Yoshizawa)
Bug Fixes
Refactor
oxlint v0.13.1
[0.13.1] - 2024-11-23
Features
- 4ad26b9 linter: Add
no-promise-in-callback
(#7307) (no-yan) - 9558087 oxlint: Auto detect config file in CLI (#7348) (Alexander S.)
Bug Fixes
- 8507464 linter: Hanging when source has syntax/is flow (#7432) (Cameron)
- e88cf1b linter: Make
overrides
globs relative to config path (#7407) (camchenry) - 9002e97 linter: Add proper support for findIndex and findLastIndex for
unicorn/prefer-array-some
(#7405) (Dmitry Zakharov)
Documentation
Refactor
- 6c0d31b linter: Remove useless
const
declaration (#7430) (Song Gao) - c8adc46 linter/no-unused-vars: Improve implementation to remove using SymbolFlags::Export (#7412) (Dunqing)
- c90537f linter/only-used-in-recursion: Improve implementation to remove using SymbolFlags::Export (#7413) (Dunqing)
Testing
oxlint v0.13.0
[0.13.0] - 2024-11-21
- 7bf970a linter: [BREAKING] Remove tree_shaking plugin (#7372) (Boshen)
Features
- 7f8747d linter: Implement
react/no-array-index-key
(#6960) (BitterGourd) - be152c0 linter: Add
typescript/no-require-imports
rule (#7315) (Dmitry Zakharov) - 849489e linter: Add suggestion for no-console (#4312) (DonIsaac)
- 8cebdc8 linter: Allow appending plugins in override (#7379) (camchenry)
- 8cfea3c oxc_cfg: Add implicit return instruction (#5568) (IWANABETHATGUY)
- e6922df parser: Fix incorrect AST for
x?.f<T>()
(#7387) (Boshen)
Bug Fixes
- e91c287 linter: Fix panic in react/no-array-index-key (#7395) (Boshen)
- a32f5a7 linter/no-array-index-key: Compile error due to it uses a renamed API (#7391) (Dunqing)
- 666b6c1 parser: Add missing
ChainExpression
in optionalTSInstantiationExpression
(#7371) (Boshen)
Documentation
- df143ca linter: Add docs for config settings (#4827) (DonIsaac)
- ad44cfa linter: Import/first options (#7381) (Zak)
Refactor
oxlint v0.12.0
[0.12.0] - 2024-11-20
Experimental support for overrides
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
"overrides": [
{
"files": ["**/packages/**"],
"rules": {
"no-console": "warn"
}
}
]
}
Experimental support for react/exhaustive-deps
oxlint -W exhaustive-deps
or
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
"rules": {
"react/exhaustive-deps": "warn"
}
}
Features
- 1d9f528 linter: Implement
unicorn/prefer-string-raw
lint rule (#7335) (Ryan Walker) - d445e0f linter: Implement
unicorn/consistent-existence-index-check
(#7262) (Ryan Walker) - 01ddf37 linter: Add
allowReject
option tono-useless-promise-resolve-reject
(#7274) (no-yan) - 755a31b linter: Support bind function case for compatibility with
promise/no-return-wrap
(#7232) (no-yan) - 428770e linter: Add
import/no-namespace
rule (#7229) (Dmitry Zakharov) - 9c91151 linter: Implement typescript/no-empty-object-type (#6977) (Orenbek)
- 2268a0e linter: Support
overrides
config field (#6974) (DonIsaac) - 3dcac1a linter: React/exhaustive-deps (#7151) (camc314)
- d3a0119 oxlint: Add
cwd
property toLintRunner
(#7352) (Alexander S.)
Bug Fixes
- ba0b2ff editor: Reload workspace configuration after change (#7302) (Alexander S.)
- bc0e72c linter: Handle user variables correctly for import/no_commonjs (#7316) (Dmitry Zakharov)
- bf839c1 linter: False positive in
jest/expect-expect
(#7341) (dalaoshu) - ff2a1d4 linter: Move
exhaustive-deps
toreact
(#7251) (camc314) - df5c535 linter: Revert unmatched rule error (#7257) (Cameron A McHenry)
- c4ed230 linter: Fix false positive in eslint/no-cond-assign (#7241) (camc314)
- ef847da linter: False positive in
jsx-a11y/iframe-has-title
(#7253) (dalaoshu) - 62b6327 linter: React/exhaustive-deps update span for unknown deps diagnostic (#7249) (camc314)
Documentation
- 4c124a8 editor/vscode: Update VS Code readme with installation instructions and available features (#7306) (Nicholas Rayburn)
Refactor
Testing
oxlint v0.11.1
[0.11.1] - 2024-11-09
Features
- 4dd9b60 editor/vscode: Replace existing output channel and trace output channel with a single LogOutputChannel (#7196) (Nicholas Rayburn)
- 1fcd709 linter: Add jsx support for only-used-in-recursion (#7120) (no-yan)
- 4d577cf linter: Add
import/first
rule (#7180) (Dmitry Zakharov) - 9b8973f linter: Add
import/unambiguous
rule (#7187) (Dmitry Zakharov) - 5ab1ff6 linter: Implement @typescript-eslint/no-unsafe-function-type (#6989) (Orenbek)
Bug Fixes
- eea8879 editor/vscode: Update language client id to fix the resolution of the oxc.trace.server setting (#7181) (Nicholas Rayburn)
- b73cfd9 linter: Fix
is_method_call
with parentheses and chain expression (#7095) (tbashiyy)
Refactor
oxlint v0.11.0
[0.11.0] - 2024-11-03
- 9fd9f4f linter: [BREAKING] Sync sindresorhus/globals; removed Object.prototype properties from builtin and es* globals (#6991) (Boshen)
Features
- 6b619da editor: Listen to config file changes and trigger a didChangeConfiguration update (#6964) (Nicholas Rayburn)
- 7872927 editor/vscode: Support window/showMessage event (#7085) (Nicholas Rayburn)
- 2184588 linter: Do not bail for unmatched rules yet (#7093) (Boshen)
- a6fcd81 linter: Add
import/no-commonjs
rule (#6978) (Dmitry Zakharov) - 1691cab linter: Support user-configurable secrets for
oxc-security/api-keys
(#5938) (DonIsaac) - 610621c linter: Implement
react/style-prop-object
(#6342) (Albert Kaaman) - 1e2f012 linter: Add
oxc/no-map-spread
(#6751) (DonIsaac) - 1c66473 linter: Implement
eslint/prefer-object-has-own
(#6905) (tomoya yanagibashi)
Bug Fixes
- ebf3753 editor: Fix onConfigChange to send the correct config for didChangeConfiguration notification (#6962) (Nicholas Rayburn)
- 79bf74a linter: Check is_reference_to_global_variable in
no-array-constructor
(#7067) (Naoya Yoshizawa) - 38d1f78 linter: Remove confusing help text for now (#7081) (Cam McHenry)
- 147e2e4 linter: Allow replacing rule when none are enabled yet (#7014) (camchenry)
- 7aa496a linter: Remove unsafe fixer of
no-useless-spread
(#6655) (dalaoshu) - f5a7134 linter/no-unused-vars: False positive for discarded reads within sequences (#6907) (DonIsaac)
Documentation
Refactor
- a8dc75d linter: Remove unused CLI result types (#7088) (camchenry)
- 8f1460e linter: Move
LintPlugins
fromLintOptions
toLintConfig
(#6932) (DonIsaac)
Testing
- c35d3f2 linter: Improve test failure output (#6975) (camchenry)
oxlint v0.10.3
[0.10.3] - 2024-10-26
This release warns unmatched rules, for example
! The following rules do not match the currently supported rules:
| no-test-callback
| prefer-rest-params
| no-danger
Features
- a73c5af linter: Add fixer for
jsx-a11y/no-access-key
rule (#6781) (Tapan Prakash) - 2aa763c linter: Warn unmatched rule names (#6782) (Tapan Prakash)
- 0acca58 linter: Support
--print-config all
to print config file for project (#6579) (mysteryven)
Bug Fixes
- cb5cb62 linter: Eprintln unmatched rules warning (#6916) (Boshen)
- f49b3e2 linter:
react/iframe-missing-sandbox
ignores vanilla JS APIs (#6872) (DonIsaac) - 54a5032 linter: Correct false positive in
no-duplicates
(#6748) (dalaoshu) - a47c70e minifier: Fix remaining runtime bugs (#6855) (Boshen)