Releases: Rel1cx/eslint-react
v5.8.18 (2026-06-11)
What's Changed
🐞 Fixes
- Improved key detection in
react-x/no-array-index-keyandreact-x/no-missing-keyrules (#1867).
📝 Documentation
- Removed 'See Also' sections from custom rule recipes.
- Reordered AST section in kit package docs (#1866).
- Formatted examples as accordions in kit package docs.
🏗️ Internal
- Removed
postinstallscript on the website. - Updated
textlintrules for inclusive language. - Updated dependencies and relaxed
eslintpeer dependency.
Full Changelog: v5.8.17...v5.8.18
Attestation
https://github.com/Rel1cx/eslint-react/attestations/30692540
v5.8.17 (2026-06-10)
What's Changed
📝 Documentation
- Simplified project description (#1860).
- Updated LICENSE copyright to include contributors (#1858).
- Updated brand assets guidelines and trademark policy on the website (#1859).
🏗️ Internal
- Bumped
typescript-eslintpackages tov8.61.0(#1863, #1864). - Cleaned up config files (#1856).
- Dropped
rename-rulescript and npm script (#1857). - Updated
sponsors.svg(#1855). - Updated
undiciand cleaned updprintconfig (#1854). - Updated brand component and removed boilerplate on the website (#1861).
- Updated scaffold script, docs and baseline (#1862).
Full Changelog: v5.8.16...v5.8.17
Attestation
https://github.com/Rel1cx/eslint-react/attestations/30528758
v5.8.16 (2026-06-07)
What's Changed
🐞 Fixes
- Aligned dependency versions across monorepo (#1853).
Full Changelog: v5.8.15...v5.8.16
Attestation
https://github.com/Rel1cx/eslint-react/attestations/30180921
v5.8.15 (2026-06-07)
What's Changed
📝 Documentation
- Added under-construction callouts and refined kit pages on the website (#1850, #1851).
- Removed
AGENTS.mdandCONTRIBUTING.mddocuments and references (#1848). - Updated home and third-party plugins pages on the website.
- Updated issue template guidance and labels.
🏗️ Internal
Full Changelog: v5.8.13...v5.8.15
Attestation
https://github.com/Rel1cx/eslint-react/attestations/30180297
v5.8.13 (2026-06-07)
What's Changed
📝 Documentation
- Added
GoogleCloudPlatform/gke-mcpand removed archivedantfu/shiki-streamfrom community projects on the website. - Improved RSC Directives wording in documentation.
- Removed the
no-multiple-children-in-titlerecipe from the website. - Removed the kit beta banner from the website (#1846).
🏗️ Internal
- Added
RuleListenerreturn type to all rulecreatefunctions (#1845). - Added boundary and edge case tests for
react-domrules, JSX rules, andnaming-conventionrules (context-name,id-name,ref-name). - Added identifier resolution tests for
react-x/no-leaked-conditional-rendering(#1844). - Bumped
pnpmand updated lockfile. - Bumped
tsdownto0.22.2and updated dependencies. - Removed redundant single-argument
merge()calls in rules (#1843). - Switched GitHub workflows to
ubuntu-latest. - Updated website brand assets and icons.
Full Changelog: v5.8.12...v5.8.13
Attestation
https://github.com/Rel1cx/eslint-react/attestations/30147094
v5.8.12 (2026-06-05)
What's Changed
🪄 Improvements
jsx: AlignedgetChildrenwith Babel'sbuildChildrenandcleanJSXElementLiteralChildpatterns, improving whitespace handling accuracy inreact-jsx/no-useless-fragmentandreact-jsx/no-children-proprules. Migrated child text cleanup to@eslint-react/jsxutilities and removed locallib.tshelpers. (#1836)jsx: RemovedisPaddingWhitespaceAPI and added whitespace boundary tests forreact-jsx/no-useless-fragmentandreact-dom/no-dangerously-set-innerhtml-with-childrenrules. (#1837)jsx: RenamedcleanJSXTextValuetocollapseMultilineTextin the public API and updatedreact-jsx/no-useless-fragmentto use the new name. (#1838)
📝 Documentation
- Website: Expanded the Brand Assets page with an icons section and formatted file names as inline code. (#1834)
🏗️ Internal
- Added
scripts/generate-website-icons.pyfor automated icon generation and refined logo geometry across all website assets. (#1833) - Bumped
import-integrity-lintandenhanced-resolve. - Bumped
axiosto^1.17.0andshikito4.2.0. - Updated pnpm lockfiles for
dompurifyandrolldown. - Updated rule-level changelogs for
no-useless-fragment,no-children-prop, andno-dangerously-set-innerhtml-with-children. (#1836, #1837, #1838)
Full Changelog: v5.8.11...v5.8.12
Attestation
https://github.com/Rel1cx/eslint-react/attestations/29936186
v5.8.11 (2026-06-04)
What's Changed
📝 Documentation
- Added a new Brand Assets page and updated Meta legal name (#1832).
🏗️ Internal
- Updated default React fallback version to
19.2.7(#1827). - Recreated logo with an open-source workflow, removing reliance on SVG assets exported by Amadine (#1831).
- Removed
@fontsource/iosevka-aileand switched to system font fallbacks. - Bumped TypeScript to
6.0.3(#1828). - Patch bumped
@typescript-eslint/*to8.60.1,react/react-domto19.2.7,nextto16.2.7, and@types/reactto19.2.16.
Full Changelog: v5.8.10...v5.8.11
Attestation
https://github.com/Rel1cx/eslint-react/attestations/29790829
v5.8.10 (2026-06-02)
What's Changed
🐞 Fixes
react-dom/no-unused-class-component-members: Aligned preset details in rule documentation (#1825).react-dom/no-unsafe-iframe-sandbox,react-x/context-name,react-x/id-name,react-x/ref-name,react-x/no-unnecessary-use-prefix,react-x/no-string-style-prop: Fixed missing or incorrect presets in rule documentation (#1826).
📝 Documentation
naming-convention: Expanded examples and annotated Ok cases forcontext-name,id-name, andref-namerules (#1819).- Refactored
MyComponentexamples toButtoncomponent in custom rules of props and function component definition recipes (#1823). - Added
azat-ioeslint-config to the community presets list.
🏗️ Internal
jsx: Consolidated whitespace child predicates and addedisEmptyStringExpressionto the public API (#1820).- Added preset verification to
verify-docs.ts(#1822). - Added
AGENTS.mdguide for AI coding agents (#1824). - Normalized local package metadata in
.pkgs/*. - Bumped
viteto^8.0.15andansisto^4.3.1across workspace packages.
New Contributors
- Kenton Jacobsen (@brokentone) made their first contribution in #1825.
Full Changelog: v5.8.9...v5.8.10
Attestation
https://github.com/Rel1cx/eslint-react/attestations/29493891
v5.8.9 (2026-06-01)
What's Changed
🐞 Fixes
react-x/no-direct-mutation-state: Detect nested state mutations and member expressions in assignment expressions (#1818).
📝 Documentation
- Updated contributing guide and monorepo structure documentation.
🏗️ Internal
- Removed
.vscodedirectories from all examples, added missingengines.nodeto Preact examples, cleaned up redundant.config/*.tsfromtsconfig.node.json, and updated.gitignore. - Cleaned up configs and docs.
- Patch bumped
eslint,tinyglobby, andtsdownacross workspace packages; added@fontsource/iosevka-aileto the website; reordered CSS imports inlayout.tsx. - Updated
.sentruxbaseline timestamp.
Full Changelog: v5.8.8...v5.8.9
Attestation
https://github.com/Rel1cx/eslint-react/attestations/29343471
v5.8.8 (2026-05-31)
What's Changed
📝 Documentation
kit: Addedis.APICallcallout to the Kit documentation (#1813).jsx: UpdatedgetChildrenandhasChildrenAPI documentation to reflect empty string children behavior.- Reworked status emoji indicators across docs and examples (#1816).
- Added ℞ prefix to recipe titles and cleaned up See Also sections.
- Removed the
custom-rules-of-childrenrecipe and cross-linked the remaining recipes. - Added redirects for moved rule documentation.
- Cleaned up the "Community Maintained Presets that use ESLint React" documentation page.
🏗️ Internal
react-x/no-misused-capture-owner-stack: Added edge-case tests forcaptureOwnerStack(#1813).- Updated fonts and dropped the
data-themeattribute. - Updated theme configuration (#1815).
- Aligned the
tsdownversion in@local/configs. - Enabled
trustPolicy: "no-downgrade"and addedminimumReleaseAge: 1440(1 day). - Bumped
eslintto10.4.1across workspace packages. - Bumped
pnpmto11.5.0and refreshed the lockfile. - Bumped
fumadocspackages andtinyexec. - Bumped
eslint-plugin-package-jsonto1.2.0. - Updated dprint plugins and reformatted font families in example projects.
- Updated Sentrux baseline metrics.
- Updated
.gitignore.
Full Changelog: v5.8.7...v5.8.8