Immutable
release. Only release title and notes can be modified.
Table of Contents
Oxlint v1.72.0
💥 BREAKING CHANGES
🚀 Features
- 2428c50 linter/react: Implement suggestion for
no-unknown-propertyrule (#23936) (Mikhail Baev) - f2091b3 ast: Unify old and new
AstBuilders (#23875) (overlookmotel) - 1c8f50c linter: Add schema for
eslint/no-restricted-import(#23642) (Sysix)
🐛 Bug Fixes
- d8c6b55 linter/unicorn/custom-error-definition: Handle non-ascii class names (#23939) (camc314)
- 7cb85c4 linter/eslint/no-negated-condition: Add autofix for negated conditions (#23825) (Yagiz Nizipli)
- f7d1f50 oxlint, oxfmt: Enable
disable_old_builderCargo feature foroxc_astcrate (#23886) (overlookmotel) - d891990 linter/jsx-a11y/role-supports-aria-props: Ignore nullish prop values (#23865) (Mikhail Baev)
- 94b6599 linter: Deduplicate missing plugin errors (#23853) (camc314)
- eff3eff linter/oxc/branches-sharing-code: Avoid else-if false positives (#23843) (camc314)
- 2a2d3b9 linter/eslint/prefer-destructuring: Skip
AssignmentExpressionautofixes (#23818) (camc314) - ddc24ae linter/eslint/id-length: Respect checkGeneric for mapped type keys (#23802) (bab)
- cd89202 linter/react/exhaustive-deps: Skip wrapper expression when analyzing hook initializers (#23793) (camc314)
- 20e8285 linter/unicorn/prefer-native-coercion-function: Allow ts type predicates (#23774) (camc314)
- d86f60b lsp: Normalize user config path to watch pattern (#23723) (Sysix)
- 52032cf linter: Newline-terminate tsgolint errors (#23762) (Mikhail Baev)
- 368fda7 linter/eslint/no-warning-comments: Avoid dropping generated regex patterns (#23741) (camc314)
- ce44fbd linter/valid-title: Escape disallowed words regex (#23742) (camc314)
- 3100d11 linter/prefer-called-exactly-once-with: Avoid out-of-bounds slice panic at end of file (#23625) (Jerry Zhao)
- 742be36 refactor/node/handle-callback-err: Reject invalid regex config (#23740) (camc314)
- d7be179 linter/eslint/no-restricted-globals: Handle shadowed locals (#23736) (camc314)
- b3b1ff8 linter/vitest/expect-expect: Handle global vitest detection correctly (#23734) (camc314)
⚡ Performance
- 68f9472 linter/jsx-a11y: Skip lowercasing non-aria attribute names (#23906) (Lawrence Lin)
- b9312b4 linter/unicorn/prefer-export-from: Use keyed binding lookup (#23893) (Marius Schulz)
- cd5204e linter/typescript/no-unsafe-declaration-merging: Use keyed binding lookup (#23894) (Marius Schulz)
- e948498 linter/eslint/prefer-named-capture-group: Only dispatch for relevant node types (#23868) (Connor Shea)
- 4ac7a8e linter/eslint/max-depth: Derive node types (#23896) (Connor Shea)
- daeed09 linter/eslint/no-restricted-globals: Only scan unresolved references (#23890) (camc314)
- e808514 linter/jest-vitest: Speed up no-standalone-expect (#23883) (camc314)
- 8b165e5 linter/react/exhaustive-deps: Skip non-reactive calls early (#23882) (camc314)
- 54005e7 linter/eslint/no-unused-vars: Precompute exported bindings (#23881) (camc314)
- 9bc2f8c linter/unicorn/prefer-number-properties: Speed up global checks (#23880) (camc314)
- 4ff104f linter: Optimize
require-hookandprefer-mock-*rules to run on specific node types (#23871) (Connor Shea) - cc2213b linter: Run
no-underscore-dangleonly when relevant node types are present (#23867) (Connor Shea) - 3e55c21 linter/promise/always-return: Narrow to function node types (#23878) (Connor Shea)
- 7136182 linter/jest-vitest: Speed up no-commented-out-tests (#23864) (camc314)
- f138264 linter/eslint/no-script-url: Match javascript: prefix without allocating (#23861) (Lawrence Lin)
- 7ef6895 linter/react/no-array-index-key: Delay index symbol lookup (#23857) (camc314)
- 26bc171 linter/react/no-array-index-key: Match callback methods directly (#23856) (camc314)
- 44fbbda linter/jsx-a11y/interactive-supports-focus: Check cheap conditions first (#23854) (camc314)
- 84a5aa3 linter/eslint/no-extend-native: Skip lowercase references early (#23851) (camc314)
- 88a74b2 linter/eslint/no-nonoctal-decimal-escape: Scan decimal escapes as bytes (#23850) (camc314)
- fca69a8 linter: Skip traversal without this expressions (#23845) (camc314)
- 838fd63 linter: Reduce preallocation for per-file diagnostics
Vec(#23705) (Marius Schulz) - 417b506 linter/typescript/array-type: Remove full source text clone (#23751) (Marius Schulz)
📚 Documentation
- 57e4469 linter/unicorn: Update prefer-dom-node-text-content rationale (#23933) (Mikhail Baev)
- 3d61dea all: Correct capitalization in comments (#23887) (overlookmotel)
🛡️ Security
- 3cdd18f deps: Update npm packages (#23690) (renovate[bot])
Oxfmt v0.57.0
💥 BREAKING CHANGES
- 259e0cd oxfmt,formatter_graphql: [BREAKING] Support draft syntax with removing prettier fallback (#23326) (leaysgur)
- accbc49 oxfmt: [BREAKING] Format
parser:css,less,scssfiles + css-in-js byoxc_formatter_css(#23321) (leaysgur)
🚀 Features
- dffa4b3 formatter_css: Implement
oxc_formatter_css(#23320) (leaysgur) - 01de9ec oxfmt: Format
parser:graphqlfiles byoxc_formatter_graphql(#23318) (leaysgur) - 4e66212 formatter_graphql: Implement oxc_formatter_graphql (#23317) (leaysgur)
🐛 Bug Fixes
- 67325ae formatter_css: Handle frontmatter language (#23819) (leaysgur)
- 3f355e5 formatter_graphql: Improve major prettier diffs (#23419) (leaysgur)
- 48e2d78 formatter_css: Improve major prettier diffs (#23327) (leaysgur)
- 8c07cad all: Enable
disable_old_builderCargo feature foroxc_astcrate in tests (#23888) (overlookmotel) - f7d1f50 oxlint, oxfmt: Enable
disable_old_builderCargo feature foroxc_astcrate (#23886) (overlookmotel) - d86f60b lsp: Normalize user config path to watch pattern (#23723) (Sysix)
⚡ Performance
📚 Documentation
- b4d0dc9 oxfmt,formatter,formatter_css,formatter_core: Update AGENTS.md (#23814) (leaysgur)