oxlint published v1.87.0 on 5 October 2026: suggestion support for three React/unicorn rules and jsx-a11y/label/mouse/lang hardening plus other fixes. npm latest 1.87.0 confirmed; ShopperCove docs checklist only; no affiliate.
4 min read
oxlint 1.87.0, published by the Oxc project on 5 October 2026, adds fix suggestions for three rules (react/no-unescaped-entities, react/jsx-no-target-blank and unicorn/no-useless-switch-case) and tightens three jsx-a11y rules: label-has-associated-control, mouse-events-have-key-events and lang. It is a features-and-bugfixes minor with no CVEs, so bump to oxlint@1.87.0 in staging, rerun lint and review any new jsx-a11y findings.
From the release notes:
| Rule | Change |
|---|---|
react/no-unescaped-entities | Implement suggestion (#27292) |
unicorn/no-useless-switch-case | Implement suggestion (#27245) |
react/jsx-no-target-blank | Implement suggestion (#27181) |
Suggestions matter when your editor or oxlint --fix path can offer a one-click fix without treating the diagnostic as a silent autofix. Expect clearer remediation for unescaped entities in JSX text, useless switch cases, and target="_blank" without rel hardening—still review every applied edit.
| Area | Fix |
|---|---|
jsx-a11y/label-has-associated-control | Validate label attribute values (#27302) |
jsx-a11y/mouse-events-have-key-events | Handle nullish event handlers (#27306) |
jsx-a11y/lang | Validate lang expression strings (#27304) |
unicorn/numeric-separators-style | Report misgrouped BigInt literals (#27207) |
unicorn/no-zero-fractions | Parenthesize separator and large integers in fixer (#27206) |
| parser | Validate TypeScript type member separators (#27222) |
eslint/prefer-exponentiation-operator | Preserve autofix precedence (#27150) |
valid-title | Continue checks after allowed words (#27146) |
eslint/no-unused-vars | Respect disabled argument checks for used ignore patterns (#26925) |
The jsx-a11y trio is the practical frontend signal: label association, keyboard parity for mouse handlers, and lang expression checking all get sharper validation. Pair this release with your existing ESLint / typescript-eslint notes if you run oxlint beside or instead of classic ESLint in CI.
npx oxlint --version or npm ls oxlint. Note whether you are below 1.87.0.oxlint@1.87.0. Confirm with npm view oxlint version → expect 1.87.0 as latest as of sources read 5 Oct 2026.lang), and for suggestion-capable diagnostics on the three React/unicorn rules above.--fix, spot-check a file that previously showed jsx-no-target-blank or unescaped entities.ShopperCove did not change production oxlint versions for this article. Prefer the GitHub release and linter docs over third-party roundups.
oxlint v1.87.0 (5 Oct 2026) adds suggestions for react/no-unescaped-entities, unicorn/no-useless-switch-case, and react/jsx-no-target-blank, plus jsx-a11y and other rule/parser fixes. Pin oxlint@1.87.0 when ready.
Suggestion support for react/no-unescaped-entities, unicorn/no-useless-switch-case and react/jsx-no-target-blank, plus fixes for jsx-a11y label, mouse and lang rules, unicorn numeric-separators and no-zero-fractions, the TypeScript parser, valid-title and no-unused-vars.
No. The official release notes list features and bug fixes only, with no CVE IDs.
Possibly in jsx-a11y: label association, mouse/keyboard handler pairs and lang expressions now get stricter validation. Rerun CI and review applied suggestions before committing.
Lab evidence
Sources read 5 Oct 2026 (Asia/Calcutta): GitHub release oxlint_v1.87.0 (published 2026-10-05T11:04:25Z); npm oxlint@1.87.0 (time 2026-10-05T11:05:35.081Z; dist-tag latest=1.87.0). Features: suggestions for react/no-unescaped-entities, unicorn/no-useless-switch-case, react/jsx-no-target-blank. Fixes include jsx-a11y label/mouse/lang, unicorn numeric separators / no-zero-fractions, parser TS member separators, prefer-exponentiation-operator, valid-title, no-unused-vars. Checklist: bump oxlint to 1.87.0; re-run CI; spot-check suggestions. No production lint suite upgraded on ShopperCove; no invented CVEs.
Explore the product
Untested by us, and no traffic result is guaranteed. Check the live offer and refund terms first.
oxlint 1.87.0 vs ESLint 9.39.4 on react-hook-form (301 files): 0.09 s vs 9.81 s single-thread (6.02 s with --concurrency auto, 1.10 s warm --cache). @oxlint/migrate ported 42 of 84 rules natively, 80 with JS plugins. 315 vs 562 warnings; seeded test 11/15 native, 13/15 with JS plugins, ESLint 15/15.
Summary5 Oct 20267 min read
oxfmt 0.72.0 (5 Oct 2026) swaps its Prettier-backed Markdown path for the native oxc_formatter_markdown (breaking). ShopperCove formatted 221 Markdown drafts with oxfmt 0.71.0, 0.72.0 and Prettier 3.9.9: byte-identical output, ~2 s vs ~16 ms. Plus opt-in import sorting inside code fences, the documented divergences, ignore-file and LSP fixes. No affiliate links.
Summary5 Oct 20265 min read
Biome published @biomejs/biome@2.5.15 on 30 September 2026: type-inference and HTML formatter performance, plus nursery rules for React defaults, Svelte runes, logical CSS, and more. ShopperCove upgrade checklist only; no affiliate.
Summary5 Oct 20264 min read